Day13:信息打点-JS架构框架识别泄漏提取API接口枚举FUZZ爬虫插件项目

目录

JS前端架构-识别&分析

JS前端架构-开发框架分析

前端架构-半自动Burp分析

前端架构-自动化项目分析

思维导图


章节知识点

Web:语言/CMS/中间件/数据库/系统/WAF

系统:操作系统/端口服务/网络环境/防火墙等

应用:APP对象/API接口/微信小程序/PC应用等

架构:CDN/前后端/云应用/站库分离/OSS资源等

技术:JS爬虫/敏感扫描/端口扫描/源码获取/接口泄漏等

技术:指纹识别/Github监控/CDN绕过/WAF识别/蜜罐识别等

JS前端架构-识别&分析

什么是JS渗透测试?

在Javascript中也存在变量和函数,当存在可控变量及函数调用即可参数漏洞
JS开发的WEB应用和PHP,JAVA,NET等区别在于即没有源代码,也可以通过浏览器的查看源代码获取真实的点。获取URL,获取JS敏感信息,获取代码传参等,所以相当于JS开发的WEB应用属于白盒测试(默认有源码参考),一般会在JS中寻找更多的URL地址,在JS代码逻辑(加密算法,APIkey配置,验证逻辑等)进行后期安全测试。

前提:Web应用可以采用后端或前端语言开发

后端语言:php java python .NET 浏览器端看不到真实的源代码

前端语言:JavaScript(JS)和JS框架 浏览器端看到真实的源代码

例子:

zblog:核心功能采用PHP语言去传输接受

vue.js:核心功能采用框架语法(JS)传输接受

如何判断js开发应用?

  1. 插件wappalyzer
  2. 源程序代码简短
  3. 引入多个js文件
  4. 一般有/static/js/app.js等顺序的js文件
  5. 一般cookie中有connect.sid

JS安全问题
    源码泄漏=代码注释部分泄露是某个开源
    未授权访问=JS里面分析更多的URL访问确定接口路径
    敏感key泄漏=JS文件中可能配置了接口信息(云应用,短信,邮件,数据库等)
    API接口安全=(代码中加密提交参数传递,更多的URL路径)

流行的Js框架有那些?
Vue NodeJS jQuery Angular等
如何获取更多的JS文件?
    手工-浏览器搜索
    半自动-Burpsuite插件
    工具化-各类提取&FUZZ项目

JS前端架构-开发框架分析

浏览器全局搜索分析

