关于如何学习企业SRC漏洞挖掘,目前还没有一个完整的知识体系,我这里抛砖引玉讲一下我的经验。
SRC漏洞挖掘可以分为以下七个阶段
- 具有python等编程基础
- 掌握常见漏洞原理与利用技巧
- 了解SRC规则和漏洞姿势
- 漏洞的组合利用以及绕过
- 自动化利用技巧
- 有一个交流的圈子一起挖洞交流学习
- 持续学习新的知识
大家目前最大的困惑有如下几点
- 我公益SRC、edusrc漏洞挖得飞起,但是一到企业SRC漏洞挖掘就不会了!
- 我是小白,我学了漏洞基础也具有一定的编程基础但是我不知道该怎么搞企业SRC?
- 为什么我挖了好久,一个洞也挖不到?但是排行榜上的大佬们一个个的一个月照样收入几万几十万?
- 我很好奇大家挖的都是什么,我应该怎么学呢?
本篇文章即可为大家解答以上SRC漏洞挖掘的困惑,如果还有问题欢迎评论或者私聊我!!!
第一阶段:具有python等编程基础
菜鸟教程学习语法:https://www.runoob.com/python/python-tutorial.html
Python语言基础50课:https://github.com/jackfrued/Python-Core-50-Courses
100天从新手到大师:https://github.com/jackfrued/Python-100-Days
第二阶段:掌握常见漏洞原理与利用技巧
关于常见漏洞原理与利用技巧学习可以根据以下三个阶段去学习,至少要学会第一阶段
- 第一阶段:web渗透
- 第二阶段:网站渗透
- 第三阶段:内网渗透
各个阶段的学习路线规划
2.1 第一阶段:web渗透
学习基础 时间:1周 ~ 2周:
① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等:可以通过Google搜索获取资料)为之后的WEB渗透测试打下基础。 ② 查看一些论坛的一些Web渗透资料,学一学案例的思路,每一个站点都不一样,所以思路是主要的。 ③ 学会提问的艺术,如果遇到不懂得要善于提问。
配置渗透环境 时间:3周 ~ 4周:
① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。 ② 下载这些工具无后门版本并且安装到计算机上。 ③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找资料。
渗透实战操作 时间:约6周:
① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。 ② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。 ③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。 ④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。 ⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。 ⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。 ⑦ 了解一句话木马,并尝试编写过狗一句话。 ⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
经常逛网络安全有关的网站 时间:∞
① 例如:Freebuf、i春秋、安全客、安全类的微信公众号、google搜索。 ② 遇到有意义的文章可以转载到自己博客 熟悉Windows & Kali Linux 系统 时间:2周 ~ 4周 ①了解Windows系统下的常用命令,如:ipconfig,nslookup,tracert,net,tasklist,taskkill等。 ② 熟悉Linux系统的常用命令,如:wget、mv、cd、rm、mkdir等。 ③ 熟悉Kali Linux系统下的常用工具。
学习服务器的安全配置 时间:4周左右
① 了解03、08、12系统下iis的基本配置,了解Win下的目录权限(例如iis写权限),建立一个简单的站点。 ② 了解Linux的运行权限、跨目录、文件夹权限,学会配置Linux Web服务器,并建立一个简单的站点。 ③ 使用自动化工具扫描已经建立好的站点,并利用Google学会修补漏洞。 ④ 学会打补丁、iptables限制端口、添加规则等。 ⑤ 下载一款waf软件,熟悉它的使用。
学习一些编程知识 时间:约8周
① 在w3cschool上学习html、php、数据库的基础,建议每一种学到第8节就可以了。 ② 学习Python(也可以是其他语言,但是强烈建议使用python)。要求学习:爬虫(基础)、多线程、文件操作、正则表达式(基础)还有一些常用的第三方库,可能需要安装pip。 ③ 利用python写一个简单的poc或者exp。 ④ 开发一些渗透时会用到的程序,例如:端口扫描等。 ⑤ 选择一个php框架进行学习,不要太深入。
学习代码审计 时间:4周 ~ 6周
① 了解代码审计的静态和动态方法,懂得分析程序。 ② 在乌云镜像里找到开源的漏洞程序,跟着学习分析方法,尝试自己分析3~5次代码。 ③ 了解web漏洞形成的原因,熟悉常见漏洞函数。
安全体系开发 时间:∞
① 开发一些安全工具,并将其开源,可以托管到码云或者github上,展示个人实力。 ② 建立自己的一套安全体系,拥有独立的思路方法。
2.2 第二阶段:网站渗透
可以学习一下亮神分享 https://github.com/Micropoor/Micro8
2.3 第三阶段:内网渗透
内网渗透自学路线指南
No.1 基础篇
https://daiker.gitbook.io/windows-protocol/ 【windows认证知识】
https://github.com/l3m0n/pentest_study【域环境搭建、端口转发等知识】
https://xz.aliyun.com/t/6349【内网渗透之端口转发、映射、代理】
https://gorgias.me/2018/04/04/渗透中的数据转发技巧/【SSH、ICMP、DNS等隧道建立知识】
No.2 进阶篇
https://github.com/Paper-Pen/GatherInfo【内网信息收集】
https://www.anquanke.com/post/id/92646【域渗透】
http://rinige.com/index.php/archives/625/【内网信息收集之定位技术】
http://dwz.date/x47【横向移动】
https://www.secshi.com/21502.html【工作组渗透】
No.3 高阶篇
https://xz.aliyun.com/t/2354【内网安全检查/渗透总结】
https://lab.pentestit.ru/【国外内网靶场】
http://vulnstack.qiyuanxuetang.net/vuln/【国内内网靶场(红日安全出品)】
https://github.com/PowerShellMafia/PowerSploit【powershell框架,最好自己学习一powershell语法】
https://github.com/Ridter/IntranetPenetrationTips【内网渗透TIPS】
第三阶段:了解SRC规则和漏洞姿势
3.1 SRC规则了解
直接通过SRC的公告去了解,例如我们拿某SRC公告举例子。
3.1.1 了解SRC漏洞挖掘红线
千万不要触碰红线,不要违法乱纪,做一个守法好公民。
3.1.2 了解SRC漏洞收录范围
3.1.2 了解SRC漏洞评级
【一一帮助安全学习,所有资源关注我,私信回复“资料”获取一一】
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥信息收集80条搜索语法
⑦100个漏洞实战案例⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
第四阶段:漏洞的组合利用以及绕过
这个阶段你需要对漏洞姿势技巧做一个组合利用,举个例子
4.1 任意用户密码重置绕过
1、来到重置页面,可以看到是有页面验证码的,并且无法进行爆破
获取验证码,随意输入一个错误的验证码
利用漏洞1,修改返回包
{"success":false,"msg":"登录失败","code":400,"token":null,"data":null}
更改为
{"success":true,"msg":"登录失败","code":200,"token":null,"data":null}
结合漏洞2,利用页面没有对验证码次数做限制进行爆破
数据包:
POST /Account/PhoneLogin HTTP/1.1
Host:
Content-Length: 50
Accept: */*
X-Requested-With: XMLHttpRequest
User-Agent:
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie:
Connection: close
accountName=18888888888&code=1111&pwd=aaaaaa&pwd=aaaaaa
成功实现任意用户密码重置
我们来总结下这个漏洞:
- 漏洞1:修改返回包实现前端绕过可以直接进入密码修改界面,但Token无效,无法成功修改密码。
- 漏洞2:手机验证码可爆破,爆破出来成功登陆。
- 所以,利用前端绕过进入修改密码界面,然后爆破手机验证码,即可实现任意密码重置漏洞 。
第五阶段:自动化利用技巧
熟悉手工漏洞挖掘之后,需要提高自己的漏洞挖掘效率,这个时候,编程基础是必要的,前期可以去学习大佬们已经开源的自动化漏洞挖掘插件和工具,后期可以自己从尝试写burp插件开始,去完善自己的自动化漏洞挖掘之路。
第六阶段:有一个交流的圈子一起挖洞交流学习
大家都知道SRC漏洞挖掘技术也在进步,同时自己做漏洞挖掘的过程中,容易产生懈怠的心里,如果可以有朋友、有一个圈子一起去做漏洞挖掘的话,就会共同进步,一起交流分享经验。
第七阶段:持续学习新的知识
可以多逛一逛社区、博客等地方去学习。