java
福建农林大学攻防一队wpjustDeserialize
com.example.ezjav.utils.User下有反射调用为恶意类重写输入流将该类加入黑名单
123456789101112131415161718192021222324252627282930313233343536373839package com.example.ezjav.controller;import java.io.IOException;import java.io.InputStream;import java.io.ObjectInputStream;import java.io.ObjectStreamClass;import java.util.HashSet;import java.util.Set;*public class NewObjectInputStream extends ObjectInputStream { private static final Set<String> BLACKLISTED_CLASSES = new HashSet(); ...
铁三
123#!/bin/bashsed -i s#t3sec2025#s1eeps0rt#g /usr/local/lib/python2.7/dist-packages/bootstrap_admin_web/views.py
1
刷题2023愚人杯
easy_signin
文件读取,读不了flag和environ读源码的时候发现了flag
被遗忘的反序列化
123456789101112131415161718192021222324252627<?phpfunction cipher($str) { if(strlen($str)>10000){ exit(-1); } $charset = "qwertyuiopasdfghjklzxcvbnm123456789"; $shift = 4; $shifted = ""; for ($i = 0; $i < strlen($str); $i++) { $char = $str[$i]; $pos = strpos($charset, $char); if ($pos !== false) { $new_pos = ($pos - $shift + str ...
GHCTF_web_wp(个人出的题)
给非预期烂了,先对各位师傅说个抱歉(难受)upload?SSTI!这题我是直接给出了源码。写了个文件上传和文件读取的逻辑。
我们看文件读取的函数就可以发现。
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455@app.route('/file/<path:filename>')def view_file(filename): try: # 1. 过滤文件名 safe_filename = secure_filename(filename) if not safe_filename: abort(400, description="无效文件名") # 2. 构造完整路径 file_path = os.path.join(app.config['UPLOAD_FOLDER' ...
CTFshow
c6bded76d588d5cd534ed93e2aa21dc15c9b1a318762a0a7de8a92f96025b2e27c8c6450f475b797d2344a810a73bf9d0b28615fbe52ff6c3a10acf70f99ab56ccf61d0b34bb3ca9b95dffb2d2671954ea6c9fcb884ba9e914bcd613952ec1893277785da55a923c7ccdf6b395d065e8c2df2e1fccf761342471bd739d8ff378be95513b72e10b40930d474bc7121c1272247d0a78d735d2310e29d4ce80900810869edb82f26fad20d67a65d0e5628c9cef3c3e223a2fa6d51691cb4ed70b583809587738be47f78289f729a63f6bfbc3708775f61a7710ba0f3d4a0339ad03be2c3e10271e27e16b80ddb01f8fb3ed753bdfab4e8fd8740 ...
java_web开发
单元测试Spring项目目录结构介绍web源码目录
我们的web源码是再src目录的java方法下,的包里的。与Spring的启动项同级或子目录
123456789101112package org.lse;import org.springframework.web.bind.annotation.*;@RestController//标识我们的类是控制器类public class HelloController { @RequestMapping("/Hello")//标识请求的路径,其下面的方法为其视图函数 public String hello(String Name) { System.out.println(Name); return "hey "+Name; }}
注解@RestController和 @RequestMapping,Spring框架有很多注解,我们需要通过注解来将普通类与构造类区分,将普通方法与我们的请求方法区分等等
reso ...
本人对于bottle框架下中无大括号ssti的一些思考以及内存马的挖掘
SimpleTemplateSimpleTemplate是bollte框架下的一款模板渲染引擎其内置了相当多的函数,也有一些不同于jinja2的trick如下
include 文件读取
这个函数我们从介绍可以发现其是导入一个子模板,并将结果导入模板,虽然他的官方文档写的是123% include('header.tpl', title='Page Title')Page Content% include('footer.tpl')但是其并没用对导入的模板文件进行检测,所以当我们输入{{include(app.py)}}就可以进行任意文件读取,好像只有web目录
% 与<%Bollte的模板是SimpleTemplate 模板引擎,里面有一个挺有趣的操作就是<%%>与%,我们可以利用上面的来执行python代码。
这样我们再SSTI时就会有很多的操作。
像如下demo。1234567891011121314from bottle import template, ...
java(整理一下,方便复习)
143d5673a003b6feb710e92aa9ea18c2e9a45deb4ad7a8d5a96100e95eddb6d5122f8cc7e0361c51656a009ef4c3fa60017aec2c10facb3264ea350559ee7aee2419cf55b1f95094eaf93dedae4b79fb6f032d9dd024cf831016660b42afb36fa054f24e509534fbf1c5882118dd6e061c35dd076f4a2351f0464e3dcd97fa0965174eec642b3d3b6457eb1c361069afaf5e83d8502a8daaef5d3881419c3e74b7b50a0653f96be011fbbc9fec7e05a26363c90b9425cd8a173238f7c80f201107b1d0a78682178061248ed7fe5e3dfa2728bd92dddbeab72c7d3e67caa23951b0d926575a4fcf18d881feb8ed16478332237e9077a8bb933 ...
N1CTF junior 2025 Web(复现)
说实话很久没水博客了,感觉自己自从大二以来对CTF的热情就越来越低,各种事情压过来,什么协会,攻防,社工,明明才大二,领导安排的任务一个比一个离谱,没有报酬还占用一堆时间,当然这些可能也是是我自己心里逃避的借口而已,但不知道为什么就是累,好了不能再这么下去了😠,开始学习。还有感谢bao师傅提供的附件Gavatar
upload.php很明显当上传的文件为空时会进入url的判断,将url指向的文件写入到$avatarPath而远程文件读取利用的函数是file_get_contents,那么我们就可以进行任意文件的读取然后写入到$avatarPath,而再读取头像的avatar.php下我们可以发现无需知道$avatarPath就可以读取到头像,虽然user[id]是随机数但是无影响
但仅仅是文件读取的话我们是无法得到flag的,这里还需要使用到CVE-2024-2961这里我利用珂字辈师傅拆解出的脚本来跑payload
https://github.com/kezibei/php-filter-iconv
读取/proc/self/maps
1php://filter/conv ...