标题:Analyzing JavaScript Files To Find Bugs
作者:Anastasis Vasileiadis
原文地址:https://medium.com/@anastasisvasileiadis/analyzing-javascript-files-to-find-bugs-1e19045edeb
JavaScript在web中起着至关重要的作用,JavaScript文件是web应用程序的重要组成部分。以下是为什么JavaScript文件在web中很重要的一些重要原因。
交互性:JavaScript使开发人员能够为网页添加交互性和响应性,使其更具吸引力和用户友好性。
动态内容:JavaScript允许动态加载和更新网页上的内容,而不需要重新加载整个页面,增强用户体验。
表单验证:JavaScript支持客户端表单验证,确保用户输入在提交前符合特定标准,从而提高数据准确性和用户体验。
JavaScript文件可以在漏洞赏金计划中发挥重要作用,安全研究人员可以在该计划中识别并报告web应用程序中的漏洞。JavaScript文件可以包括以下内容:
aws access key
aws secret key
api key
passwords
admin credential
secret token
oauth_token
oauth token secret
如果您发现了敏感信息,则可以将其报告为信息泄露,如果该信息包含凭据,则还可以从中受益,在这种情况下,可以将其报告为访问控制失败等等。
重要问题:如何分析JavaScript文件?
这很简单,只是查看页面。
好吧,我开玩笑的。
我在JavaScript文件中发现了有效的登录凭据。
具体步骤:
你要有一个域名列表,我们称之为domains.txt。利用任何抓取url的工具来获取这样一个列表。
Katana or Waybackurl or gau
cat domains.txt | katana | grep js | httpx -mc 200 | tee js.txt
命令解释:
-
cat domains.txt | katana
:该命令使用cat实用程序显示文件domains.txt的内容。它假设domains.txt包含一个域名或url列表,并通过|传递到katana以从域中抓取url -
grep js
: grep命令用于文本文件中的模式匹配。在本例中,它正在搜索包含”.js”模式的行,该模式表示JavaScript文件。这会过滤输出,只包含提到JavaScript文件的行。 -
httpx -mc 200
:该命令利用httpx工具发送HTTP请求并从过滤后的url中检索响应。mc 200选项指定只显示返回成功HTTP状态码200(OK)的url。这将过滤掉不存在或返回错误的url。 -
tee js.txt
: tee命令用于显示命令的输出,同时保存到文件中。在本例中,它将匹配前面条件的过滤url保存到一个名为js.txt的文件中。
现在我们有了所有的javascript链接。
通过nuclei进行扫描:
nuclei -l js.txt -t ~/nuclei-templates/exposures/ -o js_bugs.txt
另一种方式:
下载js.txt中的所有链接。
一定要搜索一下。
代码:
file="js.txt"
# Loop through each line in the file
while IFS= read -r link
do
# Download the JavaScript file using wget
wget "$link"
done < "$file"
grep -r -E "aws_access_key|aws_secret_key|api key|passwd|pwd|heroku|slack|firebase|swagger|aws_secret_key|aws key|password|ftp password|jdbc|db|sql|secret jet|config|admin|pwd|json|gcp|htaccess|.env|ssh key|.git|access key|secret token|oauth_token|oauth_token_secret|smtp" *.js
Boom
每周一9点发布精选内容。
每周三9点发布翻译内容。
更多安全资讯,请关注微信公众号:安全虫。
每周坚持学习与分享,觉得文章对你有帮助可在底部给点个“在看”。
原文始发于微信公众号(安全虫):【翻译】通过分析JavaScript文件查找Bugs(018)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论