0x00 ext3

linux挂载光盘,可用7zip解压或者notepad搜flag,base64解码
放到kali
挂载到/mnt/目录

mount 630a886233764ec2a63f305f318c8baa /mnt/
cd /mnt/
ls

寻找 find | grep 'flag'find -name 'flag*'
查看 cat ./O7avZhikgKgbF/flag.txt

eg:查找key.txt这些文件里是否存在
grep -r ‘key.txt’
显示在1文件,看文件类型 root@kali:/mnt# file 1
1: gzip compressed data, was "key.txt", last modified: Wed Oct 1 06:00:52 2014, from Unix, original size 30.
解压并显示gzip下的文本内容 root@kali:/mnt# gunzip < 1
SECCON{@]NL7n+-s75FrET]vU=7Z}

war文件unzip -c dw.war

0x01 pdf

pdfinfo fa4bcaa5554447cea4c69c9b75a43283.pdf (pdf属性,也可直接Adobe Reader查看)

pdftotext fa4bcaa5554447cea4c69c9b75a43283.pdf(查看pdf隐藏文本,也可Adobe Reader导出文本???)
使用pdf.js(可Google装插件即可用)打开

火狐(打开pdf.js的路径/web/viewer.html导入)我把pdfjs放到apache上的htdocs目录
file:///C:/www/Apache24/htdocs/pdfjs-2.2.228-dist/web/viewer.html
控制台输入:document.documentElement.textContent

0x02 shell命令

解base64 root@kali:~/文档#

echo -n "Tm9wZSAsIG5vdCBoZXJlIDspCg==" | base64 -d -

Nope , not here ;)

echo -n "BABA BBB BA BBA ABA AB B AAB ABAA AB B AA BBB BA AAA BBAABB AABA ABAA AB BBA BBBAAA ABBBB BA AAAB ABBBB AAAAA ABBBB BAAA ABAA AAABB BB AAABB AAAAA AAAAA AAAAB BBA AAABB" **| tr** AB .-

-.-. --- -. --. .-. .- - ..- .-.. .- - .. --- -. ... --..-- ..-. .-.. .- --. ---... .---- -. ...- .---- ..... .---- -... .-.. ...-- -- ...-- ..... ..... ....- --. ...--

0x03 文件块头损坏


rar 能用(文件头52617221),查找在rar里png前的文件头
查看相关资料:https://blog.csdn.net/vevenlcf/article/details/51538837
if HEAD_TYPE==0x74(表明是文件头)

0x04 ps:双图层、二维码增加,合并

打开png发现两个不同帧?改成gif发现还是空白,binwalk没有隐藏文件
stegSolove打开只有一半的二维码保存,用在线ps看看

把隐藏的图层复制到另一文件保存gif
再stegSolove打开也是半个二维码
重叠三个图片。在线链接:https://pixlr.com/express/
二维码左下方向

左上

右上

0x05 jar包在线反编译,酷

http://www.javadecompilers.com
eg:找到PlaneGameFrame.java

0x06 JPK使用

c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2

使用JPK(16进制转化为7位2进制binary)再二进制转ASCII


如来十三掌
得到base64码:MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9
但是要先进行ROT13然后再base64解码:

0x07 WIRESHARK篇

jpg开头FFD8结尾FFD9
png开头8950结尾6082
gif开头4749结尾003B
bmp开头424D
gz开头1f8b
zip开头504B
mp3开头4944
pdf开头2550
rar开头5261
word开头D0CF
ctrl+f显示字符串、分组字节流,搜索flag,追踪tcp流
导出图片之类的,追踪HTTP流,找到要复制的内容点击原始数据,把搜索开头结尾完整复制出16进制数据粘贴到winhex,选择ascii-hex。保存即可打开

0x08 图片

foremost
winhex
binwalk
图片信息outguess
安装

git clone https://github.com/crorvick/outguess
cd outguess/
./configure && make && make install

使用

outguess -r xxxx.jpg .txt

ls
stegsolve合并两张图片analyse->combiner。常有会隐藏信息在lsb,stegsolve根据查看各图有效位详情(选择单独或三个)rgb的最低有效位0位。

注意l与1太难辨认了
图片也可网上找到原图
放到tweakpng 工具中,发现它的检验值是错的
使用checkpng -v 检查图片结构是否存在问题,发现有一些异常的IDAT块。

有这么多工具不如网上找个工具包,eg:https://ctf-wiki.github.io/ctf-tools/collections/

