更多渗透课程可以点我头像看我的视频哦,也可以点击下面链接
web渗透测试最全实战课程--渗透测试视频教程-信息安全-CSDN程序员研修院
JavaScript介绍
JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。也就是脚本语言。
JavaScript和Java的关系区别呢?JavaScript和Java没什么关系,两种不同的语言。
JavaScript作用
JavaScript被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。
嵌入动态文本于HTML页面。
对浏览器事件做出响应。
读写HTML元素。
在数据被提交到服务器之前验证数据。
检测访客的浏览器信息。
控制cookies,包括创建和修改等。
查看网站中的JavaScript
浏览器-->开发工具(F12)
将Js转化为html格式,看上面的Js非常的不标准,在中间框中左下角点击{}就可以使其格式标准化
JavaScript代码分析
1、发现更多的攻击面(URL、域名、路径等等)
测试站、后台路径、未公开的路径、api地址等等
2、发现敏感信息(硬编码的帐号密码、API密钥、注释等等)
硬编码帐号可登录、测试帐号可被登录、密钥泄露、注释中开发信息等等
3、发现危险的代码(eval、dangerouslySetInnerHTML等等)
XSS漏洞、模版注入
4、了解网站的功能
分析方法
搜索关键词:
$.ajax(
$.get(
$.post(
method:"get
http.get(“
path:"
route:"
对当前网页js进行全局搜索:
火狐-->F12-->调试器-->Ctrl+Shift+F
Webpack打包前端js
webpack是当前前端最热门的前端资源模块化管理和打包工具。
存在.map文件
•使用reverse-sourcemap工具
•reverse-sourcemap -v app.3c8aa9676f686b3a7caf.js.map -o sourcecode
还原后进行分析,发现存在测试数据:
利用测试数据进行登录访问,成功登录
动态分析
各个浏览器的开发者工具的调试器同时加抓包工具辅助
发现网站数据包加密,然后寻找提交登录的逻辑,进行下断点,然后单步调试
跟踪加密函数:
搜索加密函数调用方法 aesUtil.encryptAES()
猜测数据包解密方法aesUtil.decryptAES()
通过控制台执行函数对数据包加解密,构造sql注入语句,发现一处SQLServer的SQL注入
进一步通过加解密直接出数据