简易的JS逆向解码

news2024/12/23 16:59:07

在实战的漏洞挖掘中阅读JS有以下几个作用:

1.JS中存在插件名字,根据插件找到相应的漏洞直接使用

通过控制台大致阅读网站JS代码发现此网页引用了北京的一家公司的代码,并且使用了h-net的框架,接下来我们可以百度这家公司或者是这个框架 曾经爆出的一些漏洞来尝试拿下这个站。

图片

2.JS中还存在一些URL链接,根据链接找到相应的页面进一步测试和利用
那京东网站为例,假如网站上的所有功能点都测完了,但是发现没有漏洞,在你毫无头绪的时候可以打开控制台CTRL shift + f 全局搜索一下,可以看到有很多网站的更多路径,我们可以继续顺着这个路径尝试找到它的其他漏洞。

图片

3.JS中存在一些子域名,可以直接访问子域名
假如我们现在攻击的目标是jd.com,我们可以在全局搜索中查找泄露的子域名,帮助我们获得其他相关的信息

图片

4.JS中敏感信息泄露给用户
 

图片


一些开发喜欢在备注里写一些敏感信息,后来忘记删除,比如在这个备注里留有京东员工的名字,在之后需要爆破密码时,我们可以直接爆破他的密码。

5.使用JSfind工具获取 JS中泄露的URL链接和域名

图片

游览器控制台使用技巧和方式

JS断点调试
假如我们在测试过程中发现可疑函数时,可以打开调试器 ctrl shift +f全局搜索js文件中出现这函数的地方,辨别出定义这个函数的语句点击左边的“行数”进行断点调试,让网站从上向下运行到我们打了断点的地方停止运行,以便我们了解函数在我们刷新页面时运行情况;按F11可以运行到下一个语句结束,按ctrl+F11是退回到上一个语句。(谷歌游览器)
例如:在一个后台登陆页面,我们随便输入点击登录后在调试器的网络里查看POST请求时发现了可疑函数keydata

图片

后来利用全局搜索发现这个函数是将我们输入的用户名以及加密后的密码(我们输入的)存储到这个函数中,明白这个之后,在之后需要爆破密码时,我们就可以逆向破解它的密码加密方法。

图片

Python和JS结合解决加密难题

碰到这种登录页面我们第一想到的是弱密码,无效后会尝试抓包爆破

图片

但是当我们抓包后发现密码是经过加密后的,我们没有加密后的字典,更何况我们也不清楚它的加密方法

图片

所以这里我们就要使用python和JS结合逆向解码爆破
 

图片


python指的是我们利用一个有固定模板的py文件,其中:
1.js指的是当我们运行1.py文件时,它会先运行1.js
md5是指你要破解的密码在网站中的加密函数
md5后面填的是你想要破解的密码
JS指的是我们在网站中全局搜索分析出的与加密相关的函数方法全都复制到1.js文件中配合1.py使用

就上面的例子实战一下

分析js代码后发现我们输入的密码被hex_md5函数进行加密,接着我们寻找这个加密函数

图片

将函数添加运行后显示报错,提示缺少对象,说明它里面还调用了其他函数,继续搜索添加到1.js中运行1.py

图片

比较幸运,这个站的加密方法,他直接就是个md5.js文件,运行结果与我们抓包得到的一致
 

图片

图片

现在将现有的字典进行加密破解

图片

在1.py的基础上稍加改造;
passwd.txt文件就是咱们要加密的字典;
绿色标记的地方是指当我们遇到加密过程中用到在短期内不会失效的随机数组,将数组添加到绿色箭头的空内,进行破解;
admin指的是我们要爆破的用户名。

图片

没看够~?欢迎关注!

免费领取安全学习资料包!

渗透工具

技术文档、书籍

 

面试题

帮助你在面试中脱颖而出

视频

基础到进阶

环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等

 

应急响应笔记

学习路线

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

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

相关文章

基于C/C++的rapidxml加载xml大文件 - 上部分翻译

RAPIDXML手册 版本 1.13 版权所有 (C) 2006, 2009 Marcin Kalicinski有关许可证信息,请参阅随附的文件许可证 .txt。 目录 1. 什么是 RapidXml? 1.1 依赖性和兼容性1.2 字符类型和编码1.3 错误处理1.4 内存分配1.5 …

HTML---基础

文章目录 目录 文章目录 前言 一.HTML概述 二.HTML相关概念 HTML作用域 HTML标签 HTML转译字符 总结 前言 一.HTML概述 HTML(超文本标记语言)是一种用于创建网络页面的标记语言。它以标记的形式编写,该标记描述了文档的结构和内容。HTML…

黑苹果之网卡篇

今天主要来聊一下黑苹果如何选择网卡 黑苹果对硬件的要求比较局限,可以用的无线网卡也比较少,而且很多也已经涨价,这里就结合自己的使用经验,简单分享几款比较好用的黑苹果无线网卡方案。 一、BCM94360系列 如果想要稳定、省心&am…

【K8S 系列】认识k8s、k8s架构

一、什么是k8s? Kubernetes 简称 k8s,是支持云原生部署的一个平台,k8s 本质上就是用来简化微服务的开发和部署的,用于自动化部署、扩展和管理容器化应用的开源容器编排技术。对于传统的docker其实也提供了容器编排的技术docker-compose&…

gdb本地调试版本移植至ARM-Linux系统

移植ncurses库 本文使用的ncurses版本为ncurses-5.9.tar.gz 下载地址:https://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz 1. 将ncurses压缩包拷贝至Linux主机或使用wget命令下载并解压 tar-zxvf ncurses-5.9.tar.gz 2. 解压后进入到ncurses-5.9目录…

