CTF
暑假CTF练习,以及详解
無名之涟
Wum1ng的博客
展开
-
wuming/unserialize详解
0x01拿到题目第一件事是进行目录扫描,看看都有哪些目录,结果如下:不少,首先有源码,我们直接下载下来,因为有源码去分析比什么都没有更容易分析出漏洞所在。通过这个知道,它一共有这么几个页面,首页登录页面,注册页面,update更改信息页面,这几个页面是我们能够直接接触到的,那想必flag应该在另外几个页面中,稍后我们分析。先来看看网站页面都是什么样子。登陆页面...原创 2020-09-05 12:30:29 · 254 阅读 · 0 评论 -
攻防世界web进阶区Web_python_block_chain详解
攻防世界web进阶区Web_python_block_chain详解题目详解51% 双花攻击题目详解我们整理一下Announcement: The server has been restarted at 21: 45 04 / 17.All blockchain have been reset.View source codehash of genesis block: 1787809bc3d510a8137f05be51aca5b4597112339cd51f819ccd979372ef3原创 2020-08-19 23:15:19 · 3591 阅读 · 0 评论 -
攻防世界web进阶区blgdel详解
攻防世界web进阶区blgdel详解题目详解题目详解我们发现他有个robots.txt文件我注册了好几次,也没登录成功,挺离谱直接访问,发现是源码<?phpclass master{ private $path; private $name; function __construct() { } function stream_open($path) { if(!preg_match('/(.*)\/(.*)$/s',$path,$array,0原创 2020-08-19 20:30:18 · 3570 阅读 · 1 评论 -
攻防世界web进阶区wtf.sh-150详解
攻防世界web进阶区wtf.sh-150详解题目详解题目看起来像一个论坛,可以注册,登录详解我们随便打开一个尝试注入并没有发现可以注入注册发现,admin已经存在,我们看看能不能二次注入看来也不行正常登录试试看看有没有其他漏洞我们发送的时候,看到有个参数,我们试试目录穿越使用…/发现了源码泄露发现有一个flag那么我们代码审计<html><head> <link rel="stylesheet" type="text原创 2020-08-19 16:38:14 · 1377 阅读 · 7 评论 -
RCE命令执行/代码执行
RCE命令执行/代码执行rcedisable_function绕过disable_function一.系统组件绕过二.利用ImageMagick漏洞绕过disable_function三.利用环境变量LD_PRELOAD来绕过php disable_function执行系统命令四.利用pcntl_exec突破disable_functionsphp7 的绕过利用apache绕过使用windows 系统组件com使用遗漏函数rceRCE英文全称:remote command/code execute分为原创 2020-08-14 11:21:20 · 1885 阅读 · 0 评论 -
攻防世界web进阶区upload详解
攻防世界web进阶区upload详解题目②CONV(N,from_base,to_base)③substr(string,start,length)题目进入页面是我们的注册登录以后,发现可以文件上传传完之后发现有回显,猜测可能是文件名注入我们先进行一系列得上传测试,发现都不行这时候,御剑发来了好消息,这儿有一个include,classes的文件我们使用burp康康有哪些过滤发现被制为了空,我们猜一猜是双写绕过下面解除文件名字注入1.把文件名改成 a' +(selsele原创 2020-08-13 16:34:10 · 2086 阅读 · 1 评论 -
攻防世界web进阶区Zhuanxv详解
攻防世界web进阶区Zhuanxv详解题目提示:详解题目提示:详解扫描目录发现了一个list我们使用了好几个扫描工具,只有wwwscan,和webdirscan可以,(可能是我字典太菜了)发现需要登录查看源代码发现,这里有问题,加载图片的方式很诡异试试文件读取他的cookie里有jessionid 说明他是使用JAVA写的网页那么我们尝试找找web.xmlstrust...原创 2020-08-13 14:08:33 · 1630 阅读 · 3 评论 -
攻防世界web进阶区comment详解
攻防世界web进阶区comment详解题目详解cp:.DS_Store题目详解只要我们输入任何一个评论,他就会让我们进行登录,我们可以通过他的文字提示,发现少了三位,一般我们都会上数字我们发现他666的时候有一个302的跳转登录以后,感觉也没有什么可以注入的正常也没有回显,这时候,我们的御剑传来了好消息有个.git,应该是git源码泄露。使用githack 下载源代码。<?phpinclude "mysql.php";session_start();if($_SESS原创 2020-08-11 18:24:24 · 1505 阅读 · 8 评论 -
攻防世界web进阶区Web_php_wrong_nginx_config详解
攻防世界web进阶区Web_php_wrong_nginx_config详解题目详解题目打开发现无论我们输入什么他都会弹出网站建设不完全那么我们使用御剑进行扫描,扫描到了admin和robots.txt我们访问admin试试我们接着访问hint.php和Hack.php这个打开直接弹窗详解好嘞,我们正式开搞!发现这里有一个cookie为0的值,我们改为1发现成功登录进去瞎点一通,发现,只有管理中心可以改变url/admin/admin.php?file=index&原创 2020-08-11 16:04:48 · 1188 阅读 · 1 评论 -
攻防世界web进阶区i-got-id-200超详解
攻防世界web进阶区i-got-id-200详解题目详解param()漏洞分析构造远程执行代码题目提示:嗯刚建了一个网站打开网页发现三个可以点击的file处存在文件上传form处存在xss详解.pl结尾的都是perl编写的网页文件这里上传文件会直接进行展示,到这里就没了= =只能看看师傅们的wp师傅们猜测这里后台perl上传代码使用了param()函数这里附上网上大佬们猜测的后台代码use strict;use warnings; use CGI;my $cgi=原创 2020-08-10 10:53:28 · 2227 阅读 · 1 评论 -
攻防世界web进阶区unfinish详解
攻防世界web进阶区unfinish详解题目详解题目详解我们使用御剑,扫描一波我们进入注册页面查看,发现这个,有注册的话猜一下二次注入(这里注入,然后去页面看结果)我们先拿AWVS试试,哦~我的上帝,它存在注入我们试试,burp的fuzz看看他过滤了什么还是过滤了蛮多的这些是都没过滤的既然知道了他是sql注入那么我们为啥不用sqlmap呢我们使用sqlmap,发现只能知道这里有注入点,但是过滤很严重我们需要找找合适的tamper哦~我的上帝,果然不行,看来还得看看师原创 2020-08-09 21:58:05 · 4175 阅读 · 5 评论 -
攻防世界web进阶区ics-07详解
攻防世界web进阶区ics-07详解题目详解floatvalsubstr题目当然又是熟悉的界面,熟悉的ics题目,熟悉的只能点击一个页面详解这里进来有一个view-source点击看看是一堆代码。我们进行尝试审计 <?php session_start(); if (!isset($_GET[page])) { show_source(__FILE__); die(); } if (isset($_GET[page]原创 2020-08-07 23:45:48 · 1627 阅读 · 1 评论 -
攻防世界web进阶区bug详解
攻防世界web进阶区bug详解题目解法题目解法我们直接打开就是一个页面,登录页面,当我们尝试注册的时候,发现,用户已经存在我们对他所有的页面都进行sqlmap的扫描,并没有发现可以注入的点因为他这里之前注册时候发现存在admin的账户,我们尝试一下,这里功能很多,那么我们试试直接修改admin的账户密码试试我们在他修改密码的地方,尝试修改名字发现成功,我们登录admin的账号试试其实我们发现还是不能登录,只是名字改为了admin,并没有他的权限,最多有了他的信息我们尝试上原创 2020-08-07 22:25:25 · 362 阅读 · 0 评论 -
攻防世界web进阶区Cat详解
攻防世界web进阶区Cat详解题目详解题目但是我们输入一个链接的时候发现没有回显这是我们访问loli.club的页面我们输入ip地址,发现有回显详解至此,我们猜测是一个代码执行的考点我们尝试127.0.0.1||ls127.0.0.1&&ls127.0.0.1|ls均被过滤我们发现他的url处存在编码,url编码我们进行尝试发现,url编码为%80时报错,因为ASCII码的编码范围0-127%80相当于128 所以推断是由unicode解码失败导致的,原创 2020-08-07 12:47:39 · 1439 阅读 · 0 评论 -
攻防世界web进阶区ics-04详解
攻防世界web进阶区ics-04详解题目详解题目打开环境,发现就一个登录和注册功能可以用。还有一个用户找回密码功能。详解我们发现有三个入口注册,登录,找回密码我们使用sqlmap扫描,发现只有找回密码可以进行sql注入python2 sqlmap.py -r -batch --dbscert中只有一个表 user我们看他字段登录成功获取flag当然,这是在可以获取到密码的情况实际上我们并不能一定可以解决那么我们可以进行重复注册我们尝试去覆盖他的原来的账号密码,原创 2020-08-07 00:51:56 · 295 阅读 · 0 评论 -
攻防世界web进阶区FlatScience详解
攻防世界web进阶区FlatScience题目解法题目解法我们一个一个点进去发现也就是一些论文之类的我们御剑发现了一些东西robots。txt我们登录试试在login页面有报错,我们猜测是sql注入他的源码中写到,登录是你不可能绕过的这里源码中出现了?debug,可能是一个调试页面,我们访问看看<?phpif(isset($_POST['usr']) && isset($_POST['pw'])){ $user = $_POST['u原创 2020-08-06 23:56:16 · 2969 阅读 · 1 评论 -
攻防世界web进阶区ics-05详解
攻防世界web进阶区ics-05详解题目解法题目我们只能点击一个地方解法御剑扫描有一个css的文件没有什么作用发现又点了一次的时候,url发生了改变因为是php的页面,我们试试php伪协议读取文件http://220.249.52.133:39554/index.php?page=php://filter/read=convert.base64-encode/resource=index.php<?phperror_reporting(0);@session_s原创 2020-08-06 17:27:06 · 3372 阅读 · 0 评论 -
攻防世界web进阶区web2详解
攻防世界web进阶区web2详解题目解法strrev函数substrordchr()str_rot13()题目解法<?php$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";function encode($str){ $_o=strrev($str); // echo $_o; for($_0=0;$_0<strlen($_o);$_0++){原创 2020-07-31 12:04:48 · 2894 阅读 · 0 评论 -
攻防世界web进阶区mfw详解
攻防世界web进阶区mfw详解题目解法方法二assertstrposfile_exists()题目解法当我们看到about的时候,看到使用了git我们猜测有git源码泄露http://220.249.52.133:57869/.git/githack下载发现flag.php<?php// TODO// $FLAG = '';?>并没有发现什么那么我们对index.php进行审计看看能发现什么<?phpif (isset($_GET['page'])原创 2020-07-31 00:26:32 · 571 阅读 · 0 评论 -
攻防世界web进阶区lottery详解
攻防世界web进阶区lottery详解题目详解题目详解我们扫了一遍,注册处也没有什么问题然后发现了,robots下有一个/.git/很明显提示了我们git源码泄露那么我们使用githackhttps://github.com/lijiejie/GitHack...原创 2020-07-30 20:45:18 · 927 阅读 · 0 评论 -
攻防世界web进阶区shrine详解
攻防世界web进阶区shrine详解题目详解题目很明显给了一堆代码,我们将它整理一下import flaskimport osapp = flask.Flask(__name__)app.config['FLAG'] = os.environ.pop('FLAG')@app.route('/')def index(): return open(__file__).read()\@app.route('/shrine/')def shrine(shrine):原创 2020-07-30 20:09:34 · 2369 阅读 · 1 评论 -
攻防世界web进阶区Web_python_template_injection详解
攻防世界web进阶区Web_python_template_injection详解题目详解python模板/框架Python中可以利用的方法和模块ssti常用注入,以及绕过姿势题目显而易见,根据题目的翻译我们知道他是一个python的模板注入,ssti模板注入详解这里我们输入http://220.249.52.133:55983/{{7+7}}发现可以进行模板注入这个题目和另外一个有点区别,tplmap并不能进行扫描tplmap适用于有参数的一些模板注入类对象并未发现http:原创 2020-07-28 00:53:55 · 1736 阅读 · 0 评论 -
攻防世界web进阶区fakebook详解
攻防世界web进阶区fakebook详解题目详解tips题目详解注册框很可疑,我们抓包,sqlmap一把梭python2 sqlmap.py -r wuzi.txt发现了五个数据库,但是很可惜,都没有我们想要的flag,当我们查看fakebook的内容时,发现是用序列化来存储的到这里我们思路就断了,我们再来御剑一把梭打开flag.php发现并没有什么作用,那么我们继续扫描这时候,在robots.txt中发现了备份文件<?phpclass UserInfo原创 2020-07-24 01:05:17 · 785 阅读 · 1 评论 -
攻防世界web进阶区unserialize3详解
攻防世界web进阶区unserialize3详解题目解法题目有了上一个反序列化的题目的折磨(大威天龙,淦)这个题也就游刃有余了上一个序列化题解法根据上一个题目,很明显,这里需要我们进行序列化xctf这个类,然后绕过wakeup()[关于这个魔术函数,上一个题目有详细介绍,见如上连接]我们根据CVE,写一个大数字即可详细CVE解释,上一个题目均有讲解...原创 2020-07-23 15:00:21 · 486 阅读 · 0 评论 -
攻防世界web进阶区Web_php_unserialize,序列化大详解
攻防世界web进阶区Web_php_unserialize详解题目详解正则魔术方法题目题目是一个php反序列化,这里放出了一个源码审计详解正则/i 表示匹配的时候不区分大小写\d 匹配一个数字字符。等价于 [0-9]。“+” 出现至少1次[ ] 是定义匹配的字符范围[oc]是匹配o或c任意一个[xyz] 字符集合。匹配所包含的任意一个字符。例如, ‘[abc]’ 可以匹配 “plain” 中的 ‘a’。\d+是为了匹配[0-9]的数字,多次匹配!”[oc]:“匹配的是,o原创 2020-07-23 14:30:46 · 2236 阅读 · 1 评论 -
攻防世界web进阶区easytornado详解
攻防世界web进阶区easytornado详解题目详解题目提示:tornado框架flag in /fllllllllllllagmd5(cookie_secret+md5(filename))详解首先我们知道了,flag在==/fllllllllllllag==里面那么我们尝试直接输入 访问出现error我们发现msg是可以进行更改的那么我们进行ttsi模板注入检测,并没有发现可以使用的(使用tplmap)/error?msg={{handler.settings}}原创 2020-07-21 00:30:03 · 3272 阅读 · 0 评论 -
攻防世界web进阶区surpersqli详解
攻防世界web进阶区surpersqli详解题目详解方法1方法2方法3preg_match函数堆叠注入题目源代码发现,sqlmap不可以使用详解强行使用sqlmap无果,只能到这一步,存在surpersqli的数据库那么我们只能使用手工注入order by 3的时候发现报错,说明只有两列存在接着我们使用联合查询,发现select update drop insert where 都被禁止了那么我们发现堆叠查询可以使用http://220.249.52.133:57962/?i原创 2020-07-20 21:26:00 · 308 阅读 · 0 评论 -
如何解决词达人问题(新)
如何解决词达人问题(新步骤提示:步骤我们获取到大佬的软件后,https://github.com/deximy/FxxkCiDaRen/releases/然后赋予他管理员权限(右键,选择以使用管理员权限运行)我们要保证,手机和电脑在同一个wifi下也就是同一个ip段下然后我们使用手机,连接同一个wifi我们选择代理设置,改为手动选择我们刚刚显示的192开头的ip,填入然后我们打开浏览器,访问该网页然后点击fidder -root那个CA证书下载然后安装然后打开微信的原创 2020-07-19 19:14:55 · 6101 阅读 · 0 评论 -
攻防世界web进阶PHP2详解
攻防世界web进阶PHP2详解题目解法字母的url编码题目解法我们发现index.phps存在源码泄露,他只问了原页面在那儿里(我觉得这里应该给提示)首先我们得admin不能恒等于get获得的id的值我们需要跳过第一个接下来get id的值经过一次url解码然后要恒等于admin那么我们就将adminurl编码即可,因为第一次经过了get,那么我们就需要两次url编码字母的url编码字符的url编码就是:字符的十六进制前面加了个百分号...原创 2020-07-17 00:30:20 · 596 阅读 · 0 评论 -
攻防世界web进阶区NewsCenter详解
攻防世界web进阶区NewsCenter详解题目方法一sqlmap注入方法二手工注入题目我们输入搜索,很明显是一个注入方法一sqlmap注入抓到包之后,存到txt文件中,-r获取文件然后发现可以注入接着我们–dump直接获取到flag(比较暴力)方法二手工注入前引号为了闭合之前的语句,后面的#为了注释后面的引号否则都会报错我们使用orderby 查询有几列当我们写三时发现可以正常查询,4就不行了发现有一些前缀的文章,那么我们使用一些垃圾话将他查询失效2和原创 2020-07-16 21:45:58 · 2776 阅读 · 0 评论 -
攻防世界web进阶区warmup详解
攻防世界web进阶区warmup详解题目解法函数题目查看源码发现source.php我们直接访问发现hint.php我们再访问解法flag not here, and flag in ffffllllaaaagggg这里提示我们flag在ffffllllaaaagggg里面那么我们去看看source.php直接定义了一个类,他将file的值传入了page的参数中,file中必须含有白名单内的两个,source.php 和hint.php否则的话会false,check fil原创 2020-07-16 16:19:25 · 1457 阅读 · 0 评论 -
攻防世界web进阶区Web_php_include两种解法
攻防世界web进阶区Web_php_include两种解法题目函数知识详解第一种第二种题目函数知识strstr:查找php://在page中的第一次位置,并返回位置参数str-replace:将page中的php://替换为空详解明显一个代码审计的题目首先,他get一个hello参数,然后输出,并没有实质作用然后get一个page参数检测$page参数中是否含有php://然后将php://全部替换为空while无限循环,直到page中没有php://即可,第一种我们首先可以使用原创 2020-07-16 00:16:28 · 674 阅读 · 0 评论 -
攻防世界web进阶区php_rce--Thinkphp5.x命令执行漏洞
攻防世界web进阶区php_rce--Thinkphp5.x命令执行漏洞题目解法题目首先我们是命令执行rce,那么我们一般优先访问index.php然后进行代码审计(这里为了方便,搬运简书大佬的复现和审计)简书大佬的复现解法因为要将我们输入的东西实例化(thinkphp他是这么叫的)?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=find原创 2020-07-15 00:06:48 · 531 阅读 · 0 评论 -
00截断文件上传CTF例题详解
00截断文件上传CTF例题详解题目解法题目解法抓包进行尝试php文件果然不行jpg文件可以上传成功这里因为有文件路径,那么使用%00截断的时候,让他生成了一个2.php的文件,然后将3.jpg的内容写了进去这里链接的也是2.php16进制的0x00截断见16进制CTF题目解答...原创 2020-07-06 22:02:56 · 1006 阅读 · 0 评论 -
.user.ini上传详解附CTF例题
.user.ini上传详解附CTF例题题目解法https://buuoj.cn/challenges#[SUCTF%202019]CheckIn[SUCTF 2019]CheckIn题目解法GIF89a //绕过exif_imagetype()auto_prepend_file=a.jpg //指定在主文件之前自动解析的文件的名称,并包含该文件,就像使用require函数调用它一样。它包含在所有php文件前先执行auto_append_file=a.j原创 2020-07-06 19:45:43 · 2854 阅读 · 0 评论 -
.htaccess文件上传CTF讲解
.htaccess文件上传CTF详解题目解法方法2题目解法我们先写一个htaccess文件通过它调用php解析器去解析一个文件名中只要包含"haha"这个字符串的任意文件,无论扩展名是什么(没有也行),都会以php的方式来解析<FilesMatch "haha"> SetHandler application/x-httpd-php </FilesMatch>或者如下,上传一个文件名为evil.gif的图片马:<FilesMatch "evil.gi原创 2020-07-06 14:44:41 · 3520 阅读 · 0 评论 -
腾讯犀牛鸟CTF文件上传题目解析
腾讯犀牛鸟CTF文件上传题目解析对上传功能点进行测试,发现限制了图片大小范围。那么我们就找一个符合范围的图片。反复尝试,发现,PHp大小写可以绕过,pht也可以绕过,同时构造头GIF89a,就可以绕过。然后蚁剑进行连接。flag值:flag{Aa3c7c37508E40B3}...原创 2020-07-06 12:20:19 · 410 阅读 · 0 评论