DO YOU LOVE PHP?

WELCOME TO MY WORLD!

[OpenHarmony CTF 2025]Layers of Compromise

server:TinyFat/0.99.75 x-powered-by:PHP/8.3.21 nginx/1.24.0 .htaccess没起作用 # .htaccess Options -Indexes php_flag display_errors off <Files "config.php"> Order Allow,Deny Deny from all </Files> # 限制访问API目录 <FilesMatch "^debug\.php$"> ...

[SDCTF 2022]gullible by dovesign WriteUp

这玩意多少有点抽象,注入点不好找,注入算简单,看nss上面没有wp于是就写了一份Problem: [SDCTF 2022]gullible by dovesign 思路 首先当然是百度一张鸟的图片,上传看看,发现他居然识别不了 然后我们去看看他的源码,看到有upload.js,然后看到他有一些鸟的照片 我们下载一个鸟的照片然后再尝试上传,发现他成功识别,抓包发现其照片带有属性,有<?xpacket begin 我们查看他的照片属性,标题有着鸟的名称,猜测应该是这里查询 我们尝试1'发现报错,则存在注入点 我们查询列,发现共有3列1' union sel...

Part1-Python-Flask模板SSTI注入(Jinjia2引擎)

前言SSTI(Server-Side Template Injection)是服务器端模板注入,和其他如SQL注入、XSS注入等类似,是由于代码不严谨或不规范且信任了用户的输入而导致的。用户的输入在正常情况下应该作为普通的变量在模板中渲染,但SSTI在模板进行渲染时实现了语句的拼接,模板渲染得到的页面实际上包含了注入语句产生的结果。 本篇只讲Python3的Flask模板的SSTI注入总结 SSTI详细讲述参考 SSTI 注入 - Hello CTF、从0到1完全掌握 SSTI - FreeBuf网络安全行业门户 有什么缺失或者不对的地方欢迎大佬补充 Part1 一般利用姿势一些常用的魔术...

Javascript-Express框架-EJS模板,在CTF中的应用

Express的基本使用使用Express框架可以简化HTTP请求的处理。例如,创建一个基本的Web服务器只需要几行代码: const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello World'); }); app.listen(3000, () => { console.log('Server is running on http://loca...

CTF-Web中对于RCE常用姿势总结

PHP的RCE中一些小技巧空格过滤绕过1、大括号{}:{cat,flag.php}2、$IFS代替空格:$IFS$9,${IFS},$IFS这三个都行Linux下有一个特殊的环境变量叫做IFS,叫做内部字段分隔符 (internal field separator)。?cmd=ls$IFS-I单纯$IFS2,IFS2被bash解释器当做变量名,输不出来结果,加一个{}就固定了变量名?cmd=ls${IFS}-l$IFS$9后面加个$与{}类似,起截断作用,$9是当前系统shell进程第九个参数持有者始终为空字符串。...

CTFShow刷题日记#Web#1.20-1.26

作为小白,ctfshow对我来说意义很大,web题型很多,在本周刷的内容里面,RCE漏洞花样百出,让我看不到尽头(((。简直了,花样太多了,还得多刷多学,每次比赛做题都是现学现做doge 本周刷题内容 信息收集web1-web17 爆破web21-web24 命令执行web29-39 博客只分享部分我没见过我认为有价值的题目可以学习的部分题目解题日记 信息收集Web5这里的考点是phps源码泄露(index.phps)可以拿dirsearch扫一下存在的漏洞,发现phps源码泄露就直接访问靶机http://xxx.xxx.xxx.xxx/index.phps 得到<?php /*...

PHP反序列化的一些招式总结

最近刷题我个人遇见的一些php反序列化的题型,都很有意思,也值得加深学习,可能说明的不详细不充分不清晰,有些点没点到,还请各位大佬多多指点qwq weakup()绕过php的特性,当序列化后对象的参数列表中成员个数和实际个数不符合时会绕过 __weakup(); 如:p=O:6:“HaHaHa”:**2**:{s:5:“admin”;s:5:“admin”;s:6:“passwd”;s:4:“wllm”;} 一般做CTF题目时绕过的方法就是:先序列化字符串,然后使序列化后字符串中属性的个数大于真实对象中属性的个数,即可绕过__wakeup 。 则改为p=O:6:“Ha...