buuctf misc wp (持续更新)
金三胖
逐帧查看即可看到flag
你竟然赶我走
直接拖入winhex,搜索flag拿到flag
二维码
二维码的内容是这个,但是没什么用
放进winhex看一下发现一个txt文本,并且发现PK标识改后缀为.zip就可以看到文本
有密码
使用工具进行爆破,拿到flag
大白
下载后发现宽度和高度明显不一致放入010修改一下第二行的前四个表示宽度,后四个表示高度,将01改为02,就能看到flag
wireshark
直接过滤password拿到flag
乌镇峰会种图
直接拖入winhex,左后就是flag
N种方法解决
下载后是个.exe程序,点击是打不开的,直接放进winhex发现一段base64编码后的jpg图片,去网上随便找个base64转图片
手机微信扫一扫拿到flag
基础破解
直接工具爆破就可以拿到密码
文件中的秘密
直接放到winhex里,就可以看到flag
zip伪加密
正如题目所述,是zip伪加密直接使用winrar修复一下,再重新打开,就能看到flag
LSB
题目提示是LSB,那么直接打开stegsolve看一下lsb,拿到一张 ...
攻防世界 wp (持续更新)
Training-WWW-Robots
根据题目提示直接访问robots.txt,拿到flag的路径,访问就可以拿到
PHP2
尝试发现Index.phps有东西,访问源代码果然发现php代码
这里需要进行两次url编码,进行两次url编码后能够绕过第一个强相等,并且在url解码后与admin弱相等这里使用hackbar的全字符url编码拿到flag
unserialize3
这里考察的是绕过__wakeup魔术方法,这个魔术方法是在反序列化时自动执行的,只要在序列化的时候将属性的数量改大一些就可以绕过
这里将1改为2进行绕过传入后自动跳转flag
ics-06
这里发现id,并且传入的值只能是数字,经过BP爆破后发现传入2333能拿到flag
view_source
直接Ctrl+u查看源代码拿到flag
get_post
按照题目提示传入即可
robots
直接访问robots.txt,然后访问拿到的网址拿到flag
backup
直接访问Index.php.bak拿到flag
cookie
首先查看cookie发现一个网址cookie.php访问后让我们 ...
buuctf wp(持续更新)
[极客大挑战 2019]EasySQL
直接输入万能密码1’ or 1=1#拿到flag
[极客大挑战 2019]Havefun
使用hackber查看后发现使用get传入cat=dog可以拿到flag
[HCTF 2018]WarmUp
查看后发现一个source.php,直接访问这个页面
发现需要代码审计,真正执行的是下面的这一部分,检查file的内容是否为空,是否是字符串,是否在白名单内,上面的代码就是检查,都符合后对file传入的内容进行文件包含
12345678$whitelist = ["source"=>"source.php","hint"=>"hint.php"]; if (! isset($page) || !is_string($page)) { echo "you can't see it"; return false; if (in_array($page, $whitelist)) ...
ctfshow web入门 wp (持续更新)
信息搜集web1
查看网页源代码
web2
这里没办法直接右键查看源代码方法一:在网址上输入view-source:方法二:直接ctrl+u就可以直接查看源代码
web3
使用BP或者harkbar就可以看到
web4(robots.txt)
机器人协议首先访问机器人协议看到它不像让你看到那些信息,再访问就可以拿到flag
web5(index.phps)
根据题目提示,存在phps源码泄露,直接访问index.phps即可拿到flag
web6(www.zip)
直接访问www.zip就可以拿到flag
web7(/.git/)
版本控制很重要,但不要部署到生产环境更重要,直接访问/.git/就能拿到flag
web8(/.svn/)
版本控制很重要,但不要部署到生产环境更重要,直接访问/.svn/就能拿到flag
web9(index.php.swp)
原理vim 在编辑文本时就会创建临时缓存文件,用来备份缓冲区中的内容。当程序异常退出时会被保留下来,因此可以通过该缓存文件恢复原始文件 ...
2025启航杯wp(部分)
2025启航杯PvzHE
flag就在文件中的图片里,游戏是植物大战僵尸,居然真的可以玩
QHCTF For Year 2025
第一个下载的文件是10串数字,以-分割,结合日历,每一行的两个数字为一组,在日历上画出来,就是flagQH{FUN}
请找出拍摄地在哪里
根据图片中的洋丰复合肥,柳化复合肥和它上面的4S店广告,可以确定地点是柳城县,再根据高德地图雅迪电动车的位置可以找到图片中的位置,G323国道那个
Easy_include
是一个简单的文件包含,只需要不出现flag.php就可以了,我们考虑使用data伪协议进行绕过,?file=data://text/plain,<?php system(“tac fla?.php”);再访问网页源代码就可以拿到flag
123456789101112<?php error_reporting(0); //flag in flag.php $file=$_GET['file']; if(isset($file)) { if ...
文件上传知识+wp
ctfshow私教课第六节文件上传php的文件上传
在linux系统中,强制上传的文件会被放在/tmp/php??????的地方,使用匹配符的时候,就是/???/?????[@-[]来匹配
ctfshow私教课web42(基础之双写绕过)
经过尝试发现其将php替换为空,这里可以使用双写绕过
传入内容为一句话木马的图片,修改后缀为pphphp,上传后看到路径,使用蚁剑连接就可以拿到flag
也可以直接访问上传文件的路径,使用远程代码执行拿到flag
php的文件上传绕过可以代替php的符号
php3 php5 phtml phps
1.双写绕过
原理是后缀替换为空时,我们通过提交1.pphphp替换php为空后,得到1.php,就可以成功写入木马但是当题目是将php替换为txt或者其他字符时,我们就没办法使用双写进行绕过了
2.php文件上传的00截断(古老)
我们输入 hello world的时候,真正存储的是hello空格world\n\00123.php 明显不让上传123.php%00.jpg 那么后台判断的 ...
高级文件包含+wp
ctfshow私教课第五节文件包含include “/var/www/html/flag.php”;
文件名可控$file=$_GET[‘file’];include $file.”.php”;对于我们提交的任何东西后面加一个.php,使用php伪协议,可以使用data协议,ctfshow私教课web35使用的是?file=data://text/plain/,拿到的flag
文件后缀可控$file=$_GET[‘file’];include “/var/www/html/“.$file; //不能使用伪协议了,伪协议需要前面的固定格式这时候只能使用虚拟目录或者其他的目录跳转例如 /var/www/html../../../../../../../flag.php,就可以包含进去了
高级文件包含1.ng ...
文件包含知识+wp
ctfshow私教课第四节文件包含文件包含的本质
代码复用并行开发模块化增加移植性
include和eval的区别include和eval一样,都不是函数,都是语言结构,无法通过配置文件禁用来禁用
include后面跟一个路径,表示要执行的php文件的路径,读取文件内容后,然后执行里面的php代码,像c语言中的函数。
eval后面跟php的代码,表示要执行的代码
php的常见为文件包含语言结构include 仅仅是包含这个文件,如果文件不存在,就继续执行后面的代码,无视这个include
require 必须存在这个文件,不然就无法正常执行后面的代码,就报错不执行了
include_once 包含一次,遇到错误继续执行
require_once 成功包含一次,遇到错误停止
文件包含漏洞的含义是指,通过文件包含时,包含的内容我们用户可控
ctfhsow私教课web30123456<?php error_reporting(0); highlight_file(__FILE__); // flag in /var/www/secret include $_G ...
rce知识+wp
ctfshow私教课第三节远程代码执行Remote Code ExecCode指脚本语言(php)的代码常见函数有
eval这是字符串,表示将字符串按照php的代码执行
call_user_func
call_user_func_array等等
使用参考PHP7中文手册
命令执行和代码执行的区别前者执行操作系统的命令 后者执行脚本语言的代码
函数调用的格式函数返回值 函数名字(函数参数);$ret=system(“calc”);
ctfshow私教课web2012345`<?php error_reporting(0); highlight_file(__FILE__); call_user_func($_GET[1],$_POST[2]); ?>
经过php7中文手册查到call_user_func — 把第一个参数作为回调函数调用,其余数据是回调函数的参数
eval是语言结构,不是函数,这里不能使用eval?1=system 作为回调函数2=cat /f1agaaa作为回调函数的参数二 ...
php知识+wp
ctfshow私教课第二节认识phpphp是一种开源服务器端脚本语言
php的基本语法是函数名(函数参数)分号可以有零或者多个参数,如果没有参数就不写phpinfo 显示当前服务器上php的基本信息
可以自定义函数,例如下面这个就是用php语言写的简单加和
123456789<?phpfunction add($a,$b){return $a+$b;}$a=$_POST['a'];$b=$_POST['b'];$c=add($a,$b);echo $c;?>
危险函数比较危险的函数,如果参数用户可控,会造成灾难性的后果
例如:
system函数执行外部程序,并且显示输出还有很多可以查询php7中文手册
命令执行命令执行一般指目标服务器上的命令执行,也就是远程命令执行,英文缩写为RCE,有远程命令执行和远程代码执行
php的命令执行函数
system
passthru
exec
shell_exec
popen
pcntl_exec
执行运算符具体使用参考php7中文手册
连接符
&& 前后两个 ...