渗透测试-JavaScript 利器整理

关注本公众号,长期推送技术文章

知攻善防实验室

红蓝对抗,Web渗透测试,红队攻击,蓝队防守,内网渗透,漏洞分析,漏洞原理,开源 工具,社工钓鱼,网络安全。

73篇原创内容

公众号

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!

渗透测试-JavaScript 思路

在日常攻击模拟中,我们在针对少量目标以及无所下手的目标(例如:只有一个登陆框,开发规模小的),会比较烦恼,在此以 js 的方向进行整理。

什么是 js?

JavaScript 是一种脚本编程语言,它可以在网页上实现复杂的功能,网页展现给你的不再是简单的静态信息,以及各种的表单提交,内容获取,都使用了 JavaScript。

JavaScript 引起的安全隐患

客户端攻击:JavaScript 常用于客户端攻击,例如跨站脚本攻击(XSS)。通过注入恶意脚本,攻击者可以窃取用户的敏感信息,如会话令牌和登录凭据,或者执行其他恶意操作。因此,测试人员需要检查应用程序是否容易受到此类攻击。

访问控制:JavaScript 可用于实现客户端的访问控制机制。如果这些机制存在缺陷或被绕过,攻击者可能会获得未经授权的访问权限。渗透测试人员需要验证访问控制机制的有效性,并尝试绕过它们以检查潜在的安全漏洞。

数据泄露:JavaScript 可能会泄露敏感数据,例如通过不安全的 API 调用或不当的数据处理。渗透测试人员需要检查应用程序是否存在此类泄露,并评估其严重程度。

逻辑缺陷:JavaScript 中的逻辑缺陷可能会导致安全问题。例如,如果一个函数没有正确验证输入参数,攻击者可能会利用这一点来执行恶意代码或绕过安全限制。测试人员需要仔细审查 JavaScript 代码,以发现这些潜在的逻辑缺陷。

供应链攻击:JavaScript 库和框架的广泛使用使得供应链攻击成为可能。攻击者可以通过篡改合法的 JavaScript 库或框架来注入恶意代码。因此,测试人员需要检查应用程序使用的第三方库和框架的来源和完整性。

提升用户体验:除了安全方面的考虑,JavaScript 渗透测试还可以帮助提高应用程序的用户体验。例如,测试人员可以发现并解决导致页面加载缓慢或崩溃的 JavaScript 错误。

安全测试中常用的工具

下文举例笔者用的安全工具

FindSomething

Github 地址:

 
https://github.com/momosecurity/FindSomething

FindSomething,基于浏览器插件的被动式信息提取工具

图片

 

图片

安装教程:

Chrome

1.直接访问 https://chrome.google.com/webstore/detail/findsomething/kfhniponecokdefffkpagipffdefeldb

2.使用 chrome 开发者模式加载源码。

Firefox 插件

1.直接访问 https://addons.mozilla.org/zh-CN/firefox/addon/findsomething/

2.切换到 firefox 分支,使用“调试附加组件”加载。

LinkFinder

LinkFinder 是一个 Python 脚本,用于发现 JavaScript 文件中的 endpoints 及其参数。通过使用该工具,研究人员可以轻松在 JavaScript 文件中发现和扫描网络节点及其相关参数。

Github

 
https://github.com/GerbenJavado/LinkFinder
使用教程
 
$ git clone https://github.com/GerbenJavado/LinkFinder.git
$ cd LinkFinder
$ python setup.py install
使用截图截图

图片

SuperSearchPlus

superSearchPlus 是聚合型信息收集插件,支持综合查询,资产测绘查询,信息收集 敏感信息提取 js 资源扫描 目录扫描 vue 组件扫描 整合了目前常见的资产测绘平台 同时支持数据导出

Github

 
https://github.com/dark-kingA/superSearchPlus
安装教程

1.下载

图片

以谷歌浏览器为例

打开 chrome://extensions/

图片

图片

图片

打开网站,然后安 F12

图片

图片

图片

JavaScript 断点调试

F12 打开审查元素,找到“源代码/来源” 找到需要下断点的文件,点击红款内即可。

图片

图片

这几个按钮的意思分别是:

暂停/恢复脚本执行(程序执行到下一断点停止)。

执行到下一步的函数调用(跳到下一行)。

进入当前函数。

跳出当前执行函数。

关闭/开启所有断点(不会取消)。

异常情况自动断点设置。

关注公众号“知攻善防实验室”,后台回复“交流群”获取技术交流群链接

  • 24
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值