代码审计
文章平均质量分 92
hui________
人的一生是一个不服气的过程
展开
-
[De1CTF 2019]ShellShellShell
平台:buuoj.cn打开靶机是一个登录框原创 2020-07-17 12:34:59 · 1732 阅读 · 3 评论 -
[SWPUCTF 2018]SimplePHP
平台:buuoj.cn打开靶机有上传和查看文件功能观察到查看文件url可以直接读取文件内容将各个文件源码复制下来主要有以下文件考点:phar文件上传先来看class.php,有三个类C1e4r类对象创建时$name传递给$str,对象销毁时$str->$test并输出$testclass C1e4r{ public $test; public $str; public function __construct($name) {原创 2020-07-05 12:13:38 · 2187 阅读 · 0 评论 -
[HFCTF2020]BabyUpload
平台:https://buuoj.cn打开靶机给出源码,分析一下<?phperror_reporting(0);session_save_path("/var/babyctf/");session_start();require_once "/flag";highlight_file(__FILE__);if($_SESSION['username'] ==='admin'){ $filename='/var/babyctf/success.txt'; if(file原创 2020-07-04 15:12:13 · 2840 阅读 · 3 评论 -
审计练习18——[BJDCTF2020]EzPHP
平台:buuoj.cn打开靶机加载来自卡巴斯基网络威胁实时地图,控制台查看源码发现base64,解码得1nD3x.php访问得源码<?phphighlight_file(__FILE__);error_reporting(0); $file = "1nD3x.php";$shana = $_GET['shana'];$passwd = $_GET['passwd'];$arg = '';$code = '';echo "<br /><font color=原创 2020-06-30 14:45:57 · 552 阅读 · 1 评论 -
审计练习17——[MRCTF2020]Ezpop
平台:buuoj.cn打开靶机得源码<?php//flag is in flag.php//WTF IS THIS?//Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%E6%9C%AF%E6%96%B9%E6%B3%95//And Crack It!class Modifier { protected $var; public f原创 2020-06-17 21:36:41 · 589 阅读 · 1 评论 -
审计练习16——[MRCTF2020]套娃
平台:buuoj.cn打开靶机源码处php代码第一个if如果传入的参数出现_和它的url编码%5f,则打印Y0u are So cutE!绕过:用.或空格代替_第二个if要b_u_r_t的值为23333但添加了正则匹配,用^和$来界定23333的首尾,代表了“行的开头和结尾”,只匹配一行,因此%0a换行绕过打开secrettw.php提示本地,xff不行,用client-ip下面的jsfuck代码直接控制台输出那么就post一个Merak随便传个值回显php,代码如下<?原创 2020-06-12 11:03:38 · 450 阅读 · 0 评论 -
审计练习15——[网鼎杯 2020 朱雀组]phpweb
平台 :buuoj.cn打开靶机一张众生皆懒狗(拜)观察到会自动刷新时间,截个包func调用函数p作为参数,那么代码执行index.php如下 <?php $disable_fun = array("exec","shell_exec","system","passthru","proc_open","show_source","phpinfo","popen","dl","eval","proc_terminate","touch","escapeshellcmd","esca原创 2020-06-07 11:55:26 · 389 阅读 · 0 评论 -
审计练习13——[安洵杯 2019]easy_serialize_php
平台: buuoj.cn打开靶机得源码<?php$function = @$_GET['f'];function filter($img){ $filter_arr = array('php','flag','php5','php4','fl1g'); $filter = '/'.implode('|',$filter_arr).'/i'; return preg_replace($filter,'',$img);}if($_SESSION){ un原创 2020-06-05 10:55:52 · 429 阅读 · 2 评论 -
审计练习12——[BJDCTF2020]ZJCTF,不过如此
平台:buuoj.cn打开靶机得源码<?phperror_reporting(0);$text = $_GET["text"];$file = $_GET["file"];if(isset($text)&&(file_get_contents($text,'r')==="I have a dream")){ echo "<br><h1>".file_get_contents($text,'r')."</h1></br>原创 2020-06-04 12:03:43 · 605 阅读 · 0 评论 -
审计练习11——[CISCN 2019 初赛]Love Math
平台:buuoj.cn打开靶机源码如下<?phperror_reporting(0);//听说你很喜欢数学,不知道你是否爱它胜过爱flagif(!isset($_GET['c'])){ show_source(__FILE__);}else{ //例子 c=20-1 $content = $_GET['c']; if (strlen($content) >= 80) { die("太长了不会算"); } $blackli原创 2020-06-03 18:19:39 · 283 阅读 · 0 评论 -
审计练习10——[CISCN2019 华北赛区 Day1 Web1]Dropbox
平台:buuoj.cn打开靶机注册登录之后是一个管理面板,有上传功能上传文件试试看可以下载,抓个包有任意文件下载把文件都下下来考点phar反序列化class.php中定义了三个类:User,Filelist,FileUser类中除了三个用户处理函数外,在结束对象时会自动执行__destruct函数调用close()Filelist类中存在一个特别的魔术方法,__call()PHP5 的对象新增了一个专用方法 __call(),这个方法用来监视一个对象中的其它方法。如果你试着调原创 2020-06-02 22:20:43 · 321 阅读 · 0 评论 -
审计练习9——[BJDCTF2020]Mark loves cat
平台:buuoj.cn打开靶机先扫目录,发现git泄露githack下下来看下这两个php文件flag.php读取flag,index.php前端代码后php关键代码如下<?phpinclude 'flag.php';$yds = "dog";$is = "cat";$handsome = 'yds';foreach($_POST as $x => $y){ $$x = $y;//把post传入的变量x前添加$}foreach($_GET as原创 2020-06-01 10:56:00 · 432 阅读 · 4 评论 -
审计练习8——[安洵杯 2019]easy_web
平台:buuoj.cn打开靶机来自web狗的卑微(多么痛的领悟~)源码里是左上角图片的base64形式,url里有base64字符串,解码看看两次base64一次hex既然通过文件名构造字符串,那么用index.php试试传入img得到index.php的base64源码解码得源码如下<?phperror_reporting(E_ALL || ~ E_NOTICE);header('content-type:text/html;charset=utf-8');$cmd =原创 2020-05-31 15:27:11 · 285 阅读 · 0 评论 -
审计练习7——[网鼎杯 2020 青龙组]AreUSerialz
平台:buuoj.cn打开靶机即得源码分析一下<?phpinclude("flag.php");highlight_file(__FILE__);class FileHandler { protected $op; protected $filename; protected $content; function __construct() { $op = "1"; $filename = "/tmp/tmpfile原创 2020-05-31 08:59:06 · 376 阅读 · 2 评论 -
审计练习6——[GXYCTF2019]禁止套娃
平台:buuoj.cn打开靶机查看源码、http头没发现后用扫描器扫一下有git泄露,用githack把源码下下来查看index.php源码如下<?phpinclude "flag.php";echo "flag在哪里呢?<br>";if(isset($_GET['exp'])){ if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp'])) { if原创 2020-05-30 12:22:01 · 264 阅读 · 0 评论 -
审计练习5——[0CTF 2016]piapiapia
平台:buuctf.cn打开靶机源码如下:<?phpif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];}if(!isset($_GET['host'])) { highlight_file(__FILE__);} else { $host = $_GET['host']; $host = esc原创 2020-05-29 16:46:11 · 2123 阅读 · 0 评论 -
审计练习4——[ZJCTF 2019]NiZhuanSiWei
平台:buuoj.cn打开靶机源码如下:<?php $text = $_GET["text"];$file = $_GET["file"];$password = $_GET["password"];if(isset($text)&&(file_get_contents($text,'r')==="welcome to the zjctf")){ echo "<br><h1>".file_get_contents($text,'r')."&原创 2020-05-28 11:35:09 · 235 阅读 · 0 评论 -
审计练习3——[网鼎杯 2018]Fakebook
平台:buuoj.cn打开靶机有个登录和注册,打开登录框看看万能密码,sql注入fuzz,弱密码全跑一遍,没什么变化,那就注册看看。进去之后出现用户记录。点进用户名看看,这是注意到url:有可能存在注入,试着让他报错。单引号测试:可以看到除了数据库错误外,还直接显示出了物理路径。把东西先注出来再说,这里过滤了一些东西,我这就直接sqlmap跑一下了,加个–no-cast参数当然可以手注,看别的师傅是用报错成功注入一系列流程走一遍最后发现除了admin和passwd外,注出原创 2020-05-27 13:13:50 · 420 阅读 · 0 评论 -
审计练习2——[极客大挑战 2019]PHP
平台:buuoj.cn打开靶机挨打(卡爆了)提示了有备份网站,尝试请求www.zip,成功得到源码。解压得如下文件:随便点点,flag.php自然是没有flag的,在index.php中只有一段: <?php include 'class.php'; $select = $_GET['select']; $res=unserialize(@$select); ?>包含了class.php文件,get传入一个select参数再将其反序列化。那原创 2020-05-26 14:37:12 · 212 阅读 · 0 评论 -
审计练习1——[HCTF 2018]WarmUp
审计练习11.[HCTF 2018]WarmUp开个坑吧,把buu上的审计题好好做一遍平台:buuoj.cn1.[HCTF 2018]WarmUpbuu上solves最多的一道题。开局一张滑稽图,F12查看源码,发现提示:source.php查看source.php,源码如下:<?php highlight_file(__FILE__); class emmm { public static function checkFile(&$pag原创 2020-05-25 14:39:23 · 375 阅读 · 0 评论