01
如何学习WEB
WEB分为三类,分别是CTF、BugHunter、RedTeam
1-1 CTF中的WEB
CTF中的WEB题目类型:
* 解题模式
* AWD
* AWD+ = 解题模式 + AWD
* 内网渗透
● CTF中的WEB—解题模式学习
1.技能栈:
* 编程基础:PHP,Java, Python
* 漏洞类型:SSTI(服务端模板注入)、XSS(跨站脚本攻击)、SQLI(SQL 注入)、XXE(XML 外部实体)、Unserialize(反序列化攻击)、nday 利用等等
2.如何补全技能栈:
①无论是什么语言,你都可以用 runoob 这个网站来速刷一遍基础概念!
②之后结合漏洞靶场(这里说的是漏洞代码片段案例,去学习漏洞类型对应的代码,就比如 DVWA)
③掌握了上述基础之后,你就可以去学习 ThinkPHP 这种 Web应用框架,并且去调试往年出现的漏洞。
3.当然经过了上述步骤对于CTF来说完全不够!这里再介绍三个刷题网站!
①攻防世界
②CTFHub
③BUUCTF
● CTF中的WEB—AWD模式学习
AWD技能栈:
1.防御技巧:
* 快速分析日志/流量,找出攻击流量复现对应的漏洞
* 备份数据+修改默认口令:数据库+网站源码
* 部署简单的 WAF + 文件监控 (如果允许的话)
* 应对不死马的处理方式
2.攻击技巧:
* 审计源代码发现漏洞
* 成功利用漏洞之后写计划任务
* 使用D盾扫描源代码发现隐藏的后门
* 自动化进行批量攻击的脚本/框架
3.参考资源:
CTF AWD模式攻防Note :https://zer0yu.github.io/2018/05/24/ctf-awd-note/
● CTF WEB参考资料
刷题的过程中可以看的一些资料:
**1.CTF Wiki:**Web 简介 -CTF Wiki (ctf-wiki.org)
**2.SCU-CTF-Web:**Web学习路线- SCU-CTF HomePage (scuctf.com)
3.当然你也可以看一些书:
■从0到1:CTFer成长之路
■CTF特训营:技术详解、解题方法与竞赛技巧
4.RSS订阅https://github.com/zer0yu/CyberSecurityRSS
1-2 BugHunter中的WEB
●BugHunter—web漏洞挖掘学习
1.基础:
* 网络基础知识:TCP/IP网络,HTTP协议,DNS协议
* 操作系统基础:Windows 的 bat 脚本是什么?Linux Bash是什么?macOS 选修
此时可以下载一个Kali Linux 从练习熟练使用这个系统开始
* 需要熟练使用的工具:BurpSuite,Metasploit , SqlMap , Nmap etc.
2.怎么学:
①选择一个目标:例如从HackerOne 上进行选择
②开始Recon(信息收集),这里面有很多方法论,最基础的就是进行子域名收集+端口扫描(subfinder)
③开始Hack!去在目标上寻找 SQLi 或者 XSS 等漏洞
3.初学资源:
①BUG HUNTING METHODOLOGY FOR BEGINNERS
https://infosecwriteups.com/bug-hunting-methodology-for-beginners-20b56f5e7d19
②Bug Bounty 101
https://github.com/1hack0/bug-bounty-101
③sasn如何成为一个漏洞赏金猎人 https://xz.aliyun.com/t/2701
④书籍:
■《白帽子讲Web安全》
■《Web 漏洞搜索》
1-3 RedTeam中的WEB
●RedTeam——红队攻防学习
1.红队是什么?
在红队中,你来仿真、模拟或以其他方式扮演某个、某组入侵者或理论上的假想敌。区别于传统的渗透测试,更偏向于实战,面对的场景也更加复杂技术繁多,以目的为导向,需要有能够解决突发问题的能力。
2.红队技术栈
* 网络杀伤链
* MITRE ATT&CK 攻击矩阵
3.初学资料:
■《How to Hack Like a Pornstar》https://github.com/zer0yu/How-to-Hack-Like-a-Pornstar
■《以攻促防:企业蓝军建设思考》https://mp.weixin.qq.com/s/8iJs2ON66NY1Jdbt7c-BTA
■《要想加入红队,需要做好哪些准备?》https://xz.aliyun.com/t/4952
■《红队的踩“坑”之路》 https://xz.aliyun.com/t/7103
■书籍
1-4 WEB漏洞类型
02
WEB学习心得
●一定要有小的目标才能驱使你坚持学下去:
1.目标:
* 渗透测试项目
* CTF 中某种类型的题目
2.例子:
①设定一个具体的目标,比如挖掘PHP反序列化漏洞。
②针对该目标搜集必要的信息(PHP教程,漏洞说明,漏洞案例,自动解决方案)
③给予前期的信息收集初期评估一下,我要学会挖掘PHP反序列化漏洞大概需要花费多长的时间,涉及的技能树有哪些,学习过程要划分为几个阶段, 每个阶段的产出大概是什么。
④如果设定的目标很大(比如你的终极目标是要造一个自动化挖掘PHP反序列化漏洞的工具出来),那么对于你学习过程划分的每个阶段都应该有一个最低技能要求,学到该技能要求之后就去尝试。尝试之后反思,反思之后继续学习,然后继续阶段性任务。
⑤多做笔记,只有你能把一个问题表述清楚了,你才算是学会了。
●学会复盘很重要
复盘是必不可少的一个部分,正如每场CTF比赛过后都应该有赛题的复盘记录(Writeup)
1.项目整个完成过程的记录,包括失败的尝试和成功的尝试,以及思考的过程
2.有没有副产物和存疑的地方,比如过程中学到一些新的技巧点,或者是某一块代码看起来有点问题以后可能用得到,这些都记录下来
3.技能树是否存在不足,哪些地方不足,这些不足强化的优先级如何,对于优先级高的强化点放入后续的学习计划之中
4.对成功的场景进行抽象总结,对抽象出来的场景进行泛化成为一种漏洞思维模型,后续的遇到类似的模式直接套用即可
5.对涉及到的项目文档进行细节整理和补充,因为我们在做项目时通常是边做边写会写的比较乱,复盘整理的时候需要把他们重新整理,文档结构越规范越清晰越好
●学习中注意的问题
在复盘完成后,我们会有很多新的体会和认知,尤其是对自身技能树的不足有一定的认知,那么我们应该进行反思性的学习,针对不足的地方进行针对性加固学习,不过学习的时候一定要遵守以下几个原则:
1. 不要焦虑,你在经历过一个项目后你肯定会发现自己好菜啥都不会,很正常,你本来就很菜,因此不要焦虑,你能完成项目就说明你有产出,这个产出就是你进步的证明
2. 对技能树加固要有取舍,你发现一个综合的项目涉及到方方面面,你各个方面可能都不太会,这时候你要对技能树进行梳理,哪些是需要舍去的,哪些是需要加固到最低要求的,哪些是自己主要方向需要不断强化的
3. 设置学习的时长,不能一直陷入学习中,学习是学不完的,反思性学习可以认为是进行下一个项目前的准备期,这个时间不宜过长,般建议两星期左右。
黑客&网络安全如何学习
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取