【人工智能Ⅰ】实验8:DBSCAN聚类实验

实验8 DBSCAN聚类实验 一、实验目的 学习DBSCAN算法基本原理,掌握算法针对不同形式数据如何进行模型输入,并结合可视化工具对最终聚类结果开展分析。 二、实验内容 1:使用DBSCAN算法对iris数据集进行聚类算法应用。 2:使用DBS…

论文阅读——GroupViT

GroupViT: Semantic Segmentation Emerges from Text Supervision 一、思想 把Transformer层分为多个组阶段grouping stages,每个stage通过自注意力机制学习一组tokens,然后使用学习到的组tokens通过分组模块Grouping Block融合相似的图片tokens。通过这…

CSPNet: A New Backbone that can Enhance Learning Capability of CNN(2019)

文章目录 -Abstract1 Introduction2 Related workformer work 3 Method3.1 Cross Stage Partial Network3.2 Exact Fusion Model 4 Experiments5 Conclusion 原文链接 源代码 - 梯度信息重用(有别于冗余的梯度信息)可以减少计算量和内存占用提高效率&am…

二、结合各种图形库实现各种demo(11-20)

demo地址https://bidding-m.gitee.io/maptalks-test-next/#/ 11、isects 12、right click menu 13、infoWindow 14、image marker 15、multi image marker 16、vector-marker-fill 17、line-gradient-arrow 18、rotated-marker-with-line 19、smoothness-line 20、polygon 欢迎…

“集爱三湘 传递温情”旺旺送温暖公益活动在开福东风路街道办举行

(通讯员:吴康)用真情传递爱的力量,用行动践行善的约定。12月12日上午,湖南大旺食品有限公司长沙分公司联合湖南省朝阳公益基金会在开福区东风路街道办举行“集爱三湘 传递温情”旺旺送温暖活动,旨在扎实做好…

链表基础知识(一、单链表)

一、链表表示和实现 顺序表的问题及思考 问题: 1. 中间/头部的插入删除,时间复杂度为O(N) 2. 增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。 3. 增容一般是呈2倍的增长,势必会有一定的空间浪费。例如当…

Live800:客服5大场景高满意度话术有这些

客服作为企业与消费者之间的桥梁,其服务质量往往直接影响到消费者对企业的印象和忠诚度。因此,提高客服满意度一直是企业所关注的重要问题。那么,客服在哪些场景下能够让消费者感到满意呢?今天,我们就来探讨一下客服5大…

MySQL笔记-第11章_数据处理之增删改

视频链接:【MySQL数据库入门到大牛,mysql安装到优化,百科全书级,全网天花板】 文章目录 第11章_数据处理之增删改1. 插入数据1.1 实际问题1.2 方式1:VALUES的方式添加1.3 方式2:将查询结果插入到表中 2. 更…

【Web】一张动图告诉你,输入网址之后,发生了什么事情?

让我们一步一步地来看这个过程。 步骤1: 用户在浏览器中输入一个URL(比如www.csdn.net),然后按下回车键。首先,我们需要将这个URL转换成一个IP地址。通常,这个映射关系会被存储在缓存中,因此浏…

Linux基本操作指令

哈喽小伙伴们,从这篇文章开始,在学习数据结构的同时,我们开启一个新的篇章——Linux操作系统的学习,这将会是又一个新的开始,希望小伙伴们能够认真细心,不要掉队哦。 目录 一.什么是Linux 二.为什么要学习…

BeautifulSoup学习

前期准备&#xff1a; pip install bs4 pip install lxml bs解析器 从上面的表格可以看出&#xff0c;lxml解析器可以解析HTML和XML文档&#xff0c;并且速度快&#xff0c;容错能力强&#xff0c;所有推荐使用它。 节点选择器 获取名称 soup BeautifulSoup(<b class&…

mysql:不要在索引列进行数学运算和函数运算

不要在索引列进行数学运算和函数运算。这是因为数学运算和函数运算会改变索引列的值&#xff0c;导致索引失效。 如果需要进行计算或函数处理&#xff0c;最好将数据取出并在应用程序中进行处理。 下面举个对照的例子&#xff1a; 1&#xff09;看语句explain select * from …

Embedding压缩之基于二进制码的Hash Embedding

推荐系统中&#xff0c;ID类特征的表示学习&#xff08;embedding learning&#xff09;是深度学习模型成功的关键&#xff0c;因为这些embedding参数占据模型的大部分体积。这些模型标准的做法是为每一个ID特征分配一个unique embedding vectors&#xff0c;但这也导致存储emb…

Openlayers 加载 Geoserver 图层以及查询条件过滤

Openlayers 加载 Geoserver 图层以及查询条件过滤 查询条件过滤核心代码完整代码&#xff1a;在线示例 Openlayers 加载 Geoserver 图层&#xff0c;在实际项目中常常会遇到&#xff0c;需要对图层进行过滤&#xff0c;这里介绍一下过滤方法。 其实就是利用 Geoserver 的 CQL_…

2024SIA上海国际轴承工业展览会 ▎参行业盛会 展轴研风采

2024SIA上海国际轴承工业展览会 内容&#xff1a;1、轴承制品展区&#xff1a;2、轴承设备展区&#xff1a;3、轴承零件展区&#xff1a; 国际轴承展丨轴承工业展丨轴承装备展丨上海轴承展丨上海轴承工业展丨上海轴承装备展 2024上海国际轴承工业展览会将会于2024年7月24-26日…