自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 收藏
  • 关注

原创 java JNDI高版本绕过 && 工具介绍 && 自动化bypass

第二个就是本地的JNDI链接 这个需要配合spring 或者 tomcat,Groovy(这个是java动态脚本的运行依赖)所有总结一下 就是远程利用不了 就是利用本地第三方组件的链或者是反序列化链进行利用。第三个就是本地的反序列化链 实际上这个就是看对方的jdk的包内的依赖进行利用。没有结果 这个说明当前的利用环境必须是有第三方依赖项目进行支持的。或者是使用RMi的序列化 这个需要相应的链条对方需要有。这个的其实就是上面的本地reference利用。本地的项目的cb是1.83的。

2025-06-30 23:07:06 542

原创 Java反序列化漏洞 & 原生类 & 第三方项目依赖

签证问题就是设计到 shiro的key 什么是key啊 这个就是记住我功能进行身份签证的一个证明 这个key是一个用户特有的。对于这样的jar文件我们其实是可以进行反编译然后看源码的 当然有骚操作 : 就是改后缀为 .zip。然后本地的链这个 cb1.8是存在的 这个java链的使用主要看对方的环境有没有相应的。先进行判断Shiro组件的使用一般就是remberMe这个功能的单独http头。JNDI链的生成也是可以使用 java-chain进行生成的。这个点说明当前的数据是进行base64加密的。

2025-06-26 04:00:00 801

原创 爬虫入门练习(文字数据的爬取)

<title>示例网页</title>这是第一段文字</p><p>这是第二段文字,包含一个<a href="https://example.com">链接</a>项目一</li><li>项目二</li><li>项目三

2025-06-22 21:00:41 950

原创 java专题漏洞总结 + 靶场练习

spel语句 : 就是spring中进行执行一些调用对象的语句如对象的调用和查询等,但是如果语句的参数是可控的就会导致 注入。这个漏洞利用还是比较刻苦的就是这个需要对模板进行操作 众所周知 只要admin才有这样的权限 所以这个漏洞可以用来提权。这个模板注入类似于 对前端的页面进行使用参数跳转页面的操作 (比如切换页面的语言等)我们使用对方的页面下看这个接口是非常不方便的 这个就需要进行转接(apifox)漏洞和配置不当的区别就是 漏洞是有可控制的参数的并且漏洞受版本的控制。

2025-06-22 20:01:40 528

原创 SpringCloudGateway(spel)漏洞复现 && Spring + Swagger 接口泄露问题

什么是 Swagger?它的作用就是 对项目进行提前的测试运行到web中,这个api主要的作用就是进行测试项目各个页面的它在开发的作用就是进行api接口的测试 api在正常情况下是隐藏的 但是这个依赖项是可以对其进行测试的 因为api有很多的接口 使用这个可以更简单的进行测试这个功能类似于 :java自带的自我检测接口(接口就是指有参数能让web页面变化的东西)例如这个这些是api接口的参数 我们可以通过操作参数来测试其安全性。

2025-06-22 11:03:44 451

原创 Java安全-常规漏洞问题(SQL注入,XXE,SSRF,RCE)

先了解一下sql注入的修复形式和漏洞成因 :成因说白了就是使用字符串拼接的形式进行查询数据库才导致数据的恶意插入 修复形式就是把字符串拼接的形式改为预编译(预编译分为函数的调用和形式的调用)如果只是调用了函数那还是会造成sql问题。所以一些如order by 1 如果使用 #{} 1会被转为字符串 但是 by后面跟的必须是int数字 所以会报错 这样的话程序员就只能使用 ${} 进行字符串的拼接 所以就能使用在这个点上进行注入。其他的就是寻找 控制器有没有相应的配置。

2025-06-18 22:39:18 611

原创 SpringBoot-Actuator依赖项的作用配置 && Heapdump堆栈信息泄露

Actuator这个依赖是进行应用监控的主要是监控应用的健康,相关类运行情况,环境等 同时这个还有图形化的项目。

2025-06-17 20:03:42 406

原创 SpringBoot入门 && springboot模版注入问题

前期基础学习一直使用的Servelet,现在用Springboot才发现这个是多么的方便,为什么现在主流的是Springboot。框架和组件不同的就是框架是一个系统的,内置有不同的语法 而组件只是系统功能的一种,为了的目的是优化单功能方面的方便和安全性。模版注入漏洞,前端的模版如果有个可控的输入,那就会导致用户输入的恶意的语法会被镶嵌到模版中去,从而造成危险。那这个模版注入的作用点就是后台进行提权使用的,因为无可控参数的利用。这个和上个不同的是 没法使用可控变量从后端操作这个前端的模版。

