冲冲冲

2018年4月

MISC:PICTURE
解题思路:附件下载下来为一张png图片。一顿操作之后用binwalk跑了一下发现藏有数据
QQ截图20180429174442.png
binwalk -e 分离出来是两个文件。打开其中一个可以看到一串经过base64加密过后的字符
串。用base64脚本跑出来的文件经WinHex打开后可以发现存在ZIP关键字——PK。搜索504B0506找到文件尾,将其分离提取出来,并将头部的4B和50的位置对调得到一个带密码且非伪加密的ZIP文件。
3.png
继续观察解码出来的内容,我们不难观察到里面的几个关键信息:

python2.7
File" " line 1

。该特征体现这是一个python程序的报错内容。但是并不完整。而这里面已经有password的提示。搜索完整的报错内容应该为:ZeroDivisionError: integer division or modulo by zero。尝试密码成功,得到一个文件。
5.png
最后Uudecode后即可获得flag

MISC:寻找入侵者
题目描述:“黑客使用无线钓鱼攻击一个SSID为“CyberPeace”的热点,但是我们的蜜罐系统捕获了他的数据包,并且已经得知他的握手包密码就是他的网卡地址。可是根据我们最新获得的情况,他又发送重连请求的Malformat Frame试图崩溃我们的无线路由器。 请从attack包中找到密码,并解开他的数据包,找到那条畸形数据。”

解题思路:从题目描述中能得知,握手包的密码即为黑客网卡地址,同时这还是该Wi-Fi的密码。所以我们先在攻击包中用Wireshark将所有的设备的MAC地址提取出来,然后用aircrack-ng对握手包来进行字典爆破。
1.png
先用aircrack-ng分析握手包得到握手包的各种数据。
接着用字典爆破爆破可以得到结果——黑客网卡MAC: 88:25:93:c1:c8:eb
7.png
通过MAC地址确定攻击机为Tp-LinkT_c1:c8:eb
接着使用刚刚爆破出来的密码用airdecap-ng来读握手包得到一个新的cap文件
QQ截图20180429192315.png
Wireshark打开分析HTTP流,最后一行有一个key.rar吸引了我。
10.png
查看详细有一个链接,下载key.rar打开后依旧是一个pcap回到题目,黑客为了使路由器崩溃而发了畸形数据,所以可以分析得出,该数据包依旧由原网卡发出,且改畸形数据包按照时间顺序排列应该在较为后方的位置。
wlan.sa == 88:25:93:c1:c8:eb 过滤Tp-LinkT_c1:c8:eb
11.png
可以看到除了最后一条以外,上面的数据包都是Malformed Packet。然而点开都没有什么异常字符串。后点开最后一个数据包发现了一条字符串即为flag
12.png

//部分内容转自https://www.cnblogs.com/pcat/p/5256288.html

因为做CTF时要用到binwalk时每每还得打开虚拟机,于是便想看看是否有Windows环境下的binwalk。搜索后看到一篇相关博客。但可能因为我的知识面不够,没能很好的理解原文作者的完整意思,便自己摸索。写此篇博客给大家参考。

首先现在github上下载binwalk项目https://github.com/ReFirmLabs/binwalk
接着下载后打开cmd,cd进入所下载的文件解压后的路径。输入python setup.py install接着就会开始安装。
然后我们进入py环境测试一下binwalk是否有被安装完成。
输入
>>> import binwalk

如果没有报错即安装成功。
这时已经安装好了,但是我们想要更好的使用binwalk。我们可以将其加入系统变量让其可以在cmd中调用。

以下是转载自pcat的代码和方法:
原文链接:https://www.cnblogs.com/pcat/p/5256288.html

方法一:
创建一个文件夹,在文件夹里新建一个名为binwalk.bat文件。(代码如下)

@echo off
echo * suggest: you'd better to input the parameters enclosed in double quotes.
echo * made by pcat
python "%~dp0\p_binwalk.py" %1 %2 %3 %4 %5 %6 %7 %8 %9

在文件夹里再新建一个p_binwalk.py文件。(代码如下)

# -*- coding:utf-8 -*-
# author: pcat
# http://pcat.cnblogs.com

import sys
import binwalk

if __name__ == "__main__":
    lst=sys.argv
    if len(lst)<2:
        print("No files.")
        exit()
    try:
        if lst[1][0]=='-':
            binwalk.scan(*lst[2:],signature=lst[1])
        elif lst[1][0]!='-':
            binwalk.scan(*lst[1:],signature=True)
    except:
        pass

打开系统设置-环境变量-系统变量的-path-新建,指定刚刚创建的文件夹的路径即可。(该文件夹和变量存在的情况下即可在cmd内使用binwalk)

方法二:
打开系统设置-环境变量-系统变量-新建-变量名为PYTHON_HOME的系统变量。变量值为你python的安装地址,默认为C:\Python27
接着新建一个binwalk.bat 文件。(代码如下)

:: author: pcat@chamd5.org
:: http://pcat.cnblogs.com
@echo off
echo * suggest: you'd better to input the parameters enclosed in double quotes.
echo * made by pcat
echo * ***********************************************************************
if defined python_home (
    python "%python_home%\Scripts\binwalk" %1 %2 %3 %4 %5 %6 %7 %8 %9
)else (
    echo "you need to set PYTHON_HOME"
)

打开系统设置-环境变量-系统变量的-path-新建,指定该文件夹即可。(该文件夹和变量存在的情况下即可在cmd内使用binwalk)