信息打点web篇---前端js打点

前言

欢迎来到我的博客

个人主页:北岭敲键盘的荒漠猫-CSDN博客

本文主要整理前端js代码的打点思路

本文只为学习安全使用,切勿用于非法用途。

一切未授权的渗透行为都是违法的。

前端js打点概念与目的

javascript文件属于前端语言,也就是说他的代码都是在前端可见的。通过观察js文件,我们可以从中获取一些网址,接口地址,源码,加密逻辑等信息。

js打点主要面向于核心代码是js写的站点。这类站点的用户信息处理大部分用的js。从js中可以获取到更多的信息。

判断目标网站是否为js网站

插件wappalyzer

源程序代码简短

引入多个js文件

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

一般cookie中有connect.sid

手工js打点

注释信息泄露

我们查看我们响应的数据包即可。

 用开发者工具进行搜索信息。

这里注意我们可以看到他的注释也是一模一样的反馈给我们的。

这也就是说,如果用一些源码,源码会有版权,而很有可能就会写在这些文件里。

不禁是源码,QQ,甚至一些接口,都会直接的写!

而我们可以根据QQ来找作者进而找源码,或者直接拿源码,判断cms,搜cms的漏洞。

从黑盒转化为白盒。

这个就是我找的一个,看他的代码末端。

再如下面的这个:

 不只是这些,还有一个我搜过的网站是把自己的接口整理到里面了。包括了一些支付接口,但是找不到那个站点了。

搜索正文价值信息

运用搜索的功能进行搜索关键字