2025-06-15 22:28:02 457

原创 java常见第三方依赖以及相关安全问题

它的主要功能就是,进行日志的记录,主要的作用就是用于调试服务开启时出现的一些错误问题。

2025-06-14 22:36:44 633 1

原创 JNDI注入入门

JavaNamingand)他是 java 命名个目录的接口,设计的本意是为了让开发者访问各种资源 , 他支持的网络协议 :DNS.RMI,LDAP但是后来 这些 协议被恶意的加载 一下RCE代码的java类文件,导致了 JNDI注入问题这个就是Jndi注入最经典的代码恶意构造一下但是当我们运行的时候 命令执行失败 原因可能是 Jdk版本的问题不同JDK版本 使用的注入协议是不同的。

2025-06-14 19:27:32 619

原创 FastJson的反序列化问题入门

他是一个java的依赖库主要是用来进行处理web的json数据,比如就类似于序列化和反序列化。

2025-06-10 15:37:00 389

原创 JAVA反序列化应用 : URLDNS案例

如果就是对方的程序本身是没有可利用的函数如重写的 object() , ToString 的时候我们就需要去深究对方的链。然后这个链就成了 就是可以使用 利用反序列化之后的类执行重写的readobject 这个函数进行DNS解析。找到 putVal 是这个put函数进行返回的 hash这个函数是常用的我们看看能不能找到更多的链。有可利用的 但是我们还需要进行分析这个链的底层没有嘛如命令执行之类的函数可以利用。这个时候我们反序列化的对象 就是我们 new 的这个 Hashmap的对象。

2025-06-08 21:35:06 1020

原创 web攻防之SSTI 注入漏洞

ssti的中文翻译 : 服务端的模版的注入模版引擎 :前端的用于装饰优化html的模版 最简单的就是在腾讯会议中的聊天功能框架 : 这个是一套独立存在的逻辑 如TP他是一个区别于php语法的后端逻辑(框架的作用就是 优化后端的功能和安全性)两者的共性就是为了省时怎么发现对方的web套用了模版引擎主要是看页面的规律性和是不是非常的板正,大部分的web都是套用的模版 手写的工程量是非常大的。

2025-06-03 23:19:32 1038

原创 jsrpc进阶模式 && 秒杀js前端逆向问题 && burp联动进行爆破

对于这样的js保护的加密我们进行bp的思路 :1、直接把字典换为加密之后的 然后使用加密之后的字典进行 bp 2、使用加密逻辑的接口(auto decode插件的功能) 然后我们只需使用明文字典进行bp即可。然后param 是 8888 端口进行转发的数据 就会显示加解密(这边是实现的加密) 然后接口获得加密数据之后 就会对我们的数据包的参数进行 加密为加密的数据 这样我们就能单凭借 明文字典就能实现bp。然后我们根据这个发起程序进行调试堆栈找加密的地方。但是这个mt的这个肯定是不行的因为是动态的。

2025-05-28 18:28:45 2577 1

原创 js利用的优秀项目 v_jstools(用于逆向分析)&& autoDecoder(用于burp的数据包算法还原工具) && jsrpc(远程加载浏览器js环境的工具)

登录抓包发现一登录的数据包不是账号密码分开的而是一长串的加密 这个和之前做的 那个 param 参数传递 passwd的项目非常相似 所以我们猜测这个 加密的其实就是 json数据。原始的js逆向 就是进行扣代码,补环境 但是有时候会出现一个问题 就是 嵌套引用 环境越补越多 这个 rpc 就是远程的调用 进行远程加载浏览器的控制台 然后使用浏览器中的加载的环境。常用在分析js的算法的时候的一个非常好用的工具 他可以根据程序的循序和加密的数据帮你分析 js加密算法的位置。控制台出现这个表示插件在启动。

2025-05-27 21:24:37 1555

原创 代码混淆技术的还原案例

为什么ast树可以很好的分析 这个 ob混淆呢 因为混淆的原理就是就是把代码中我们能看懂的内容变为我们看不懂的内容 就是把内容混淆了 还有一些函数的名字等。这个eval可能比较不同 就是他的这个这个里面还有一个函数 其实里面这个就是解密数据的 然后 eval 解密回显到前端。第三个块就是里面的内容 也是一个块 其实 = 这个也是在这个ast树有自己的结构类型的 (他也是标识符)但是有个就是 ob 混淆的延伸 v代号的混淆 这个只是国内小作坊的二开。是不是直接拿下了 发现这个就是页面显示的内容。

2025-05-24 18:03:13 1190

原创 Sign签证绕过

