Web安全?说白了就是别太相信任何人!这年头,代码写出来就是给人搞的,漏洞的根源就在于开发者那颗“我觉着没问题”的自信心。核心问题就三个:
- 入口大开,来者不拒?你的输入验证就是个摆设,黑客想怎么玩就怎么玩,SQL注入、XSS,都是这么来的!
- 谁都能进你家门?权限管理一塌糊涂,黑客拿到个普通账号就能为所欲为,越权漏洞简直就是送人头!
- 规则就是用来打破的?业务逻辑漏洞,说白了就是规则没定好,或者定了也白定,黑客能把你的系统玩成俄罗斯方块!
想挖洞?别再靠运气了!记住这几条:
- 把所有数据都当成定时炸弹!别管是用户输入的、Cookie里的,还是Header里的,先假设它是恶意的,然后看看你的系统会怎么爆炸。
- 数据在不同地方会变脸!同一份数据,在参数里、Cookie里、Header里,可能解析方式都不一样,黑客就喜欢钻这种空子。
- 像黑客一样思考,搞点破坏!正常人用你的系统,你当然觉得没问题。试试高并发请求、中间人攻击,看看会不会出幺蛾子。
下面是40个Web常见漏洞和挖掘技巧,都是老夫多年踩坑总结出来的,拿走不谢!
一、注入攻击:只要有“入口”,就能搞事情(5个)
1. SQL注入:你的数据库,我的游乐场
- 本质:把用户输入当成SQL代码执行,简直就是自杀!
- 怎么搞?输个
' OR 1=1#,看看你的系统会不会懵逼。或者用SQLMap,让它自动帮你找乐子。 - 进阶玩法:别只盯着GET/POST参数,Cookie和HTTP头有时候也有惊喜。用
union select version(),database()查查数据库版本,说不定能发现更多秘密。
2. NoSQL注入:JSON的地狱
- 原理:NoSQL数据库也逃不过注入的命运,JSON查询一样可以被玩坏。
- 骚操作:提交
username[$ne]=1&password[$ne]=1,看看能不能直接绕过登录验证。 - 挖掘技巧:重点关注那些直接把JSON参数当查询条件的接口。
3. 命令注入:让服务器听你的
- 原理:把用户输入拼接到系统命令里,黑客就能控制你的服务器。
- 简单粗暴:输入
; ls或| dir,看看能不能看到服务器的文件列表。 - 绕过姿势:分号、管道符,都是绕过过滤的好帮手。
4. XXE:XML的噩梦
- 原理:XML解析器加载了外部的恶意“实体”,让黑客读取服务器上的文件。
- 搞事情:上传一个包含
<!ENTITY xxe SYSTEM "file:///etc/passwd">的XML文件,看看能不能拿到Linux的密码文件。 - 挖掘目标:文件上传和API接口,都是XXE的高发地。
5. LDAP注入:认证系统的漏洞
- 原理:把用户输入拼接到LDAP查询语句里,绕过认证简直不要太容易。
- 骚操作:输入
*)(uid=*))(|(uid=*,看看能不能直接登录。 - 挖掘技巧:登录框和搜索功能,是重点关注对象。
二、身份验证:门卫都是摆设?(6个)
6. 弱口令:别再用123456了!
- 检测:用字典爆破,看看能不能撞到管理员的密码。
- 进阶:结合社工信息,生成更精准的密码字典(比如姓名+生日)。
7. JWT:令牌也能伪造?
- 原理:JWT的签名算法有问题,或者密钥泄露,黑客就能伪造令牌。
- 搞事情:用
jwt_tool伪造令牌,或者直接把alg字段改成none,看看能不能绕过验证。 - 挖掘技巧:关注Header里的
alg字段。
8. OAuth 2.0:第三方登录,小心被钓鱼!
- 高危点:
redirect_uri没校验、state参数缺失,都是OAuth的常见漏洞。 - 案例:通过钓鱼链接,劫持用户的授权码。
- 挖掘技巧:测试回调域名白名单,看看是不是太宽松了。
9. 会话固定:强制用户用你的Session
- 原理:攻击者让用户使用一个已知的Session ID,然后就能冒充用户登录。
- 检测:登录前后,Session ID有没有变化?
- 骚操作:用URL参数传递Session ID(比如
?PHPSESSID=123)。
10. 短信验证码爆破:轰炸你的手机!
- 检测:抓包重放验证码请求,看看能不能枚举出验证码。
- 挖掘技巧:用Burp Intruder自动化爆破。
11. 密码重置:重置了个寂寞
- 类型:验证码回显、Token永不过期、用户ID可以随便改。
- 案例:修改响应包里的
is_valid字段,绕过短信验证。
三、客户端:别以为前端就安全了!(6个)
12. XSS:前端的噩梦
- 类型:反射型、存储型、DOM型,各种姿势都能搞。
- 检测:输入
<script>alert(1)</script>,看看能不能弹窗。 - 绕过姿势:利用事件处理函数(比如
onmouseover),绕过过滤。
13. CSRF:偷偷帮你转账
- 检测:检查请求有没有Token或Referer校验。
- 骚操作:构造恶意页面,自动提交表单(比如转账请求)。
14. 点击劫持:点了个寂寞
- 原理:用透明iframe,诱导用户点击。
- 检测:检查有没有设置
X-Frame-Options头。 - 骚操作:用CSS
opacity:0隐藏恶意元素。
15. CORS:跨域配置,一不小心就泄密
- 高危配置:
Access-Control-Allow-Origin: *,允许任何网站跨域访问,简直就是自杀! - 检测:发送带
Origin:恶意域名的请求,看看响应头里是什么。 - 骚操作:利用CORS,窃取用户数据。
16. 不安全的重定向:把你带到沟里去
- 检测:修改
redirect_url参数,跳转到外部域名。 - 绕过姿势:用URL编码绕过过滤(比如
%2e%2e%2f代替../)。
17. DOM型漏洞:客户端脚本的漏洞
- 原理:客户端脚本直接操作DOM,没有过滤用户输入。
- 检测:输入
#<img src=x onerror=alert(1)>,测试URL片段。
四、服务端:后端的坑,一个比一个深!(7个)
18. 文件上传:上传了个病毒
- 绕过姿势:修改
Content-Type、双扩展名(比如shell.php.jpg)。 - 进阶:利用Apache解析漏洞(
test.php.xxx)。
19. 任意文件读取/下载:偷窥你的文件
- 检测:尝试读取
/etc/passwd或配置文件。 - 骚操作:用
../目录遍历(比如file=../../etc/passwd)。
20. SSRF:让服务器当你的肉鸡
- 原理:利用服务端发起内部网络请求。
- 检测:输入
http://169.254.169.254,获取云元数据。 - 骚操作:通过DNS Rebinding,绕过IP限制。
21. 反序列化:一不小心就RCE
- 常见场景:Java、PHP、Python的反序列化函数。
- 检测:提交恶意序列化数据,触发远程代码执行(RCE)。
- 挖掘技巧:用工具(比如ysoserial)生成Payload。
22. 未授权访问:谁都能进你家门
- 案例:直接访问管理接口(比如
/admin),无需登录。 - 挖掘技巧:扫描常见的后台路径(比如
phpMyAdmin)。
23. 越权:不该你访问的,你也看到了
- 类型:平行越权(同权限用户互访)、垂直越权(低权限访问高权限)。
- 检测:修改请求中的用户ID参数(比如
user_id=123→user_id=456)。
24. 敏感信息泄露:裤子都脱了
- 来源:错误页面暴露堆栈信息、备份文件(比如
.bak)未删除。 - 挖掘技巧:用目录扫描工具,查找敏感文件。
五、配置与协议:细节决定成败!(6个)
25. 不安全的HTTP方法:PUT、DELETE,能不用就别用
- 检测:发送OPTIONS请求,检查支持的方法。
- 修复:禁用WebDAV和不必要的方法。
26. 目录遍历与浏览:暴露你的家底
- 检测:访问
/static/../,看看能不能返回目录列表。 - 骚操作:利用中间件配置错误(比如Apache默认开启目录浏览)。
27. HTTP响应头注入:篡改你的Cookie
- 原理:未过滤输入,直接写入响应头。
- 检测:输入
Set-Cookie:恶意内容,篡改头信息。
28. 过时的SSL/TLS协议:中间人攻击的温床
- 检测:用工具(比如SSL Labs)检测支持的协议版本。
- 风险:启用SSLv3或弱加密套件,容易被中间人攻击。
29. 主机头注入:伪造Host头,访问内部服务
- 检测:修改Host为
localhost或内部IP。 - 骚操作:利用域名绑定,绕过访问控制。
30. 缓存投毒:污染你的缓存
- 原理:操纵缓存服务器,存储恶意内容。
- 检测:注入恶意头(比如
X-Forwarded-Host)。 - 骚操作:利用缓存键与内容分离的设计缺陷。
六、业务逻辑:规则就是用来打破的!(5个)
31. 短信轰炸:搞垮你的手机
- 检测:重复请求短信接口,导致用户被骚扰。
- 绕过姿势:更换IP或手机号末位,绕过频率限制。
32. 订单金额篡改:1块钱买个iPhone
- 原理:前端校验价格,后端没有二次验证。
- 检测:修改POST请求中的
price字段。 - 骚操作:测试负数或极低价格。
33. 验证码逻辑:验证了个寂寞
- 类型:验证码复用、前端生成、未绑定会话。
- 案例:响应包返回验证码明文。
34. 接口参数污染:覆盖你的逻辑
- 原理:重复参数覆盖业务逻辑(比如
user_id=1&user_id=2)。 - 挖掘技巧:测试后端如何处理多值参数。
35. 时间竞争:抢钱漏洞
- 案例:并发请求兑换积分,导致超额领取。
- 检测:用多线程工具,模拟高并发操作。
七、其他高危:不常见的,更要小心!(5个)
36. WebSocket:跨站劫持
- 风险:未校验Origin头,导致跨站WebSocket劫持。
- 检测:伪造Origin,发起恶意连接。
37. 服务端模板注入(SSTI):模板也能搞事情
- 常见框架:Jinja2、Freemarker。
- 检测:输入
{{7*7}},看看能不能返回49。 - 骚操作:利用Payload,执行系统命令。
38. HTTP请求走私:前后端理解不一致
- 原理:利用前后端解析差异,构造恶意请求。
- 检测:发送混淆Content-Length与Transfer-Encoding的请求。
39. 子域名接管:捡漏的机会来了
- 场景:过期域名,没有解除DNS解析,指向第三方服务。
- 挖掘技巧:扫描CNAME记录,指向失效的云服务(比如GitHub Pages)。
40. Web缓存欺骗:让用户访问恶意路径
- 原理:诱使用户访问恶意路径,污染缓存。
- 检测:构造
http://target.com/profile.php/non-existent.css。 - 骚操作:利用静态资源缓存规则。
记住,挖洞不是靠运气,而是靠知识、经验和耐心。多用自动化工具,但更要学会手动测试。最重要的是,一定要在授权的情况下进行测试,否则后果自负!
学习资源
如果你是也准备转行学习网络安全(黑客)或者正在学习,这里开源一份360智榜样学习中心独家出品《网络攻防知识库》,希望能够帮助到你
知识库由360智榜样学习中心独家打造出品,旨在帮助网络安全从业者或兴趣爱好者零基础快速入门提升实战能力,熟练掌握基础攻防到深度对抗。
1、知识库价值
深度: 本知识库超越常规工具手册,深入剖析攻击技术的底层原理与高级防御策略,并对业内挑战巨大的APT攻击链分析、隐蔽信道建立等,提供了独到的技术视角和实战验证过的对抗方案。
广度: 面向企业安全建设的核心场景(渗透测试、红蓝对抗、威胁狩猎、应急响应、安全运营),本知识库覆盖了从攻击发起、路径突破、权限维持、横向移动到防御检测、响应处置、溯源反制的全生命周期关键节点,是应对复杂攻防挑战的实用指南。
实战性: 知识库内容源于真实攻防对抗和大型演练实践,通过详尽的攻击复现案例、防御配置实例、自动化脚本代码来传递核心思路与落地方法。
2、 部分核心内容展示
360智榜样学习中心独家《网络攻防知识库》采用由浅入深、攻防结合的讲述方式,既夯实基础技能,更深入高阶对抗技术。
360智榜样学习中心独家《网络攻防知识库》采用由浅入深、攻防结合的讲述方式,既夯实基础技能,更深入高阶对抗技术。
内容组织紧密结合攻防场景,辅以大量真实环境复现案例、自动化工具脚本及配置解析。通过策略讲解、原理剖析、实战演示相结合,是你学习过程中好帮手。
1、网络安全意识
2、Linux操作系统
3、WEB架构基础与HTTP协议
4、Web渗透测试
5、渗透测试案例分享
6、渗透测试实战技巧
7、攻防对战实战
8、CTF之MISC实战讲解
3、适合学习的人群
一、基础适配人群
- 零基础转型者:适合计算机零基础但愿意系统学习的人群,资料覆盖从网络协议、操作系统到渗透测试的完整知识链;
- 开发/运维人员:具备编程或运维基础者可通过资料快速掌握安全防护与漏洞修复技能,实现职业方向拓展或者转行就业;
- 应届毕业生:计算机相关专业学生可通过资料构建完整的网络安全知识体系,缩短企业用人适应期;
二、能力提升适配
1、技术爱好者:适合对攻防技术有强烈兴趣,希望掌握漏洞挖掘、渗透测试等实战技能的学习者;
2、安全从业者:帮助初级安全工程师系统化提升Web安全、逆向工程等专项能力;
3、合规需求者:包含等保规范、安全策略制定等内容,适合需要应对合规审计的企业人员;
因篇幅有限,仅展示部分资料,完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以在下方CSDN官方认证二维码免费领取【保证100%免费】