网络安全之——漏洞挖掘
文章目录
-
-
-
- 网络安全之——漏洞挖掘
-
- 一.为何挖不到漏洞?
-
- 1.什么是src?
-
- (1)漏洞报告平台
- (2)xSRC模式
- 2.法律常识,挖洞前要注意不违法。
- 二. 漏洞挖掘的几个关键技术
-
- 1.JS在漏洞挖掘重要地位
-
- (1)JS是什么?
- (2)JS在实战漏洞挖掘中的作用:
- (3)Jsfind工具
- 2.浏览器控制台使用技巧和方式
- 3.JS 的断点技巧以及Hook注入
- 4.Python和JS 相结合解决加密问题
- 5. MD5加密与逆向加密参数还原
-
- (1) 打开Burp suite
- (2)打开Burp suite后在浏览器中配置好代理
- (3)这个时候回到浏览器控制台中查找到JS中相应的所有密码加密处理函数
- (4)将在控制台中找到的所有的MD5加密处理函数都复制到1.js文件中。
- (5)对所有需要调用的加密函数进行查找复制,直到可以对我们的输入参数进行成功加密并输出。
- (6)代入最开始时的密码加密的公式。
- (7)将自己的密码破解字典使用该加密函数进行输出转换然后输入Burp suite中进行破解
-
一.为何挖不到漏洞?
信息收集不够多,或者做了信息收集但是分析的不够彻底和仔细。有几点要求需要大家注意:首先是要熟读刑法,了解那些是经过授权的渗透;其次,收集的信息要多,越多越好,包括子域名、端口以及IP段落等,利用搜索引擎或者GitHub上的现成工具;再次,提前了解一些常见的漏洞示例,熟悉漏洞可能存在的地方,可以多看看漏洞平台或者社区上的一些经验。然后,大厂的主站漏洞不是很多,挖掘的难度较大,新手应该绕过,换到子站看一下;最后,不耻下问,多学习,不要仅仅限制于TOP10。
1.什么是src?
SRC,( Security Response Center) ,安全应急响应中心,是企业用来对外接收来自用户发现并报告产品安全漏洞的站点。简单说就是白帽子用于提交随机发现的漏洞的一个平台,提交者可以获取一定的赏金。是企业用于对外接收来自用户发现并报告的产品缺陷的站点。目前主要包含有两种实现方式,第一种是漏洞报告平台,另一种是XSRC模式。
(1)漏洞报告平台
漏洞报告平台是指由独立的第三方公司或机构成立综合性的“安全应急响应中心”。国内补天平台、漏洞盒子平台,以及据此衍生的Sobug众测平台等均属于该模式。外部报告者注册对应漏洞报告平台选择对应的厂商进行报送,接着第三方机构会发送邮件提示相关厂商确认处理。这种模式的缺陷十分明显。厂商的历史漏洞信息会完全暴露给第三方机构,报告中涉及的企业内部大量敏感信息因此外泄,丧失私密性。
(2)xSRC模式
xSRC模式是指企业自己分配工程师开发属于自身的安全应急响应中心,制定自己的漏洞收集和披露计划。目前包括Google、Microsoft、腾讯、阿里巴巴和百度等,均成立了自己的安全应急响应中心,对外收集并处理安全研究员报送的漏洞报告。使用这种模式,企业在漏洞的收集和披露过程中完全掌控了主动性,拥有良好的私密性和可定制性。
2.法律常识,挖洞前要注意不违法。
中华人民共和国网络安全法第二十七条规定,任何个人和组织不得从事非法侵入他人网络、干扰他人网络正常功能、窃取网络数据等危害网络安全的活动;不得提供专门用于从事侵入网络、干扰网络正常功能及防护措施、窃取网络数据等危害网络安全活动的程序、工具;明知他人从事危害网络安全的活动的,不得为其提供技术支持、广告推广、支付结算等帮助。
二. 漏洞挖掘的几个关键技术
1.JS在漏洞挖掘重要地位
(1)JS是什么?
JS即javascrip 是一种Web页面的脚本语言,主要用来向HTML页面添加交互行为,主要作用是:
- 在HTML页面中嵌入动态文本
- 对浏览器的时间做出响应
- 读写HTML的元素
- 在数据被提交到服务器之前校验数据
- 检测访客的浏览器信息
CSS :(Cascading Style Sheets,层叠样式表),是一种用来为结构化文档(如 HTML 文档或 XML 应用)添加样式(字体、间距和颜色等)的计算机语言,CSS 文件扩展名为 .css。
HTML:超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言。我们可以使用 HTML 来建立自己的 WEB 站点,HTML 运行在浏览器上,由浏览器来解析。
HTML和CSS以及JS三种前端语言的区别:HTML只包含页面中的文字,就好比是一个毛坯房。CSS包含了图片,颜色以及排版,从而将页面渲染的更加美观就好比一个装修好的房子。JS就是加入一些动作,就好比给装修好的房子加入了智能家居。
HTML
<form name="myForm" action="demo_form.php"
onsubmit="return validateForm()" method="post">
名字: <input type="text" name="fname">
<input type="submit" value="提交">
JS
function validateForm() {
var x = document.forms["myForm"]["fname"].value;
if (x == null || x == "") {
alert("需要输入名字。");
return false;
css
<style>
p
{
color:red;
text-align:center;
}
</style>
(2)JS在实战漏洞挖掘中的作用:
- 1.JS中存在插件名字,根据插件找到相应的漏洞可以直接进行利用
https://rencaiceping.guazi.com/login.asp?c=1


可以搜索第三方公司代码的漏洞进行利用。
-
2.JS中存在一些URL链接。根据URL链接可以找到相应的页面进行经一步测试和利用。

-
3. JS中存在一些子域名,可以直接访问子域名

-
4. JS中的一些注释可能泄露一些账号密码或者其他信息


黑客有可能向该人员发送钓鱼邮件进行漏洞利用。
(3)Jsfind工具


可以使用JSfind工具来查找JS中所有泄露的一些URL和子域名。

包含关键信息的URL。
2.浏览器控制台使用技巧和方式
控制台中调试器主要对JS代码进行动态调试并且保存加载的JS代码


3.JS 的断点技巧以及Hook注入
JS的断点调试,打到断点处就不运行了,选择单步步入。

在关键代码中打断点(点击代码中的行号),通过关键信息找到代码执行的关键步骤,然后一步一步进行调试。

4.Python和JS 相结合解决加密问题
1.js文件样例函数如下:

通过Python去调用1.js代码中的函数encryptByDES
首先导入execjs库,定义一个结果唤醒1.js中函数encryptByDES然后传入传参,**相当于一个用Python去调用js中的函数并输出对应的结果。**

在终端中进行执行后输出结果。

5. MD5加密与逆向加密参数还原
(1) 打开Burp suite
Burp suite 是用于攻击 web 应用程序的集成平台。它包含了许多 Burp 工具,这些不同的 Burp 工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用的方式发起攻击。这些工具设计了许多接口,以促进加快攻击应用程序的过程。所有的工具都共享一个能处理并显示 HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。它主要用来做安全性渗透测试。其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描 web 应用程序漏洞,以暴力破解登陆表单,执行会话令牌等多种的随机性检查。
下载地址
https://portswigger.net/burp/releases
安装教程
https://zhuanlan.zhihu.com/p/605035559
注册机
https://link.zhihu.com/?target=https%3A//github.com/h3110w0r1d-y/BurpLoaderKeygen/releases
java sdk:
https://link.zhihu.com/?target=https%3A//download.java.net/openjdk/jdk11/ri/openjdk-11%2B28_windows-x64_bin.zip

Burp suite包括以下几个模块:
proxy:代理,默认地址是127.0.0.1,端口是8080
target:站点目标,地图
spider:爬虫
scanner:漏洞扫描
repeater:http请求消息与响应消息修改重放
intruder:暴力破解
sequencer:随机数分析
decoder:各种编码格式和散列转换
comparer:可视化差异对比功能

(2)打开Burp suite后在浏览器中配置好代理

在浏览器中打开要破解的URL并输入用户名和密码点击登录,同时在Burp suite中查看拦截请求中所抓到的包。


(3)这个时候回到浏览器控制台中查找到JS中相应的所有密码加密处理函数
在Burp suite所显示的最后值是由如下函数进行md5的3层混合加密后得到的。



第一层传入的值会先进行md51进行加密。

第二层的md51加密进行了多层函数的嵌套。

在控制台中逐个进行查找,找到所有的MD5加密处理函数。




(4)将在控制台中找到的所有的MD5加密处理函数都复制到1.js文件中。

一步步进行调试,找到所有加密过程中所缺失的函数。

记得对python脚本中的函数名进行更改。

(5)对所有需要调用的加密函数进行查找复制,直到可以对我们的输入参数进行成功加密并输出。

(6)代入最开始时的密码加密的公式。

在控制台中得出随机值,10分钟内会变一次,所有要在10分钟内将加密过程破解完成。

将加密参数复制到python脚本中运行后得到与Burp suite中相同的数值。自此相当于完成了将网页中加密过程的破解。

(7)将自己的密码破解字典使用该加密函数进行输出转换然后输入Burp suite中进行破解
随机值字典如下所示:

然后将随机值按照加密过程进行转换。

执行结果如下:

然后输入Burp suite的载荷中进行破解。使用该密码可以成功进行系统登录。

运行后状态码显示登陆成功,从而得出密码破解成功。


黑客/网络安全学习包


资料目录
-
成长路线图&学习规划
-
配套视频教程
-
SRC&黑客文籍
-
护网行动资料
-
黑客必读书单
-
面试题合集
成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

我一共划分了六个阶段,但并不是说你得学完全部才能上手工作,对于一些初级岗位,学到第三四个阶段就足矣~
这里我整合并且整理成了一份【282G】的网络安全从零基础入门到进阶资料包,需要的小伙伴文末免费领取哦,无偿分享!!!
【一一帮助网络安全学习,以下所有资源文末免费领取一一】
①网络安全学习路线
②上百份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥HW护网行动经验总结
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

接下来我将给各位同学划分一张学习计划表!
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固
6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
阶段三:顶级网络安全工程师
这部分内容对于咱们零基础的同学来说还太过遥远了,由于篇幅问题就不展开细说了,我给大家贴一个学习路线。感兴趣的童鞋可以自行研究一下哦,当然你也可以点击这里加我与我一起互相探讨、交流、咨询哦。

资料领取
上述这份完整版的网络安全学习资料已经上传网盘,朋友们如果需要可以微信扫描下方二维码 ↓↓↓ 或者 点击以下链接都可以领取
网络安全学习路线&学习资源

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆
结语
网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。
1万+

被折叠的 条评论
为什么被折叠?