先base64解码得到ggQ@gQ1fqh0ohtjpt_sw{gfhgs#}
一看格式,无非是凯撒+栅栏,解题关键是flag格式ssctf{},所以先凯撒得到
ssC@sC1rct0atfvbf_ei{srtse#}

16进制转字符串
666c61677b68656c6c6f5f776f726c647d

看到git-upload-pack字样,.nijiakadaye、config字样,很大可能是git泄露,尝试下浏览器访问http://60.191.205.87/.nijiakadaye

0x09 githack神器

git clone https://github.com/BugScanTeam/GitHack
cd GitHack
python GitHack.py http://.../.nijiakadaye/
cd dist/...

#然后就是git命令看看历史提交记录

git log -u
diff --git a/ssctf/phps/templaCes/flag.txt b/ssctf/php/templates/flag.txt

文件没后缀,先用binwalk和file来观看
用winhex打开文件,发现有pk,也就是压缩包的标识头

U2FsdGVkX1+VpmdLwwhbyNU80MDlK+8t61sewce2qCVztitDMKpQ4fUl5nsAZOI7bE9uL8lW/KLfbs33aC1XXw==
有+有==(狗头)
U2Fsd头,按照你的过往经验,一般是aes加盐
http://tool.chinaz.com/Tools/textencrypt.aspx
![在这里插入图片描述]()
也可不填密码就是不加盐试试

0x10 zip明文攻击

0x11 水平镜像反转图片

convert -flop reverse.jpg reversed.jpg

-flip #垂直
gif图片帧分离

convert ggg.gif hh.jpg

横向合成,用montage

montage flag*.png -tile x1 -geometry ++ a.png

-tile是拼接时每行和每列的图片数,这里用x1,就是只一行
-geometry是首选每个图和边框尺寸,我们边框为0,图照原始尺寸即可
*的意思指的所有的.png
tcpxtract可以把所以的html图片那些给提取出来
tcpxtract -f 55.pcap Found file of type "png" in session

python反编译--在线https://tool.lu/pyc/
盲水印见BlindWaterMark(两个看不到的图片则可能存在哦)

python2 bwm.py decode day1.png day2.png flag.png

0x12 xortool工具的使用

pip2 install xortool
xortool 1 #查看1文件密钥长度最可能是
xortool 1 -l 13 -c 20 #*-l就是指定密钥长度,-c表示出现频率最高的字符。根据经验,比如文本内容一般是空格(20),二进制文件一般是00*

#得出key

import os

c = open("",'rb').read()
key = "GoodLuckToYou"
def xor(c,k):
keylen = len(k)
res = ""
for pos,c in enumerate(c):
res +=chr(ord(c) ^ ord(k[pos % keylen]))
return res
print xor(c,key)

jar包双击不可用只能cmd上运行
修改注册表
搜索regedit
HKEY_CLASSES_ROOT\Applications\javaw.exe\shell\open\command——"E:\java\jre\bin\javaw.exe" -jar "%1”

参考、学习文章:
[https://cloud.tencent.com/developer/article/1100387]
[https://www.bodkin.ren/index.php/archives/702/]
[CTF中的杂项小结]
[https://www.jianshu.com/p/02fdd5edd9fc]
[https://blog.csdn.net/u010391191/article/details/80818785]
[zlib解压]
[https://www.bodkin.ren/index.php/archives/622/]
[Volatility内存取证]
[https://blog.csdn.net/qingchenldl/article/details/78447003]
[https://www.freebuf.com/column/152545.html]
[https://blog.csdn.net/yalecaltech/article/details/90574874]
[wireshark取证分析]
[https://www.freebuf.com/column/199838.html]

最新文章

  1. ZXing生成二维码
  2. 28. Implement strStr()
  3. 20款时尚的 WordPress 博客主题【免费下载】
  4. Eclipse spket插件 内置js文件
  5. DOM 元素节点几何量与滚动几何量
  6. js控制html元素的readonly属性
  7. linux环境配置
  8. JS Attribute属性操作
  9. Spark快速数据处理
  10. [TYVJ] P1027 木瓜地
  11. Windows XP密钥(共38枚)
  12. pwnable.kr bof之write up
  13. Spring Boot 2.x(四):整合Mybatis的四种方式
  14. python的面试问题
  15. SwingWorker
  16. hdu 1392 Surround the Trees 凸包裸题
  17. Asp.net core 学习笔记 (授权)
  18. boost 时间
  19. java中成员变量、代码块、构造函数运行顺序
  20. HTML系列(1)简介

热门文章

  1. BZOJ 4392 卡牌游戏
  2. 微信开发中使用微信JSSDK和使用URL.createObjectURL上传预览图片的不同处理对比
  3. VMware15.5版本下安装CentOS_7_64bit
  4. Java学习笔记之面向对象
  5. [JZOJ4685] 【NOIP2016提高A组8.12】礼物
  6. 剑指Offer(十九)——顺时针打印矩阵
  7. i春秋DMZ大型靶场实验(一)内网拓展
  8. [洛谷P2396]yyy loves Maths VII $\&amp;$ [CF327E]Axis Walking
  9. 实战SpringCloud响应式微服务系列教程(第八章)构建响应式RESTful服务
  10. 优化 .net core 应用的 dockerfile