Sign是指一种类似于token的东西 他的出现主要是保证数据的完整性,防篡改 就是一般的逻辑是 sign的加密的值和你输入的数据是相连的(比如sign的加密是使用输入的数据的前2位数字配合SHA1 等这样的)绕过 :碰运气可以置空 最常见的就是找到sign的算法逻辑然后进行反推 (因为这个签证是需要在前端验证的 所以前端有他的生成逻辑)

2025-05-21 23:23:46 1561

原创 hook原理和篡改猴编写hook脚本

这个就是简单的hook原理 当然如果是web上 我们的函数重构实际上就是 篡改猴脚本在 控制台上进行的操作。发现之后就让ai帮我们写脚本 (上面这个需要绕过 2个地方 1、 debuger函数 2、连续的时间)hook是常用于js反编译的技术;翻译就是钩子,他的原理就是劫持js的函数然后进行篡改。先判断debugger函数定义的位置(一般hook 的方法就是使用 函数重构)这个是浏览器当前的宽高 我们可以使用hook技术让 这个的输出是固定的。一段简单的js代码 :这个代码是顺序执行的。

2025-05-21 18:20:03 1173

原创 js逆向练习 客户端的加密数据的逆向

这样的多出现在 登录框 前端进行加密后端进行解密(因为前后一致的模式 所以我们如果想进行payload的构造也需要使用前端的加密)利用方式 :1、浏览器端进行模拟(使用条件:嵌套引用所需的js文件数量过大) 2、扣代码本地进行复现(所使用的加密js是独立的)这个的加密就类似于 使用了已经公布的加密模式 所以只要找到相应的key,iv,密文等就能直接使用。推测一下对方的这个key可能是随机生成的 生产的方式就是上面的那个密码库.js 这个文件。根据抓包的程序进行一个一个的找。

2025-05-21 18:18:39 943

原创 js逆向反调试的基本 bypass

我们打开的时候会出现 自动断点的情况 其实就是debug 函数导致的 那这个是不是可以使用本地的文件进行替换?因为js是前端的东西 是可以进行修改的。单击f12 直接进入到 debugger模式 之后就是无限的停止在这个页面。优点是 还可以再别的函数上进行断点 缺点就是对于有联系的断点来说很麻烦。我的是edge 浏览器 所以可能会有些不同 记录下debug的位置。目标web 当然如果你想测试其他的web 可以改指向的web。说明现在这个js就是我们本地的了 我们可以进行修改。

2025-05-19 22:51:15 1178

原创 每日脚本 5.11 - 进制转换和ascii字符

remain 有余数表示是对于 lens 是需要补充的 因为他是向下取整 不论是大于8的位数还是小于 对于 8的向下取整而言 都是需要进行补充的。ascii码和字符之间的转换 : chr('97') 码转为字符 字符转为码 ord('a')进制转换函数 : bin() 转为2进制 oct() 转换为八进制的函数 hex() 转换为16进制的函数。但是上面这样写 如果我们给与的二进制的数大于8 多余的该怎么办?练习是试着把 补 3位的 8进制也进行一下 补充。

2025-05-11 21:24:06 425

原创 每日脚本学习5.10 - XOR脚本

异或就是对于二进制的数据可以 进行同0异1简单的演示 :结果是这个就是异或异或的作用 1、比较两数是否相等 2、可以进行加密加密就是需要key明文 :0b010110这个时候就能进行加密明文 ^ key=密文还有这个加密比较方便 就是解密也是这个逻辑考虑一个问题: 如果这个key是比密文小的该怎么办 就是明文和key 不等的时候 我们就需要使用密码本模式(循坏使用密钥)

2025-05-10 23:20:56 316

原创 jwt身份验证和基本的利用方式

什么是jwt(json web token)?看看英文单词的意思就是 json形式的token他的基本的特征 :类似于这样的 他有2个点 分割解码的时候会有三个部分头部 payload 对称密钥 这个就是对称加密头部:标明了 需要进行加密的方式是什么(一般就是对称加密 =》 SH256 和 非对称加密 =》RH256)这些都叫 alg头 (算法头) 当然还有一些typ, kid等中间的就是要加密的内容 需要是json形式的;

2025-05-05 22:59:29 714

原创 [RoarCTF 2019]Easy Calc 详解

2025-04-28 21:54:13 1025

原创 [ACTF2020 新生赛]Include && [ACTF2020 新生赛]Exec

2025-04-28 20:08:26 376

原创 [GXYCTF2019]Ping Ping Ping

【代码】[GXYCTF2019]Ping Ping Ping。

2025-04-27 22:58:30 1072

原创 [ACTF2020 新生赛]Upload

2025-04-27 22:53:40 577

原创 dvwa靶场 中高级代码分析+漏洞利用