关键字:
src=
path=
method:"get"
http.get("
method:"post"
http.post("
$.ajax
http://service.httppost
http://service.httpget

利用这些连接关键词可以找一些价值信息。

 说不定就找到了一个本来不应该能直接访问的未授权访问漏洞。

半自动工具打点

burp半自动

burp里面有官方插件js link finder这些搜集js的插件。

插件也比较简单,我就不多赘述了。

因为我习惯使用yakit,所以这里我介绍yakit帮助信息收集的插件。

yakit半自动

使用js-api插件。

 直接输入目标地址跑就行了。

 根据js返回链接。

我们也可以直接输入网址自己看js源码。

确实抓取了重要信息。

使用jsfind插件

用法一样用。

全自动打点

不演示了,跟着命令行输入就行。

ulrfind插件打点

下载地址:GitHub - pingc0y/URLFinder: 一款快速、全面、易用的页面信息提取工具,可快速发现和提取页面中的JS、URL和敏感信息。

使用方法:

显示全部状态码
URLFinder.exe -u http://www.baidu.com -s all -m 3

显示200和403状态码
URLFinder.exe -u http://www.baidu.com -s 200,403 -m 3


结果分开保存
导出全部
URLFinder.exe -s all -m 3 -f url.txt -o .
只导出html
URLFinder.exe -s all -m 3 -f url.txt -o res.html

结果统一保存
URLFinder.exe -s all -m 3 -ff url.txt -o .

-a  自定义user-agent请求头  
-b  自定义baseurl路径  
-c  请求添加cookie  
-d  指定获取的域名,支持正则表达式
-f  批量url抓取,需指定url文本路径  
-ff 与-f区别:全部抓取的数据,视为同一个url的结果来处理(只打印一份结果 | 只会输出一份结果) 
-h  帮助信息   
-i  加载yaml配置文件,可自定义请求头、抓取规则等(不存在时,会在当前目录创建一个默认yaml配置文件)  
-m  抓取模式:
        1  正常抓取(默认)
        2  深入抓取 (URL深入一层 JS深入三层 防止抓偏)
        3  安全深入抓取(过滤delete,remove等敏感路由) 
-max 最大抓取数
-o  结果导出到csv、json、html文件,需指定导出文件目录(.代表当前目录)
-s  显示指定状态码,all为显示全部  
-t  设置线程数(默认50)
-time 设置超时时间(默认5,单位秒)
-u  目标URL  
-x  设置代理,格式: http://username:password@127.0.0.1:8877
-z  提取所有目录对404链接进行fuzz(只对主域名下的链接生效,需要与 -s 一起使用)  
        1  目录递减fuzz  
        2  2级目录组合fuzz
        3  3级目录组合fuzz(适合少量链接使用)

插件打点

FindSomething – 下载 🦊 Firefox 扩展(zh-CN)

挖掘更多js文件

我们访问js文件的时候,不会一次性访问所有的js文件。

就比如说,我们登录后跟登录前就会多访问一些js。

但是js是可以直接访问的,那么我们就可以fuzz直接爆破js文件。

ffuf-FUZZ爆破

下载地址:

GitHub - ffuf/ffuf: Fast web fuzzer written in Go

用法:(更为详细的去看官方文档)
ffuf.exe -w 字典 -u 网址/FUZZ -t 线程数

 fuzz是告诉程序在fuzz处进行爆破。

webpack打包器信息打点

webpack打包器简介

他是javascript代码打包器,用于打包javascript代码,所以,网站如果是使用了webpack打包,那么我们就能通过这种方法进行打点。

但是网站没有使用webpack,那么就不能使用这种方法。

使用工具

Packer-Fuzzer工具:

GitHub - rtcatc/Packer-Fuzzer: Packer Fuzzer is a fast and efficient scanner for security detection of websites constructed by javascript module bundler such as Webpack.
 

安装的时候记得安装一下依赖环境。

pip3 install -r requirements.txt

 使用指令:

PackerFuzzer.py -u 网址

结果会返回在repo的一个网页中。

总结

挖掘目标

1.从返回的已知js中提取信息。

2.用fuzz爆破出未知的js信息

3.从框架中提取js信息。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python】已解决:ModuleNotFoundError: No module named ‘cv2’

文章目录 一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项 已解决:ModuleNotFoundError: No module named ‘cv2’ 一、分析问题背景 在Python编程中,当你尝试导入一个不存在的模块时,会遇到ModuleNotFou…

权限维持Linux---监控功能Strace后门命令自定义Alias后门

免责声明:本文仅做技术交流与学习... 目录 监控功能Strace后门 1、记录 sshd 明文 监控 筛选查看 2、记录sshd私钥 命令自定义Alias后门 1、简单粗鲁实现反弹: 靶机替换命令 攻击机监听上线 2.升级(让命令正常) 将反弹命令进行base64编码 替换alias命令 …

【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用

系列篇章💥 No.文章1【Qwen部署实战】探索Qwen-7B-Chat:阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用4【Q…

蓝牙资讯|苹果Apple Pencil新专利:用笔套扩展传感器 / 续航等模块化方案

根据美国商标和专利局最新公示的清单,苹果公司获得了一项 Apple Pencil 的专利,探索了模块化设计方案,用户未来可以根据自身需求或者使用场景,随心更换 Pencil 的模块,达到不同的效果。 苹果在专利中表示笔套内置传感器…

GNU/Linux - Kconfig Language - 1

Introduction 配置数据库是以树形结构组织的配置选项集合: The configuration database is a collection of configuration options organized in a tree structure: - Code maturity level options | - Prompt for development and/or incomplete code/drivers …

hibernate与jpa学习

jpa是一个规范,hibernate是jpa的实现,是一种框架。 hibernate: ORM框架/持久层框架(Object Relational Mapping) 它是是一个轻量级开放源代码的对象关系映射框架,hibernate可以自动生成SQL语句&#xff0…

js 使用 lodash-es 检测某个值是否是函数

import { isFunction } from lodash-eslet isA isFunction(() > {}) console.log(isA) //true https://www.lodashjs.com/docs/lodash.isFunction#_isfunctionvalue https://lodash.com/docs/4.17.15#isFunction 人工智能学习网站 https://chat.xutongbao.top

简单的电路指示锂离子电池的健康状况

锂离子电池对不良处理很敏感。当我们将电池充电至低于制造商定义的裕量时,可能会发生火灾、爆炸和其他危险情况。 锂离子电池在正常使用的过程中,其内部进行电能与化学能相互转化的化学正反应。但在某些条件下,如对其过充电、过放电或过电流…

复杂流分类

拓扑图 配置 配置ACL 配置流分类、流行为、流策略 在接口应用 sysname AR1 # acl number 2000 rule 5 permit source 10.1.1.1 0 acl number 2001 rule 5 permit source 10.1.1.2 0 acl number 2002 rule 5 permit source 10.1.1.3 0 # traffic classifier EF operat…

CGLib动态代理技术

基于CGLib的动态代理机制,ProxyFactoryy无需再像JDK动态代理那样实现一个interface,实际情况下可能这个interface并不存在,只需要实现另外一个接口MethodInterceptor即可 package com.hmdp.service.尚硅谷的代理模式3; //CGlib代理import …

FlinkSQL 开发经验分享

作者:汤包 最近做了几个实时数据开发需求,也不可避免地在使用 Flink 的过程中遇到了一些问题,比如数据倾斜导致的反压、interval join、开窗导致的水位线失效等问题,通过思考并解决这些问题,加深了我对 Flink 原理与机…

Android 开发中 C++ 和Java 日志调试

在 C 中添加堆栈日志 先在 Android.bp 中 添加 ‘libutilscallstack’ shared_libs:["liblog"," libutilscallstack"]在想要打印堆栈的代码中添加 #include <utils/CallStack.h> using android::CallStack;// 在函数中添加 int VisualizerLib_Crea…

制作一个动态库

1. 准备工作 # 目录结构 add.c div.c mult.c sub.c -> 算法的源文件, 函数声明在头文件 head.h # main.c中是对接口的测试程序, 制作库的时候不需要将 main.c 算进去 . ├── add.c ├── div.c ├── include │ └── head.h ├── main.c ├── mult.c └── s…

Day04-jenkins-docker

Day04-jenkins-docker 9. 案例06: 基于docker的案例实现静态代码9.1 整体流程9.2 步骤与环境1) 步骤2) 环境 9.3 详细步骤1&#xff09;代码准备2&#xff09;书写dockerfile3&#xff09;准备私有仓库4&#xff09;创建jenkins任务5&#xff09;web节点上启动对应的docker容器…

