安全学习DAY14_JS信息打点

news2024/9/24 13:25:59

信息打点——前端JS框架

文章目录

  • 信息打点——前端JS框架
  • 小节概述-思维导图
  • JS安全概述
    • 什么是JS渗透测试?
    • 前后端差异
    • JS安全问题
    • 流行的Js框架
    • 如何判定JS开发应用?
  • 测试方法(JS文件的获取以及分析方法
    • 1、手工搜索分析
    • 2、半自动Burp分析
      • 插件介绍
    • 3、自动化项目分析
        • Jsfinder-从网站加载的JS中提取URL或者敏感数据
        • URLFinder-从网站加载的JS中提取URL或者敏感数据
        • JSINFO-SCAN-从表现中JS中提取URL或者敏感数据
        • FindSomething-从表现中JS中提取URL或者敏感数据
        • FUZZ爆破找到更多的js文件分析更多的信息
        • Packer-Fuzzer-针对JS框架开发打包器Webpack检测
  • 补充:

小节概述-思维导图

请添加图片描述

JS打点对于挖SRC、挖漏洞很有帮助,是比较常见的一种

本节内容:

1、JS前端架构-识别&分析

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

3、JS前端架构-打包器分析

4、JS前端架构-提取&FUZZ

本节解决的问题:

1、如何从表现中的JS提取价值信息

2、如何从地址中FUZZ提取未知的JS文件

3、如何从JS开放框架WebPack进行测试

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安全问题

源码泄漏

未授权访问=JS里面分析更多的URL访问确定接口路径

敏感key泄漏=JS文件中可能配置了接口信息(云应用,短信,邮件,数据库等)

API接口安全=(代码中加密提交参数传递,更多的URL路径)

流行的Js框架

Vue、NodeJS、jQuery、Angular等

如何判定JS开发应用?

  • 插件wappalyzer

  • 源程序代码简短

  • 引入多个js文件

  • 一般有/static/js/app.js等顺序的js文件

  • 一般cookie中有connect.sid

测试方法(JS文件的获取以及分析方法

1、手工搜索分析

手工搜索分析即在浏览器上审查元素,自己找网站加载的js文件,在其中分析

时间长,分析起来麻烦,但是精准

搜索关键字以获取价值信息:

相关可能会有价值的关键字:

src=

path=

method:“get”

http.get("

method:“post”

http.post("

$.ajax

http://service.httppost

http://service.httpget

2、半自动Burp分析

(时间稍短,分析不是很精准)

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

官方插件:JS Link Finder & JS Miner

第三方插件:HaE & Unexpected_information

插件加载器:jython-standalone-2.7.2

burp插件扫,找到泄露的敏感信息,电话号码,邮箱等,即低危漏洞

插件介绍

Unexpected_information:https://github.com/ScriptKid-Beta/Unexpected_information

用来标记请求包中的一些敏感信息、JS接口和一些特殊字段,

防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。

HaE:

https://github.com/gh0stkey/HaE

https://raw.githubusercontent.com/gh0stkey/HaE/gh-pages/Config.yml 规则下载地址

基于BurpSuite插件JavaAPI开发的请求高亮标记与信息提取的辅助型插件。该插件可以通过自定义正则的方式匹配响应报文或请求报文,可以自行决定符合该自定义正则匹配的相应请求是否需要高亮标记、信息提取。

3、自动化项目分析

时间短,分析不太精准

Jsfinder-从网站加载的JS中提取URL或者敏感数据

https://github.com/Threezh1/JSFinder

一款用作快速在网站的js文件中提取URL,子域名的工具

老牌的,用的多,但是功能一般

URLFinder-从网站加载的JS中提取URL或者敏感数据

https://github.com/pingc0y/URLFinder

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

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

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和域名,泄漏的证件号、手机号、邮箱等信息。

FUZZ爆破找到更多的js文件分析更多的信息

https://github.com/ffuf/ffuf

字典下载站点:

https://wordlists.assetnote.io

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

ffuf.exe -w 字典文件.txt -u URL/FUZZ -t 200

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

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

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

补充:

CMS

Discuz、WordPress、Ecshop、蝉知等

前端技术

HTML5、jquery、bootstrap、Vue等

开发语言

PHP、JAVA、Ruby、Python、C#,JS等

Web服务器

Apache、Nginx、IIS、lighttpd,Apache等

应用服务器:

Tomcat、Jboss、Weblogic、Websphere等

数据库类型:

Mysql、SqlServer、Oracle、Redis、MongoDB等

操作系统信息

Linux、windows等

应用服务信息:

FTP、SSH、RDP、SMB、SMTP、LDAP、Rsync等

CDN信息

帝联、Cloudflare、网宿、七牛云、阿里云等

WAF信息

创宇盾、宝塔、ModSecurity、玄武盾、OpenRASP等。

蜜罐信息:

HFish、TeaPot、T-Pot、Glastopf等

其他组件信息

fastjson、shiro、log4j、OA办公等

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实数信号的傅里叶级数研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

临床球囊扩张术中的压力精密控制解决方案

摘要:目前临床用气管导管套囊压力管理中缺乏操作简便和技术成熟的套囊压力自动控制仪器,现有压力测量和控制装置操作繁琐,存在充气增压和放气减压过程不及时和压力不稳定等问题。针对这些问题本文提出了套囊压力自动控制解决方案,…

ad+硬件每日学习十个知识点(20)23.7.31 (芯片和天线间的巴伦电路)

文章目录 1.什么是前端电路?2.什么是巴伦电路?3.巴伦电路的性能参数4.LC巴伦电路5.ADS是干什么的?6.HFSS是干什么的?7.ANSYS有限元软件8.常用的电路仿真软件都有什么?9.巴伦电路的复端阻抗LC10.微带巴伦(不…

RuntimeException:Duplicate class xxx found in modules xxx and xxx依赖冲突

在开发的过程中因为多个项目混杂,依赖冲突 在Terminal 中运行gradlew -q app:dependencies查看依赖树。 然后根据依赖树中的版本进行依赖排除,排除低版本的依赖或者冲突的依赖包 implementation (org.web3j:core:4.8.7-android){exclude group:org.bou…

LED光源均匀通用积分球

积分球又称光通球,是一个中空的完整球壳。内壁涂白色漫反射涂料,并且球内壁不同点漫射均衡。采用积分球测量光通量时,能够确保测量结果的可靠性,其可降低并过滤因光线形状、发散角度以及检测部件中不同位置相应度差异引起的测量误…

企业既要用u盘又要防止u盘泄密怎么办?

企业在日常生产生活过程中,使用u盘交换数据是最企业最常用也是最便携的方式,但是在使用u盘的同时,也给企业的数据保密工作带来了很大的挑战,往往很多情况下企业的是通过u盘进行数据泄漏的。很多企业采用一刀切的方式,直…

idea数据库快速上手-库操作与表结构和数据操作

引言 对数据库的操作无非就是执行SQL语句,要想熟练操作数据库,就要熟练运用SQL语句。 一,数据库操作 展示当前服务器内的数据库 -- 展示服务器内的数据库 show databases; show schemas; 执行结果: 创建数据库: --…

Matlab对TMS320F28335编程-新建工程闪烁led灯

前言 工具:Matlab2022b Matlab对接C2000插件,下载连接如下 Embedded Coder Support Package for Texas Instruments C2000 Processors - File Exchange - MATLAB Central 在Matlab中加载此插件后,按照要求一步一步的进行就可以&#xff0c…

JVM 学习—— 类加载机制

前言 在上一篇文章中,荔枝梳理了有关Java中JVM体系架构的相关知识,其中涉及到的有关Java类加载机制的相关知识并没有过多描述。那么在这篇文章中,荔枝会详细梳理一下有关JVM的类加载机制和双亲委派模型的知识,希望能够帮助到有需要…

负数的二进制转换成十进制

对于一个k位的二进制正数,其表示成十进制的结果是: pos[i]表示:这个正数的二进制形式的第i位是1。 i从最低位(第0位)开始,一直到k-1位。有符号数中,正数的第k-1为0,负数的第k-1位为…

ASP.NET Core学习路线图

说明 1. 先决条件 - [C#](https://www.pluralsight.com/paths/csharp) - [Entity Framework](https://www.pluralsight.com/search?qentity%20framework%20core) - [ASP.NET Core](https://www.pluralsight.com/search?qasp.net%20core) - SQL基础知识 2. 通用开发技能 -…

UG\NX二次开发 属性值连接到表达式

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 简介: 利用表达式参数驱动模型形状实现参数化建模,同时将表达式关联到部件属性中,实现自动更新属性值。这将为建模过程带来更大的灵活性和可扩展性。通过将属性值连接到表达式,可以动态地…

数据规约策略

有很多概念平时一直在说,但是具体的应用场景却一直不明确,这会导致我们在实际应用过程中对应该使用的方法不够明确,在此对常用的几种数据挖掘方法使用场景进行分类和整合。 数据降维 为什么要降维 数据稀疏,维度高高维数据采用…

资讯|巴西ANATEL扩展智能电视盒认证要求,ANTATEL认证

2023年7月13日,巴西国家电信局(ANATEL)发布了2023年7月5日的第9281号法案,规定了智能电视盒符合性评估的新技术要求。 国家电信局承认有必要扩大对该设备的现有认证要求,包括在合格评定程序中对可能侵犯音像版权的功能进行审查。这一调整是为了应对越来越多地利用电视盒非法获…

51单片机(普中HC6800-EM3 V3.0)实验例程软件分析 实验二 LED闪烁

目录 前言 一、原理图及知识点介绍 二、代码分析 知识点四:delay(u16 i)这个函数为什么i1时,大约延时10us? 前言 已经是第二个实验了,上一个实验是点亮第一个LED灯,这个实验是LED的闪烁。 一、原理图及知识点介绍…

最细致讲解yolov8模型推理完整代码--(前处理,后处理)

研究yolov8时,一直苦寻不到Yolov8完整的模型推理代码演示,大部分人都是基于Yolo已经封装好的函数调用,这个网上教程很多,本文就不赘述这方面的内容了,接下来将细致全面的讲解yolov8模型推理代码,也就是yolo…

【复习29-30天】【我们一起60天准备考研算法面试(大全)-第三十二天 32/60】

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)   文章字体风格: 红色文字表示&#…

对象拷贝初识mapstruct及与lombok的配置

项目中用到对象拷贝,做一个修改历史记录保存的功能,使用Spring AOP自定义注解实现修改记录的保存,历史记录表和业务表的字段差不多,保存的时候需要用到对象拷贝。下面是一些对象拷贝的工具,前3个都用过,这次…

某银行软件测试笔试题

(时间90分钟,满分100分) 考试要求:计算机相关专业试题 一、填空题(每空1分,共10分) 1. ______验证___是保证软件正确实现特定功能的一系列活动和过程。 2. 按开发阶段分,软件测试可…

HTTPS-RSA握手

RSA握手过程 HTTPS采用了公钥加密和对称加密结合的方式进行数据加密和解密 RSA握手是HTTPS连接建立过程中的一个关键步骤,用于确保通信双方的身份验证和生成对称加密所需的密钥 通过RSA握手过程,客户端和服务器可以协商出一个共享的对称密钥,…