【代码】dvwa靶场 中高级代码分析+漏洞利用。

2025-04-24 21:39:57 832

原创 ctfshow web8

学习内容:简单的盲注脚本的书写。

2025-04-23 23:33:37 432

原创 [HCTF 2018]WarmUp

【代码】[HCTF 2018]WarmUp。

2025-04-23 17:09:51 809

原创 ctfshow web类 2-7题

在日志上进行写入后门 页面中有了。

2025-04-22 22:14:08 727

原创 算法分析&传输加密&数据格式&密文存储&代码混淆&逆向保护

2025-04-20 22:09:13 2396

原创 代码审计入门 && 原生态sql注入篇

使用正则搜索的时候 发现这些有个目录的路径 : 我们需要看一下这些目录的作用 (可以查看里面的内容 或者是按照这个英文单词翻译)这个进行搜索一下这个就是广告逻辑 设置广告 这个页面呢可能就是广告商页面 上边的参数可能就是从数据库中 找哪个广告。案例使用的web全是纯手搓的项目 使用思路 1 先使用正则表达式 去查找对应的函数(代码审计就是 寻函数找方法)2、根据web的功能点寻找函数,然后根据函数看变量是否可控,再看函数是否有过滤。这个思路就是根据代码函数找缺陷然后找到功能点的web页面。

2025-04-19 18:23:24 846

原创 ctf 中 php特性导致的 判断失效 获取flag

这个的原理就是 strcmp() 会把两个字符串进行比较 如果输入的不是字符串 就会返回 0 (0代表flase 除0外的数字代表 true 但是一般为 1。in_arrary() 函数是有三个参数的 in_arrary("你要找的字符串",$a(数组),true(默认不写为false))第二个 : 0e123 是一种数据的格式(科学计数法) 他和 字符串 0 比较 因为都是字符串。那有个问题就是 那不所有的 == 和字符串进行比较的时候传入 true 的时候不都会是true。

2025-04-16 10:00:00 445

原创 sqlmap使用tamper解决过滤waf问题 && 实战解决[极客大挑战 2019]BabySQL 1

但是报不了数据 :这个就是因为waf 所以我们需要自己写一个 tamper进行绕过。这个题目是有waf的,我们输入 union的时候就会出现 union被过滤了。这边我猜测这个是可以进行ua头注入的(并且过滤对ua头没用)调用的时候 加上 -tamper=test.py。后面进行测试的时候 发现 这个是可以双写绕过的。猜测这个东西可能会解析我们的 UA头。把这个东西命名为 test.py。改一下sqlmap特征。

2025-04-14 18:19:42 391

原创 微信小程序抓包&&证书的安装

2025-04-13 22:47:47 406 2

原创 buuctf sql注入类练习

2025-04-13 22:16:35 1112

原创 集成化信息打点项目

根据企业信息打点域名,子域名,旗下的资产(app,web,小程序),ICP备案信息*(可以通过ipc获取web的备案ip)这个项目非常好用(主要是使用arl 或者是 nemo 的时候非常卡 cpu承受不了本地搭建)但是这个是使用 git 进行一键部署 所以我们国内需要找到镜像去加速下载。入口是域名的话 要找的信息就是1、查找子域名 2、端口 3、漏洞。如果出现这个 没有验证码 就刷新重进或者是改为http。有个小点就是 爱企查是搞了反爬虫所以我们需要手速快点。就有这个git的项目克隆链接。

2025-04-12 22:02:42 269

原创 数据库安全&&Redis && CouchDB && H2DB

因为我们靶场是docker搭建的 还有个问题就是 redis其实是不太适合在win 上搭建的所以很常见的就是在linux上搭建的。对方是docker容器的话就会导致我们的木马无法运行影响到对方的宿主机(docekr容器锁权限 阻止我们的渗透)执行whoami发现是root用户 上面的获取是普通的用户 说明管理员给与的权限并不是最高的 但是可以碰碰运气。redis数据库这个东西就像在互联网上裸奔(他的登录是不需要账号密码的 可以直接未授权登录到数据库内部)还有一个特征就是这个数据库储存的是json数据。

2025-04-11 04:00:00 2483

原创 linux提权进阶 && 环境变量劫持提权 && nfs提权

这个有说头 分为变量和常量 常量就是系统自带的固定的 变量就是可控的 简单举例就是 我们想调用 java 这个时候我们需要把这个java在计算机的路径写清楚之后才能调用 但是这样太麻烦 所以就可以配置环境变量 然后就能不写路径直接调用比如linux中 命令 其实就是文件啊 那怎么调用的就是使用的环境变量。

2025-04-09 17:43:49 967

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除