QKQK tcltcl 老是看题看别人payload 也掌握不了太多知识点 剽窃别人的思路看着很简单
找出来这个破解点可是花费很长时间
系统学一手学一手
基础内容
php基本代码能力python写requests库脚本的能力
sql查询语句的基本应用后续再接触insert update之类的注入原理都是一样的
了解http协议 web服务的搭建过程和基本结构
文件包含(LFI)
会用伪协议读取源码php:/filter/read=convert.base64-encode/resource=index.php 了解过滤情况下基本的变形php://filter/read=string.rot13/resource=index.php
包含上传的图片马getshell
日志污染getshell(典型:ssrf打smtp日志污染+include文件包含)
在allow_url_include=On的情况下可以包含远程文件
SQL注入
了解基本的闭合逃逸语句原理
了解万能密码在代码层次的原理
sql注入的三种基本类型:
-
-
- 直接回显
- 布尔盲注时间盲注
- 报错注入
-
sql注入的进阶类型:
- 堆叠注入(PDO、mysqli->mutiquery)
- regexp盲注(布尔或时间,根据具体情况判断)
- 利用mysql特性的注入如handler
- 无列名注入
- bypass information_schema过滤经常跟无列名注入一起出
- 大小写比较盲注
- load_file读取文件
- dnslog外带
- rollup with having构造空密码
- 会编写盲注脚本
- 二次注入
udf提权
sql注入写webshell(要求有写入权限并且得知web目录绝对路径)
远程命令执行RCE
了解linux基本的命令和php执行命令的函数
学会基本的绕过(反引号执行命令、$IFS绕过空格过滤、变量绕过正则)
无字母数字webshell
无参数rce
linux反弹shell windows反弹shell
curl外带数据
dnslog外带数据
文件上传
基本的绕过php3 php4 php5 phtml%00截断
文件包含解析webshell
上传.user.ini解析webshell(要求上传的目录内有php文件并且是nginx环境下)
上传.htaccess解析webshell(要求Apache)
反序列化
了解常见的魔术方法以及跳类的技巧(_destruct是所有反序列化的入口,跳类可以利用调用别的魔术方法或者是调用不同类的同名方法)
学会pop链构造(需要有面向对象基础以及一个思维的转变)
phar反序列化
session反序列化
反序列化字符逃逸(变多或者变少)
php内置类soapclient反序列化打ssrf
SSRF
了解ssrf常用协议 gopher dict file
了解parse_url和curl在解析url时候的差别
gopher打内网mysql
ssrf打redis未授权
ssrf经典案例:weblogic(布尔值探测内网服务+打内网redis)
xxe的ssrf
XXE
基本读取文件
xxe触发phar反序列化
xxe ssrf
xxe EXPECT RCE
blindxxe外带数据
zib流压缩xxe数据外带
php://filter/zlib.deflate/convert.base64-encode/resource=
解压:
php://filter/read=convert.base64-decode/zlib.inflate/resource=
CDATA
PythonWeb相关
Django伪造cookie
yaml反序列化
pickle反序列化rce
flask ssti模板注入
flask伪造cookie
一些杂类知识
rogue mysqlsever读取客户端文件(可以触发phar反序列化)
padding oracle和CBC字节翻转密码学算法应用层面的攻击
ssi漏洞rce
伪随机数算法的攻击