如何快速获取价值信息?   浏览器 CTRL+F搜索关键字

    src=

    path=

    method:"get"

    http.get("

    method:"post"

    http.post("

    $.ajax

    http://service.httppost

    http://service.httpget

通过Chrome插件判断网站前端框架

通过浏览器上的文件分析,引用了大量的js文件

在源代码处搜索

前端架构-半自动Burp分析

自带功能:Target->sitemap->Engagement tools->Find scripts

该功能处理.js后缀的文件之外,页面中script标签的内容也会自动匹配出来。等同于右键看完当前页面的js逻辑后在接着Ctrl F 搜.js然后继续看代码,在Burp里相对方便得多。

官方插件:Extender->BApp Store->JS Link Finder & JS Miner

这俩工具不用

第三方插件:Extender->Extensions->HaE & Unexpected_information

Unexpected_information:https://github.com/ScriptKid-Beta/Unexpected_information
用来标记请求包中的一些敏感信息、JS接口和一些特殊字段,
防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。


HaE:https://github.com/gh0stkey/HaE

安装成功后出现HaE要把其中的筛选规则中的Config替换掉
https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml
基于BurpSuite插件JavaAPI开发的请求高亮标记与信息提取的辅助型插件。该插件可以通过自定义正则的方式匹配响应报文或请求报文,可以自行决定符合该自定义正则匹配的相应请求是否需要高亮标记、信息提取。

这俩也没必要,有更优秀的

前端架构-自动化项目分析

Jsfinder-从表现中JS中提取URL或者敏感数据
https://github.com/Threezh1/JSFinder
一款用作快速在网站的js文件中提取URL,子域名的工具

  • 使用语句:python JSFinder.py -u https://px.gtxy.cn/np/#/login

不推荐使用

URLFinder-从表现中JS中提取URL或者敏感数据(*)

https://github.com/pingc0y/URLFinder

一款用于快速提取检测页面中JS与URL的工具。

功能类似于JSFinder,但JSFinder好久没更新了。

  • 使用语句:URLFinder-windows-amd64.exe -u https://px.gtxy.cn/np/#/login -s all -m 2

JSINFO-SCAN-从表现中JS中提取URL或者敏感数据

https://github.com/p1g3/JSINFO-SCAN

递归爬取域名(netloc/domain),以及递归从JS中获取信息的工具

FindSomething-从表现中JS中提取URL或者敏感数据-推荐(*)

https://github.com/momosecurity/FindSomething

该工具是用于快速在网页的html源码或js代码中提取一些有趣的信息的浏览器插件,

包括请求的资源、接口的url,请求的ip和域名,泄漏的证件号、手机号、邮箱等信息。

该工具是用于快速在网页的html源码或js代码中提取一些有趣的信息的浏览器插件,包括请求的资源、接口的url,请求的ip和域名,泄漏的证件号、手机号、邮箱等信息

ffuf-FUZZ爆破找到更多的js文件分析更多的信息(*)

https://github.com/ffuf/ffuf

https://wordlists.assetnote.io  ---字典下载(很丰富)

功能强大的模糊化工具,用它来FUZZ模糊化js文件。

  • 语法:ffuf.exe -w js字典.txt -u https://m.xjggjy.com/FUZZ -t 200

Packer-Fuzzer-针对JS框架开发打包器Webpack检测(*)

https://github.com/rtcatc/Packer-Fuzzer

一款针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具

  • 语法:python packerfuzzer.py -u http://1.15.51.4/
  • 使用方式:首先利用插件获取查看杂项为Webpack的网站
    • 直接将网址粘贴至语法后面等待扫描结束
    • 在reports目标目录下,出现综合网址,word等文件

一款针对Webpack等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具webpack是一个打包工具,他的宗旨是一切静态资源皆可打包。有人就会问为什么要webpack?webpack是现代前端技术的基石,常规的开发方式,比如jquery,html,css静态网页开发已经落后了。现在是MVVM的时代,数据驱动界面。webpack它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等),并将其打包为合适的格式以供浏览器使用

思维导图

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/518056.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一图看懂:什么是“新质生产力”?

◆2023年9月,首次提出“新质生产力”。 ◆2024年1月,强调“加快发展新质生产力,扎实推进高质量发展”。 ◆2024年3月,《政府工作报告》中提出,要大力推进现代化产业体系建设,加快发展新质生产力。充分发挥…

基于Springboot+Layui餐厅点餐系统

一、项目背景 在互联网经济飞速发展的时代,网络化企业管理也在其带领下快速兴起,开发一款自主点餐系统会受到众多商家的青睐。现如今市场上的人力资源价格是非常高昂的,一款自主点餐系统可以减少餐厅的人力开销,将服务员从繁忙的…

青少年如何从零开始学习Python编程?有它就够了!

文章目录 写在前面青少年为什么要学习编程 推荐图书图书特色内容简介 推荐理由粉丝福利写在最后 写在前面 本期博主给大家带来一本非常适合青少年学习编程的图书,快来看看吧~ 青少年为什么要学习编程 青少年学习编程,就好比在他们年轻时就开始掌握一种…

Unity UGUI之Scrollbar基本了解

Unity的Scrollbar组件是用于在UI中创建滚动条的组件之一。滚动条通常与其他可滚动的UI元素(如滚动视图或列表)一起使用,以便用户可以在内容超出可见区域时滚动内容。 以下是Scrollbar的基本信息和用法: 1、创建 在Unity的Hierarchy视图中右…

FreeRTOS操作系统学习——空闲任务及其钩子函数

空闲任务 当 FreeRTOS 的调度器启动以后就会自动的创建一个空闲任务,这样就可以确保至少有一任务可以运行。但是这个空闲任务使用最低优先级,如果应用中有其他高优先级任务处于就绪态的话这个空闲任务就不会跟高优先级的任务抢占 CPU 资源。空闲任务还有…

Iris搭建路由模块controller+审计中间件

Iris搭建路由模块controller审计中间件 封装NewControllerRoute方法:iris_demo/route/route.go封住NewSignRoute方法,添加自定义中间件:iris_demo/util/route_util.go自定义中间件:iris_demo/middleware/audittrail_middleware.go…

【网络】:再谈传输层(UDP)

传输层 一.再谈端口号二.UDP 一.再谈端口号 端口号(Port)标识了一个主机上进行通信的不同的应用程序。 在TCP/IP协议中, 用 “源IP”, “源端口号”, “目的IP”, “目的端口号”, “协议号” 这样一个五元组来标识一个通信(可以通过netstat -n查看); 1.端口号划分 0 - 1023:…

【MybatisPlus】BaseMapper详解,举例说明

一、BaseMapper 简介 MyBatis-Plus 的核心类 BaseMapper 主要是用于提供基本的 CRUD(创建、读取、更新、删除)操作的接口定义。它是 MyBatis-Plus 框架中的一个重要组成部分,可以大大简化基于 MyBatis 的数据访问层代码的编写。 BaseMapper…

【Python爬虫实战】抓取省市级城市常务会议内容

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一|统计学|干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项,参与研究经费10w、40w级横向 文…

Unity:Animation 三 Playable、ImportModel

目录​​​​​​​ 1. Playables API 1.1 Playable vs Animation 1.2 Advantages of using the Playables API 1.3 PlayableGraph Visualizer 2. Creating models outside of Unity 2.1 Preparing your model files for export 2.1.1 Scaling factors 2.1.2 优化模型文…

streamlit学习-如何修改css样式

streamlit学习-如何修改css样式 效果图代码(srv.py)运行streamlit默认的样式有时并不符合自己的要求。比如手机上的布局太浪费空间,我们希望一屏能放下所有的元素,本文演示了如何操作 效果图 代码(srv.py) import streamlit as st #1.31.1 import cv2 import numpy as np imp…

python词嵌入

一、词嵌入的概念 自然语言处理的突破在2023年震撼世界,chatgpt3出来,之后chatgpt4、Gemini、Claude3等出来,问答越来越智能,非常厉害,其中有个基础性的概念,计算机要如何理解语言,基础工作就在…