CTF学习记录01 HashMePlease

https://ringzer0team.com/challenges/13

分类:CodingChanllenge

题目的目标大概就是在两秒内提取Message,再decode,然后得到Flag。
然而显然,手工两秒内提取是不现实的。
所以要用到脚本。
reference:https://github.com/professormahi/CTF/tree/master/ringzer0team/CodingChallenges/Hash%20me%20please

使用工具:curl,sha512sum

小知识普及:

SHA-2 : https://en.wikipedia.org/wiki/SHA-2
curl : https://curl.haxx.se/docs/manpage.html
sha512sum : https://linux.die.net/man/1/sha512sum
cat SHA512Hash | sha512sum | head -c 128
egrep & grep & fgrep : http://blog.chinaunix.net/uid-28584525-id-3510819.html
egrep后面跟的正则表达式:这个后面的“+”的前后是不能有空格的哦!
egrep '[[alnum]]+<br />'
sed :
egrep之后的结果如下
6h7WU0UBe8ek6JiEHsISK51yE4wweK6bR3YCUI3ZG89DHh7eAFXaBPz5JVsOwpQdjEF3cyTJxSc4Za9pFXq6CP2cBlQXAx1J1wD4VmEi4HdUHcadZras62uydbmEyddqAHklTOuOmxzTzzWpQWHNP2cT3onrrqHRXS3HxnmJLLsbbfqR1YvHQxqKLD23UAKIiDgGRsfs3yt4EKMwy73fujP6NIZy8A6g3cNLuS3ohnjLXV7mS1sdb7aOGZcEp9LjcoUx7OLf2UQQGO2pGksHislOiojxoUHq8rN66pbY9SEGxxV3IeARwMvF1F3fpAvoR9kOomCn47TsuFl3JLK6o6BfBukQUG5CFggTsJ7nGRF1mRUVsvRHrjMSDWyottQYzWISwF62nBUziFlB039hcLZGyoURIBG8neRJJNCWfnmoSyPJrPRuqG1OVLwtc2sq690GMttRGF5p3LZlqGGHcxlY8IibAAswAj3dCmU9RQpLseXJKtgNQsCP0KRrb9OBjHELTpLB61dp50YGj4k0nMFdnmvom9QvGl7pBJRxAUMwKB2UvcKJPgM2t7hF7X1D9ZTAyAYYkBkU2dEogeXVkzODxV9uJ1YIQH9e7X3hoe2hhwvoBiaMIOg5Agqa7fJOMISKwMSLQKSY7dczlccTRiPho6imbR0OpJoMl7n2H6RF9T4lW65DfLLuHTGJBxoR6DtiAHb8DSDDCxOouJSzkuTSeqsFOGmK9FTAcUyGD195pNkKn2aynUhrazWO68p6E9wHTVdmNdi2QsD4lDsynzPoZB3VAiR5heD1ZGeCJmvqEYlPsEdF4TUTlNFMWnH3raVhHZJhb5yGUJmcdpI79sRk5mXSzuLRvxY2myaotyUd86gbmO9l7Qw32jLsEn9ZKYSWnSaHhVLfSRh4wggtWDnONY6hc67MVPz8yAFGlgL3YTYkZ4ELyRpbGmiIjgk4WK3kayRmFtgtc4D1Z7CnPSol5xUeD49pF2AFqiRVBYfDSIvIGYVmGaxByhG1cFhH<br />
接下来我们的目的是去掉后面的<br />
略 | sed -r 's/<br \/>//g' | sed 's/ //g' | sed 's/\t//g' 
在这里我们使用了sed指令,这个-r是 use extended regular expressions in the script.
s/是用来替换的格式是's/A/B/'用B替换A!
/g是比表明是全面替换
< br />中多了一个\是因为指令中分辨不出来“/”,所以用“\”标记出来。
所以指令的意思就是删< br />,删空格,删\t
head : http://blog.csdn.net/u010585120/article/details/48027611
head -c N #显示N个字节
chrome : 提取curl的一个小tip(ctrl + shift + I)(element)(network)

最终自己成功的脚本如下

注意里面的Cookie是自己提取的哦~
#!/bin/bash
set -x

curl 'https://ringzer0team.com/challenges/13' -H 'Accept-Encoding: gzip, deflate, sdch, br' -H 'Accept-Language: zh-CN,zh;q=0.8' -H 'Upgrade-Insecure-Requests: 1' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Referer: https://ringzer0team.com/challenges' -H 'Cookie: PHPSESSID=3h4ckdskpiego50h3r11njf8g3' -H 'Connection: keep-alive' -H 'Cache-Control: max-age=0' --compressed --output cipher
cat cipher | egrep '[[:alnum:]]+<br />' | sed -r 's/<br \/>//g' | sed 's/ //g' | sed 's/\t//g' | head -c 1024 > res
cat res | sha512sum | head -c 128  > sha 

r=`cat sha`

curl "https://ringzer0team.com/challenges/13/$r" -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' -H 'Connection: keep-alive' -H 'Accept-Encoding: gzip, deflate, sdch' -H 'Cookie: PHPSESSID=3h4ckdskpiego50h3r11njf8g3; _ga=GA1.2.1964009795r1426406003' -H 'Accept-Language: en-US,en;q=0.8,fa;q=0.6' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36' --compressed --output finalres

创建时间:2017.5.14

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,033评论 25 708
  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    aimaile阅读 26,553评论 6 427
  • 阿里巴巴速卖通是什么? 一、什么是阿里巴巴的速卖通 1、速卖通是阿里打造的外贸小单交易平台。 (1)简单来说就是为...
    K1024阅读 1,715评论 1 4
  • 晚风拂过,绵长的街巷人流依旧如织,只有对面的茶庄显得不落俗套的雅静,我的窗正对着上等雅座。茶客走了一波又迎了一桌,...
    咚个冬阅读 146评论 0 0
  • 我是个女孩儿,当初我妈生我时是难产,导致我身体一直不好,总在吃药。 因为是女孩儿本身阴气就比较重,身体又弱,所以比...
    耿直少女莫小野阅读 481评论 0 0