2024 年终总结
我能跟你们一起冒险,真是太好了
——葬送的芙莉莲第一话 冒险的结束 辛美尔
数次和同行的朋友感慨”2024是又长又快的一年”, 于是将这个对我造成了巨大改变的一年存入虚拟NARvGear中, 看看自己的时间究竟去哪里了
这一年的主旋律是 web 和 102 次元, 内容颇杂乱 是通过聊天记录和各种图片回忆出来的, 2025年请一定不要这样了( 什么叫工作留痕啊:战术后仰.gif)
一月
人类总是这样,一直在争取明天,忘记了今天的美好
——葬送的芙莉莲第四话 诞生
葬送的芙莉莲在小破站开播, 回家之前刚好重刷完了指环王和霍比特人的系列电影, 番剧的配乐一下把我拉回了书中的世界, 而且整体风格也更加轻松欢快, 很快啊 就抓住了我的内心
寒假, 在网安响应中心见习了一个月( 网络舆情监控? ) 主要负责活跃气氛enenen , 更多是在摸鱼 (尴尬 ==) , 体制内的节奏和日后在企业见到的节奏属实是天壤之别, 顺便把科目二考了 ( qwq其实睡觉更适合我吧 ) 好在没有在科目二上失利 直接秒了没什么好说的嘿嘿
空余时间甚至给表妹线上家教 ...
Java反序列化漏洞:从背景到利用01.历史背景与漏洞起源2015年:反序列化漏洞的元年在2015年1月28日,名为“Marshalling Pickles”的PPT被分享在slideshare网站上,由Gabriel Lawrence(@gebl)和Chris Frohoff(@frohoff)在AppSecCali大会上进行了演讲。但遗憾的是,这次演讲在当时并没有激起太大的波澜。
PPT中详细描述了序列化(Serializing Objects),也可以称作“marshaling”、“pickling”、“freezing”、“flattening”。其核心作用是将内存中的对象进行“快照”和“拉平”,转化为平面化的、串行的数据流,以便进行存储、传输,或在不同位置进行重构和使用。PPT中还演示了多种攻击路径,包括在Java和Python环境中修改反序列化数据操纵应用程序状态、在PHP环境中操纵应用程序逻辑读取非预期文件,以及使用EL表达式在ViewState的序列化数据中执行代码。
真正将反序列化漏洞引入大众视野的,是2015年11月6日Fox Glove Security安全团队的 ...
RMI协议01. RMI简介RMI概述RMI(Remote Method Invocation,远程方法调用)是 Java 提供的一种机制,允许运行在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法。需要被远程调用的对象必须实现一个继承自 java.rmi.Remote 的接口。
在调用过程中,参数会被编组(marshalled)后从本地虚拟机发送到远程虚拟机,并在远程虚拟机上解组(unmarshalled)。方法执行结束后,结果(或异常)同样会被编组,从远程机发送回调用方虚拟机。通过 RMI,开发者可以像调用本地方法一样调用远程方法,屏蔽底层网络通信细节,实现跨 JVM 的透明操作。
RMI的应用价值
跨服务调用:例如 A 站点可以通过 RMI 调用 B 站点暴露的服务接口(如根据 id 查询用户信息),数据库连接无需直接暴露给多个客户端,降低安全风险。
避免重复开发:服务器上已有的一系列对象和调用逻辑,通过 RMI 只暴露需要被调用的方法,客户端无需将服务端实现下载到本地,安全又便捷。
02. 基础与演变什么是RPCRPC(Remote Procedu ...
Java反射机制与安全研究from p牛 yq1ng Y4taker
01.反射机制反射的定义Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动态语言的关键。
反射的核心方法在反射机制中,有几个极为重要的方法,它们包揽了Java安全里各种和反射有关的Payload:
获取类的方法:forName
实例化类对象的方法:newInstance
获取函数的方法:getMethod
执行函数的方法:invoke
一段典型的反射代码可以清晰地展示这些方法的协作关系:
1234public void execute(String className, String methodName) throws Exception { Class clazz = Class.forName(className); clazz.getMethod(methodNa ...
那我问你过个年而已,你怎么pwnpwn的?
GIFT SWPUCTF2021结构file
1ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=9671b6fc91bd7300442a2e8c2270070138e956b1, not stripped
checksec
12345checksec --file=/Users/choco/Downloads/imgRELRO STACK CANARY NX PIE RPATH RUNPATH Symbols FORTIFY Fortified Fortifiable FILEPartial RELRO No canary found NX enabled No PIE N ...
环境信息
系统: macOS 15.4 (Sequoia) - Darwin 24.5.0
芯片: Apple Silicon (ARM64)
架构: ARM64_T8132 (M4)
第一部分:安装软件1. 安装 OrbStack12# Homebrew (brew update)brew install --cask orbstack
启动 OrbStack,完成初始化(无需登录)。
2. 安装 Burp Suite (ARM64 原生版)123456# 方式A:官方下载(推荐 Community 版)open https://portswigger.net/burp/communitydownload# 选择 "Apple Silicon (M1/M2/M3) macOS" 版本# 方式B:Homebrew(自动选 ARM64)brew install --cask burp-suite
验证架构(确保不是 Rosetta 转译):
123file /Applications/Burp\ Suite\ Community\ Edition.app/ ...
高校组第九 队友带飞
Overview
CryptoGriffin首先根据给出的点恢复曲线的参数
$$y^2 = x^3+ax+b \pmod{p}$$
$$y^2-x^3\equiv ax+b \pmod{p}$$
$$r_i = y_{i}^2-x_{i}^3\equiv ax_i+b \pmod{p}$$
随便取三点就可以消元产生一个 p 的倍数
然后 gcd 出来一个大素数即可(类似 lcg 的未知参数)
之后得到 G 的阶
发现 G 的阶光滑
因为 xs 里面的数很小,可以将椭圆曲线的点降到 q 阶子群,然后求 dlp 得到模 q 的阶
之后通过 circuit 搜索去区分随机的点和多项式生成的点
找出 40 行 Hawk 之后
发现 xs 在 Hawk 的列空间内,通过 BKZ 进行求解
但是求出来的 xs 不一定是真正的 xs,可能进行了一些线性变换
详细原理可见鸡块佬的 blog:https://tangcuxiaojikuai.xyz/post/94c7e291.html
遍历所有线性组合
对 $$f_0$$的 40 个点求解 dlp
进行插值求出 ...
hacker
未读强网拟态决赛 wp燃尽了
Ezdatarthttps://github.com/running-elephant/datart
http://172.31.18.18:8080/
Version: 1.0.0-rc.3
账号密码(可以注册) admin:123456
CVE 2025 568191234567891011121314151617181920POST /api/v1/data-provider/test HTTP/1.1Host: 172.31.18.18:8080{ "name": "jdbc-data-provider", "type": "JDBC", "properties": { "dbType": "H2", "url": "jdbc:h2:mem:testdb;TRACE_LEVEL_SYSTEM_OUT=3;INIT=CREATE ALIAS ...
初赛 , 决赛还没整理
SecretVault123456789101112131415161718192021222324252627@app.route('/login', methods=['GET', 'POST'])def login(): if request.method == 'POST': username = request.form.get('username', '').strip() password = request.form.get('password', '') user = User.query.filter_by(username=username).first() if not user or not verify_password(password, user.salt, user.password_hash): ...
hacker
未读123ip a192.168.241.181
信息搜集靶机发现1sudo nmap -sn 192.168.241.0/24
目标靶机 ip 为 192.168.241.184
端口发现1sudo nmap -sT --min-rate 10000 -p- 192.168.241.184 -oA nmapscan/ports
123PORT STATE SERVICE22/tcp open ssh80/tcp open http
渗透打点端口扫描1sudo nmap -sT -sV -sC -O -p22,80 192.168.241.184 -oA nmapscan/detail
123456789101112131415161718PORT STATE SERVICE VERSION22/tcp open ssh OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)| ssh-hostkey: | 2048 31:62:bb:fc:87:9a:39:01:96:54:03:18:bb:03:bc:90 ...

























