CTF
文章平均质量分 52
半两八金
这个作者很懒,什么都没留下…
展开
-
NewStarCTF 2023 公开赛道 WEEK2|WEB 游戏高手
打开控制台,输入 gameScore = 1000000,回车。app_v2.js就是游戏文件。原创 2023-10-20 18:15:50 · 365 阅读 · 0 评论 -
NewStarCTF 2023 公开赛道 WEEK2|MISC1-序章
看起来是sql注入日志,盲注类型,而且已经是注入在最后一步,获取字段内容了。可以从日志里提取注入信息。原创 2023-10-20 17:57:12 · 478 阅读 · 0 评论 -
NewStarCTF 2023 WEEK1|PWN ret2text
main函数,里read函数,分配了32(0x20)个大小 指定了0x100,有栈溢出漏洞。查看起始地址 为4011FB。原创 2023-10-08 21:00:49 · 522 阅读 · 0 评论 -
buuctf PWN ciscn_2019_c_1
amd64的参数调用顺序是如下序列的自后而前,即:完成传递参数(地址)->本函数地址 -> 返回地址。encrypt()里面的get()可以溢出,栈大小为50h。puts()可以用来泄露libc基址。原创 2023-10-08 16:40:06 · 237 阅读 · 0 评论 -
buuctf PWN jarvisoj_level2
漏洞,buf数组只给了0x88的大小,但是最多可以读入0x100个字节的数据,所以多读入的数据就会向下把栈给覆盖掉。把function函数的返回地址覆盖成system函数的入口地址,然后把参数改成"bin/sh"字符串的地址0x0804A024。地址为:0x0804845C。地址为:0x0804849E。原创 2023-10-06 22:40:54 · 146 阅读 · 1 评论 -
[第五空间2019 决赛]PWN5
找到储存密码的地方为0x0804C044,我们一个字节一个字节的存入,所以不能是直接用0x0804C044,而是是用四个地址0x0804C044,0x0804C045,0x0804C046,0x0804C047,前面的四个构造地址总长度为4 * 4字节,构造b'%10$hhn%11$hhn%12$hhn%13$hhn', 单次打印%n = 0x00000010是小端序, 导致0x10在高字节, 连续四次打印都覆盖了前面的三个字节, 最终值为 0x10101010。原创 2023-10-06 18:45:15 · 159 阅读 · 0 评论 -
buuctf pwn1_sctf_2016
看到有.‘rodata:0000000000400684 00000008 C /bin/sh’,点进去看。read()并没有限制输入,显然存在栈溢出漏洞。存在后门函数,函数起始位置400596。拖入IDA,shift+F12查看。原创 2023-10-05 11:35:24 · 238 阅读 · 0 评论 -
buuctf PWN warmup_csaw_2016
发现函数gets(v5),是栈溢出。查看程序起始地址0x40060D。发现直接有显示flag函数。看到v5占用64个位置。下载附件,IDA查看。原创 2023-10-04 17:35:04 · 422 阅读 · 0 评论 -
buuctf PWN rip
fun函数的地址是0x401186。下载pwn1 用IDA打开。原创 2023-10-04 16:42:56 · 84 阅读 · 0 评论 -
buuctf pwn test_your_nc
nc是个linux上的指令。下载test文件,使用。输入cat flag。原创 2023-10-02 21:02:10 · 102 阅读 · 0 评论 -
buuctf 流量!鲨鱼
使用http contains "cmd"进行筛选。进行两次base64解密,得到flag。使用工具WireShark的抓包筛选。发现了有远程命令行执行 RCE。右键,追踪流,http流。得到base64加密的。下载题目是个流量文件。原创 2023-10-01 17:16:45 · 200 阅读 · 0 评论 -
buuctf Begin of PHP
is_numeric($num)函数绕过。原创 2023-09-30 23:57:56 · 263 阅读 · 0 评论 -
buuctf AndroXor
xor函数为我们要逆向的函数,str就是我们要求的flag,str2为。使用工具jadx-gui-1.2.0打开。原创 2023-09-30 18:07:50 · 53 阅读 · 0 评论 -
buuctf babyaes
所以异或的结果高16为bytes、128位bits不变,key又是两个bytes重复16次所以,它的高128位bits和低128位bits是一样的。AES加密算法全称是Advanced Encryption Standard(高级加密标准),是最为常见的对称加密算法之一。可知key是256bits,iv是128bits。然后再把key异或x就得到了iv。原创 2023-09-30 13:43:11 · 173 阅读 · 0 评论 -
[watevrCTF-2019]Cookie Store
对eyJtb25leSI6IDUwLCAiaGlzdG9yeSI6IFtdfQ==进行解码,发现是base64。2 解码结果: {"money": 50, "history": []}要得到flag,必须购买最后一项,发现钱不够,那么我们修改。购买第一个发现,cookie值为。进行base64加密。原创 2023-09-26 16:02:40 · 145 阅读 · 0 评论 -
[红明谷CTF 2021]write_shell
意思是在/sandbox/c55e0cb61f7eb238df09ae30a206e5ee中的index.php写入data数据。过滤单引号,可以使用反引号绕过,在php中,被反引号包裹的代码会被当做。waf 过滤了’ 空格 _ php;原创 2023-09-25 22:40:25 · 61 阅读 · 0 评论 -
[GWCTF 2019]枯燥的抽奖
现在知道十个字符,那就可以通过工具php_mt_seed爆破 seed。使用php_mt_seed爆破seed得到:455472525。先用生成已知的十个字符“oS7tocGlzN”的格式为。F12查看 ,发现check.php。再把种子放进php程序中,生成字符串。原创 2023-09-25 19:13:14 · 89 阅读 · 0 评论 -
[CISCN2019 华北赛区 Day1 Web2]ikun
URL解码: \u8fd9\u7f51\u7ad9\u4e0d\u4ec5\u53ef\u4ee5\u4ee5\u8585\u7f8a\u6bdb\uff0c\u6211\u8fd8\u7559\u4e86\u4e2a\u540e\u95e8\uff0c\u5c31\u85cf\u5728\u006c\u0076\u0036\u91cc。使用了JWT身份验证,这里用户名为tt,密码为123,用解密工具:c-jwt-cracker试着爆破一下。题目提示 ,一定要找到lv6!原创 2023-09-24 16:39:40 · 239 阅读 · 0 评论 -
[WUSTCTF2020]CV Maker
把名字 1juhua.php.jpg的末尾.jpg去掉上传,得到文件上传地址uploads/d41d8cd98f00b204e9800998ecf8427e.php。将这段代码粘贴到txt,文件另存为1juhua.php.jpg,然后用burpsuit 上传抓包。证明一句话图片码上传成功,利用中国蚁剑连接。发现可以上传图片,试试图片码🐎,先注册一个账号,然后登录。原创 2023-09-22 17:58:53 · 109 阅读 · 0 评论 -
[CSCCTF 2019 Qual]FlaskLight
F12看源码bp抓包由此判断为jinja2模板注入1. 获取配置{{config}}?原创 2023-09-19 22:12:27 · 53 阅读 · 0 评论 -
[Zer0pts2020]Can you guess it?
题目: 正则表达式是表示不能以config.php为结尾,在后面添加%ff绕过basename()函数的作用是:返回路径中的文件名部分,并会自动去掉前面或后面非ASCII值的符号。%ff恰好被去掉。运行的是,但是获取到的是,然后再通过读取 现在的payload为:原创 2023-09-18 22:03:18 · 90 阅读 · 0 评论 -
[MRCTF2020]套娃
需要绕过substr_count审查“_”、preg_match函数。_可以使用 .代替 b_u_p_t 变为b.u.p.t。我们需要file=flag.php,通过一下代码编译。解码结果为:post me Merak。查看 /secrettw.php。preg_match函数使用。原创 2023-09-17 18:21:53 · 225 阅读 · 0 评论 -
[WUSTCTF2020]颜值成绩查询
输出: flag{e58481f5-0a73-4f49-a6c5-e92e6806eca2}输出: information_schema,ctf。输出: flag,score。输出: flag,value。即相同为0,不同为1。原创 2023-09-14 21:59:54 · 89 阅读 · 0 评论 -
[FBCTF2019]RCEService
'cmd':'{"cmd":"/bin/cat /home/rceservice/flag","r1":"'+'a'*1000000+'"}' #设置r1参数,值为100万个a。r=requests.post(url=url,data=data).text #使用post方法请求,get方法会因为请求头过大而报错。原题是用POST传参,在这里记录一下原题的脚本,因为复现是用GET传参,所以会导致414报错,第一种方法:因为preg_match只会去匹配第一行,所以这里可以用多行进行绕过。原创 2023-09-13 21:29:08 · 107 阅读 · 0 评论 -
[0CTF 2016]piapiapia
,一共34个字符,要逃逸成功只需要长度增加34,把我们的目标给挤出去就行了,这里正好利用filter来将长度增长,假如我传入 where,那么被替换以后就是 hacker,长度增加了1,一共是34个 where。在register.php页面注册一个账号,然后登录,到了上传页面,burpsuit抓包。使用工具dirsearch扫描目录,扫到文件www.zip,下载下来。提交,有错,nickname过滤绕过:使用数组nickname[]原创 2023-09-13 15:55:56 · 84 阅读 · 0 评论 -
[GYCTF2020]FlaskApp
结果 : ['bin', 'boot', 'dev', 'etc', 'home', 'lib', 'lib64', 'media', 'mnt', 'opt', 'proc', 'root', 'run', 'sbin', 'srv', 'sys', 'tmp', 'usr', 'var', 'this_is_the_flag.txt', '.dockerenv', 'app']加密界面,输入{{3*3}},得到e3szKjN9fQ==加密界面,输入{{3+3}},得到e3szKzN9fQ==原创 2023-09-06 21:48:04 · 124 阅读 · 1 评论 -
[SUCTF 2019]Pythonginx
管理脚本:/usr/lib64/systemd/system/nginx.service。配置文件目录为:/usr/local/nginx/conf/nginx.conf。主配置文件:/etc/nginx/conf/nginx.conf。程序默认存放位置:/usr/share/nginx/html。模块:/usr/lisb64/nginx/modules。日志默认存放位置:/var/log/nginx。应用程序:/usr/sbin/nginx。配置文件存放目录:/etc/nginx。原创 2023-09-04 23:13:34 · 138 阅读 · 1 评论 -
[De1CTF 2019]SSRF Me
param=flag.txt的时候,返回md5(‘secert_key’ + ‘flag.txt’ + ‘scan’),即为md5(secert_keyflag.txtscan)2、action=read,将result.txt的内容读出(如果我们想要将result.txt的内容读出来则需要伪造一个action为read的签名。1、action=scan,param=flag.txt ,将flag.txt的内容读到result.txt中。还有提示:flag is in ./flag.txt。原创 2023-09-04 18:58:55 · 110 阅读 · 1 评论 -
[BJDCTF2020]EasySearch
登录界面查看源码、sql注入测试,并没有突破口使用dirsearch 扫描,未能扫描出文件,使用Test404轻量后台扫描器(字典php_bak.txt)发现,有文件index.php.swp泄露。扫描时发现,有大佬说dirsearch 能扫描出来,但是实际发现dirsearch的字典目录里只有“.index.php.swp”,而没有“index.php.swp”,所以要用dirsearch扫描出来,必须指定字典。一、代码分析使用admin、2020666登录系统,未发现任何有用的。原创 2023-09-02 17:31:29 · 247 阅读 · 0 评论 -
BUU-REVERSE-rsa
两个文件1、通过网站分解公钥。原创 2023-09-02 16:09:56 · 135 阅读 · 0 评论 -
BUUCTF(reverse)findit
y就是所要找的flag,直接对代码修改为pytho代码。1、使用工具jadxgui打开文件。题目下载一个apk文件。原创 2023-09-02 12:33:21 · 123 阅读 · 0 评论 -
[WUSTCTF2020]level1
i&1 – 按位与运算,取 2进制整数 i 的最低位,如果最低位是1 则得1,如果最低位是0 则得0。奇数 i 的最低位 是1,偶数i 的最低位 是0。1、将level1加后缀exe,用脱壳工具“Exeinfo PE万能查壳软件”发现没有壳,是64位的。output.txt文件中输出的数字,是通过i是奇数还是偶数,决定了输出的值。2、用反编译工具IDA(64)打开level1.exe。两个文件,一个level1,一个output.txt。看到flag字样,按F5查看伪代码。原创 2023-09-02 11:34:57 · 190 阅读 · 0 评论 -
BUU-CRYPTO2一张谍报
今朝梆子二更头,老鹰蹲猎东口,三更鼹鼠断东口亮子,老鹰进北口上树,三枝遇孙子,孙子对虎符曰:南天菩萨放鹰捉猴头。鹰对:北朝罗汉伏虎乱天门。合符放行,卡符扯呼。人离烧树,鼹鼠归洞,孙子找爷爷。flag{南天菩萨放鹰捉猴头}原创 2023-09-01 21:44:17 · 100 阅读 · 1 评论 -
[BSidesCF 2019]Kookie
根据题目提示,需要以admin身份登录,burpsuit 里增加Cookie: username=admin。原创 2023-08-29 18:33:55 · 226 阅读 · 1 评论 -
[GWCTF 2019]BabyRSA
求出c1,c2后,需要解方程组,才能获得flag。已知,e,n,m1,m2 可以求出c1,c2。n可以通过几种方式分解出p、q。原创 2023-08-29 17:19:42 · 280 阅读 · 1 评论 -
[WUSTCTF2020]babyrsa
print(long_to_bytes(m)) #或者使用long_to_bytes()将字节值转换成最后的明文flag。在网站 http://www.factordb.com/index.php上分解n。d = gmpy2.invert(e, (q-1)*(p-1))#计算逆元。m = gmpy2.powmod(c,d,n)#解密m = c^d % n。原创 2023-08-27 12:03:14 · 184 阅读 · 1 评论 -
[极客大挑战 2019]FinalSQL
一、题目分析登录框测试,发现各种测试都是一样的反应。随机看了一下,几个紫色数字,点了后有回显。数字输入’后,报错,判断从这里开始注入测试。1、页面没有数据库报错回显,且union被过滤,无法采用联合查询。2、页面爆出的错误非数据库原始错误,无法使用报错注入。3、时间盲注耗费时间,非必要一般不使用。sql异或注入,经过尝试发现^符号未被过滤,(1^2=3)首先可以根据1^0=1 1^1=0 来判断闭合方式(数字型还是字符型)。因为如果是字符型,不会执行^。简单判断是数字型。二、解题。原创 2023-08-26 17:57:02 · 394 阅读 · 0 评论 -
[SWPU2019]Web1
一、题目分析网页有登录 注册 广告发布页面,认为是sql注入,每个页面测试后,发现没有注入的地方。字仔细观察后,发现发布过的广告里面,有sql语法报错信息。由此判断存在二次注入。广告详情二、解题经过测试,过滤有空格和 #, --+, and、or 还有很多常用的关键字。原创 2023-08-20 18:00:37 · 176 阅读 · 1 评论 -
[ASIS 2019]Unicorn shop
一、题目分析F12查看源码提示utf-8编码很重要题目提示python unicode,利用的漏洞是unicode安全问题,是关于Unionde等价性的漏洞post输入id=4&price=1337 时提示Only one char(?) allowed!只能使用一个字符,一个字符能够购买id4,于是我们需要找到一个字符比1337大的数字,前端html使用的是utf-8,后端python处理使用的是unicode,编码不一致造成了转码安全问题二、解题。原创 2023-08-20 16:18:13 · 107 阅读 · 1 评论 -
[安洵杯 2019]easy_serialize_php
SESSION由userinfo['img']、_SESSION["user"]和_SESSION['function']组成,考虑到有过滤,可以采用反序列化字符逃逸来构造SESSION['img']的值。反序列化字符逃逸的原理比较好理解,就是在构造键值的时候故意构造出会被过滤的的值,然后会被过滤函数给过滤掉,但是序列化后的字符串记录的值的长度却不会因为被过滤后而改变,所以就会把序列化后的字符串的结构当做值的内容给读取。序列化后:a:2:{s:4:"flag";原创 2023-08-19 23:04:46 · 60 阅读 · 0 评论