WPF真入门教程34--爆肝了【仓库管理系统】

1、项目介绍 本项目是一个基于C#WPF实现的仓库管理系统&#xff0c;系统规模较小&#xff0c;适合入门级的项目练练手&#xff0c;但项目还是具有较高的学习价值&#xff0c;它采用mvvmlight框架&#xff0c;EF框架&#xff0c;WPF前端等技术构成。对于学习来说&#xff0c;可…

Ubuntu设置nacos开机以单机模式自启动

首先&#xff0c;需要安装jdk Ubuntu 安装JDK 创建Systemd服务单元文件 sudo vim /etc/systemd/system/nacos.service按i进入编辑模式&#xff0c;写入下面信息 [Unit] Descriptionnacos server Afternetwork.target[Service] Typeforking Environment"JAVA_HOME/opt/j…

树莓派0 2W重启后突然没有声音

树莓派0 2W重启后突然没有声音。 最近在使用该板卡。重启后突然出现了显示器不能显示界面的情况&#xff0c;接着用putty的ssh方式连接该板卡&#xff0c;能连上。使用vnc方式连接该板卡&#xff0c;也能连上。后来通过修改/boot/config.txt文件&#xff0c;能在显示器上显示界…

AI大模型深度学习:理论与应用全方位解析

背景 在当前技术环境下&#xff0c;AI大模型学习不仅要求研究者具备深厚的数学基础和编程能力&#xff0c;还需要对特定领域的业务场景有深入的了解。通过不断优化模型结构和算法&#xff0c;AI大模型学习能够不断提升模型的准确性和效率&#xff0c;为人类生活和工作带来更多…

用一百场线下讲座科普充电桩 能效电气做到了

在新能源汽车产业蓬勃发展的今天,充电桩作为产业链的重要环节,其建设与发展成为推动行业进步的关键。在这一背景下,能效电气凭借其卓越的技术实力和前瞻性的市场布局,成为了新能源充电桩行业的佼佼者。 为了进一步推动新能源产业的发展,普及充电桩知识,能效电气精心策划并举办…

LangChain的基本构成、组件与典型场景

【图书推荐】《ChatGLM3大模型本地化部署、应用开发与微调》-CSDN博客 在人工智能的持续演进中&#xff0c;语言模型&#xff0c;尤其是大型语言模型&#xff08;LLM&#xff09;&#xff0c;例如备受瞩目的ChatGPT&#xff0c;已经稳固地占据了科技前沿的核心地位。这些模型不…