[BJDCTF 2nd]简单注入】的更多相关文章

[BJDCTF2020]Mark loves cat 源码泄露 使用GitHack.py下载源码 下载之后对源代码进行审计 flag.php代码为: <?php $flag = file_get_contents('/flag'); iindex.py里的关键代码为: <?php include 'flag.php'; $yds = "dog"; $is = "cat"; $handsome = 'yds'; foreach($_POST as $x =…
[BJDCTF 2nd]简单注入 hint.txt出现了内容. 大概意思和国赛一道题相同. username处注入\来转义单引号,password处使用sql语句整数型注入. 例如: 传入admin\ 和 or/**/length(database())>0#会回显stronger字样 传入admin\ 和 or/**/length(database())<0#会回显girl friend字样 大师傅都么得girl friend,我也没得--呀. 直接上脚本吧,二分法还是挺快的. 这里我用的三…
解题思路 打开发现登陆框,随机输入一些,发现有waf,然后回显都是同样的字符串.fuzz一波,发现禁了挺多东西的. select union 等 这里猜测是布尔盲注,错误的话显示的是:You konw ,P3rh4ps needs a girl friend 但是不管传入什么都回显这个,这里想是否有其他信息,我这种菜鸡还不会直接根据测试,猜测出sql语句. robots.txt中发现hint,打开hint.php,发现sql语句.太好了 bypass sql select * from user…
[BJDCTF 2nd]假猪套天下第一 假猪套是一个梗吗? 进入题目,是一个登录界面,输入admin的话会返回错误,登录不成功,其余用户可以正常登陆 以为是注入,简单测试了一下没有什么效果 抓包查看信息,发现源代码有提示 访问L0g1n.php 显示需要在99年后才开放访问,请求头里面有time,修改成一个很大的数字 返回信息变成了需要从本地访问,使用XFF或者Client-ip绕过 现在的错误信息变成了需要来自于gem-love.com,添加Referer头 现在变成了需要使用Commodo…
[BJDCTF 2nd]fake google 进入页面: 试了几下发现输入xxx,一般会按的格式显示, P3's girlfirend is : xxxxx 然后猜测会不会执行代码,发现可以执行 <script>alert(1);</script> 发现输出P3's girlfirend is : xxxxx的页面注释有一句话,师傅把点告诉我们了:ssti注入 <!--ssssssti & a little trick --> 题解就很明显了:因为师傅下手轻了…
[BJDCTF 2nd]old-hack 页面很有意思 同时也告诉了我们是THINKPHP5,我们只需要寻找THINKPHP5的漏洞就可以了. https://www.codercto.com/a/54587.html 可以看这篇文章,我们使用里面的payload命令执行 cat /flag一下 获得flag [GXYCTF2019]禁止套娃 源代码里面没有什么提示,抓包也没有发现什么异常,感觉没什么思路,只能拿出御剑进行爆破,看有没有源代码泄露. 但是御剑扫了之后也没有线索,这里没有想到是.g…
[BJDCTF 2nd]elementmaster 进来就是这样的一个界面,然后就查看源代码 转换之后是Po.php,尝试在URL之后加上看看,出现了一个“.“ ....... 迷惑 然后看了wp 化学???? ?????? 世界迷惑一览 然后就遍历化学元素 就直接上脚本(懒得打化学符号...) import requests url='buuoj上拿的网址' flag='' element=['H', 'He', 'Li', 'Be', 'B', 'C', 'N', 'O', 'F', 'Ne…
[BJDCTF 2nd]文件探测 这两天刷题碰到了一道稍微有难度的题,记录一下,有一些点是未被掌握到的. home.php: <?php setcookie("y1ng", sha1(md5('y1ng')), time() + 3600); setcookie('your_ip_address', md5($_SERVER['REMOTE_ADDR']), time()+3600); if(isset($_GET['file'])){ if (preg_match("…
[BJDCTF 2nd]duangShell   [BJDCTF 2nd]duangShell 点击进去之后提示我们swp源代码泄露,访问http://xxx/.index.php.swp下载该文件 该文件产生的原因是:​使用vi编辑器打开文件时,会生成一个.文件名.swp的备份文件,防止意外退出等情况导致文件内容丢失.产生原因主要是管理员在web目录下修改代码文件,导致生成了.swp备份文件. 我们使用vim -r 文件名 来恢复内容,然后按下任意键就可以看到其中的代码了. windows下我…
[BJDCTF 2nd]duangShell 点击进去之后提示我们swp源代码泄露,访问http://xxx/.index.php.swp下载该文件 该文件产生的原因是:​使用vi编辑器打开文件时,会生成一个.文件名.swp的备份文件,防止意外退出等情况导致文件内容丢失.产生原因主要是管理员在web目录下修改代码文件,导致生成了.swp备份文件. 我们使用vim -r 文件名 来恢复内容,然后按下任意键就可以看到其中的代码了. windows下我在git命令行里面进行操作的, 源代码如下: </…
[BJDCTF 2nd]xss之光 进入网址之后发现存在.git泄露,将源码下载下来,只有index.php文件 <?php $a = $_GET['yds_is_so_beautiful']; echo unserialize($a); GET传参给yds_is_so_beautiful,接着传入的参数会被反序列化后输出,跟题目结合,可以知道当反序列化的结果是 <script>alert(1)</script> 就会让1以弹窗形式显示出来,但是在代码中没有给出类来,所以我们…
[BJDCTF 2nd]Schrödinger 点进题目之后是一堆英文,英语不好就不配打CTF了吗(流泪) 复制这一堆英文去谷歌翻译的时候发现隐藏文字 移除test.php文件,访问test.php文件 结合index.php的内容,应该是需要我们爆破获取test.php页面adminn的密码 尝试输入http://127.0.0.1/test.php 题目有说: If the CPU of the server is idle, it must be able to burst out th…
[BJDCTF 2nd]ydsneedgirlfriend2 附件 步骤: 例行检查,64位程序,开启了canary和nx 试运行一下程序,看看大概的情况,经典的堆块的布局 64位ida载入,习惯性的检索程序里的字符串,发现了后门函数,shell_addr=0x400D86 4.找一下4个菜单选项的函数 add dele dele函数存在明显的UAF漏洞,关于UAF漏洞,具体的看这篇文章 https://my.oschina.net/u/4345478/blog/4656767 show 我们首…
[BJDCTF 2nd]secret 附件 步骤: 例行检查,64位程序,开启了canary和nx 本地试运行一下,看看程序大概的情况,好像是一个什么游戏 64位ida载入,检索程序里的字符串,发现了flag字样 双击,ctrl+x找到了函数 sub_46A3F(),游戏开始界面,让我们输入名字 sub_40136D()函数太长了,没法f5 看汇编,看到首先调用了sub_46A329函数,在sub_46A329里读入了一个数据,off_46D090-1,然后跟标记处的数据比较,如果正确的话,就跳…
[BJDCTF 2nd]8086 附件 步骤: 首先查壳儿,无壳,直接上ida,检索字符串,程序里就一个字符串 没法f5反编译出伪代码,大致看了一下汇编,start函数之后调用了sub_10030函数,sub_10030函数是一个死循环 中间那一串感觉应该是什么算法,选中,按c,force,强制转换成汇编查看 大概就是一个字符串与ox1f进行了异或操作,得到了]U[du~|t@{z@wj.}.~q@gjz{z@wzqW~/b字符串 知道了程序的算法,逆向一下写exp str="]U[du~|t@…
[BJDCTF 2nd]r2t4 附件 步骤 例行检查,64位,开启了canary和nx 64位ida载入,检索字符串的时候发现了后面函数,shell_addr=0x400626 main函数 可以溢出0x8字节,但是开启了canary保护,没法利用,输出点存在格式化字符串漏洞,可以利用 查看程序的汇编可以看到,如果程序检查canary不通过,就会去执行___stack_chk_fail, 由于我们已经获取了后门函数的地址,所以我们可以利用格式化字符串漏洞可读可写的特性,将___stack_ch…
[BJDCTF 2nd]guessgame 附件 步骤: 例行查壳儿,64位程序,没有壳儿 64位ida载入,习惯性的检索程序里的字符串,看到了一串类似flag的字符串,拿去提交,成功 BJD{S1mple_ReV3r5e_W1th_0D_0r_IDA}…
[BJDCTF 2nd]test 步骤 根据题目,ssh连接一下靶机 登录成功后,ls看一下当前目录下的文件,根据提示可知,我们没法直接获取flag字符串,但是我们可以读取test的源码, test.c 代码 可以看到这个程序在执行系统调用system的时候设置了过滤,过滤了"n.e.p.b.u.s.h.i.f.l.a.g.|./.$.`.-.<.>.."这些字符 我们去查看一下/usr/bin(存放命令的目录)这个目录里过滤了这些字符后还有那些命令是允许我们使用的 因为一…
[BUUCTF]PWN12--[BJDCTF 2nd]r2t3 题目网址:https://buuoj.cn/challenges#[BJDCTF%202nd]r2t3 步骤: 例行检查,32位,开启了NX保护 nc一下看看程序的大概执行情况 32位ida载入,shift+f12查看程序里的字符串,看到了system函数和 '/bin/sh' 字符串 双击跟进,ctrl+x找到调用改字符串的函数,找到了程序里的一个后门函数,shell_addr=0x804858B 根据nc得到的提示字符串,找到输…
[BUUCTF]PWN15--[BJDCTF 2nd]one_gadget 附件 步骤: 例行检查,64位,保护全开 nc试运行一下程序,看看情况,它一开始给了我们一个地址,然后让我们输入one gadget的地址 64位ida载入,shift+f12查看字符串,根据nc看到的字符串,找到关键函数 题目一开始输出的是printf函数的地址,题目一开始给了libc,知道了它的内存地址,就能够算出程序的偏移量了 print_addr=0x7fbe7e114830 offset=print_addr-…
最近在练习sql注入写脚本,记录一下思路,刚学的and 1=1也拿出来溜溜 http://119.23.73.3:5004/?id=1 首先,没有被过滤是正常显示. 没有被过滤但是查询不到就是空白,比如?id=99999 waf过滤关键词,提示whatfuck ① 我首先判断的是有没有用trim()函数,要知道trim函数和过滤是不一样的. 区别很简单,举个例子.trim默认移除字符串左右两边的空格 http://119.23.73.3:5004/?id=1(此处1后边有空格) 如果使用了tri…
三道比较简单的的题放一起一写,old-hack是ThinkPHP框架的一个nday,Schrödinger和elementmaster没啥考点,就是脑洞 一.old-hack 进入题目没发现什么Hint和有用的东西,只给出了ThinkPHP5的提示,猜测应该是考察一个ThinkPHP5的nday, 想办法构造一个ThinkPHP的报错看一下详细版本: http://a504dd5e-6b7c-407f-ab11-ee1c9efdc3f3.node3.buuoj.cn/index.php?s=1…
本题考查python jinjia2的ssti,其实tplmap直接梭哈都可以 随便输入一个值,查看源代码就能看到一个Hint: 用下面的流程图测试一下,看看是什么模板引擎: 用Payload测试之后发现是jinjia2的模板引擎,然后构造jinjia2 ssti的命令执行payload: {% for c in [].__class__.__base__.__subclasses__() %}{% if c.__name__=='catch_warnings' %}{{ c.__init__.…
获得的新知识: 1.kernel32.dll,user32.dll,ntdll.dll等一些dll在同一个PC环境下的映射到虚拟内存基址是一样的. 2.在win8以上系统上,更改PE文件的入口点要大于SizeOfHeaders(在可选文件头中),否则会报错无法运行. 1.实现原理 PE可选文件头有一个AddressOfEntryPoint,更改这个值指向自己代码,执行完自己代码再跳转到原来入口点. 2.实验过程 1.字节的代码 shellcode: 6A 00 6A 00 6A 00 E8 __…
BBSXP最新漏洞 漏洞日期:2005年7月1日受害版本号:眼下全部BBSXP漏洞利用:查前台password注入语句:blog.asp?id=1%20union%20select%201,1,userpass,username,1,1,1%20from%20[user]%20where%20membercode=5 查后台password注入语句:blog.asp?id=1%20union%20select%201,1,adminpassword,username,1,1,1%20from%2…
简单四则运算更新 功能:由随机数决定出题为10个以内的数字,并确定是否出现括号(仅限一对),顺序输出表达式,并用栈的方式进行计算,判断正误.其他功能有待进一步实现. 头文件 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> #include <math.h> 栈的结构体 typedef struct stack { double * e; in…
sql注入基础原理 一.Sql注入简介 Sql 注入攻击是通过将恶意的 Sql 查询或添加语句插入到应用的输入参数中,再在后台 Sql 服务器上解析执行进行的攻击,它目前黑客对数据库进行攻击的最常用手段之一. 二.Web 程序三层架构 三层架构(3-tier architecture) 通常意义上就是将整个业务应用划分为: 界面层(User Interface layer) 业务逻辑层(Business Logic Layer) 数据访问层(Data access layer). 区分层次的目的…
进入首页: 首页告诉了我们是thinkphp5的漏洞. 知道了是哪个版本的话就搜一搜喽:最后发现是thinkphp5.0.23的命令执行 payload_1:查看根目录文件,发现flag位置 http://90b89500-3ac6-40a5-9f1e-e84e8923115f.node3.buuoj.cn POST:_method=__construct&filter[]=system&server[REQUEST_METHOD]=ls / payload_2:读取flag http:/…
先贴一下Y1ng大佬的WP elementmaster 脑洞确实大,源码中hidden的id可以用hex解码成Po. 在URL后面输入Po.php得到一个点, 然后不知所措 被水淹没 实际上这里是要遍历化学元素周期表来获得全部的信息,最终获得flag 脚本如下 mport requests url='http://68607684-1f65-45a1-96b6-379176edb7f3.node3.buuoj.cn/' flag='' element=['H', 'He', 'Li', 'Be'…
感觉算是这次比赛里面综合性很强的一道题了,主要考察SSRF.PHP伪协议包含.挖掘逻辑漏洞和一个小tirck.委屈的是第一天晚上就做到了最后一步,想到了SESSION置空即可绕过,但是最后读Flag姿势不对导致比赛结束都没做出来......QAQ 进入题目Header发现Hint,BJD一贯的尿性,做BJD题目的时候F12不能关 - .- 根据提示进入home.php,发现URL变成了: http://d3a0ad27-3c95-46f7-bfc2-208e580c984b.node3.buuo…