第一次在csdn写博客。接触CTF是两年前了,曾经只有过半个月的修炼,虽然算不上高手,但对自己曾经的进步还是很欣慰的。就把它当一个开发脑洞的爱好和维护网络世界清朗的使命吧。希望有志同道合的everyone看到我的博文能给予建议和指正!
我记得两年前网上免费的CTF免费靶场是很多的,今天突然捡起来想练练手发现没几个能打开了,南邮的好像在维护,说明了对部分消费者的开放;bugku在卖靶场U盘、新平台需要邀请码,我一看还挺贵,没舍得买…………反正陆陆续续找了一圈,只发现不花钱能玩的就HackingLab这个平台,所以,走过路过的大佬留下你们的所以,就从他开始吧:
我码了这几个字的功夫发现csdn第一篇博客是markdown的使用说明,应该先发布保存的,后悔改了,不保存关掉再进来,好嘛,没了就是没了,接着写吧。
题目网址:http://hackinglab.cn/index_1.php
选择题,我没学过课本,不是科班出身,基本靠自学和百度勾完了,这里就不记录了,直接进入基础关
1key在哪里?
分值: 100
过关地址
记录下我做题的方法:我刷的题目很简单,这里只是回忆下,等状态来了再挑战难一点的。但个人有个人的技巧和工具,欢迎大佬们来给建议,也希望我的一些方法能帮到新入门的菜鸟。
这个签到题级别的,基本不要用工具,用谷歌浏览器查看源码直接找到key。tips:快捷键CTRL+u查看源码,不要用鼠标一步步点了,效率!
key就在这里中,你能找到他吗?
再加密一次你就得到key啦~
分值: 150
加密之后的数据为xrlvf23xfqwsxsqf
题目说再加密一次,而且看格式也不是base64编码等其他的,所以可以联想到移位加密,凯撒、rot13等,这个平台的flag格式都是keyXXXXX,正好k和x相差13位,就rot13了,加密原理可以百度,小学数学也能理解。我用github上找的开源工具,相对放心可靠些,CTFCrackToolsKt-3.2.4,截图贴图好麻烦,能用文字的我尽量用文字表达,有需要请评论留言
keyis23ksdjfkfds
猜猜这是经过了多少次加密?
分值: 200
加密后的字符串为:
Vm0wd2QyUXlVWGxWV0d4V1YwZDRWMVl3WkRSV01WbDNXa1JTVjAxV2JETlhhMUpUVmpBeFYySkVUbGhoTVVwVVZtcEJlRll5U2tW…………Qk5RPT0= 我就不浪费篇幅了
看到最后小尾巴=,想到base64,那么该怎么解密的,刚才那个工具肯定也是可以的,不过多少次呢?运气不好够累鼠标的,人生苦短……上python吧,做题要短平快,我不喜欢其他脚本里粘到txt文件里,读了又关,或者input=在交互粘贴,这种小题有个思路就行,把字符串和热情放在简练的代码里更有感觉:
import base64
a = "Vm0wd2……5RPT0=" #这里粘贴字符串
while True:
try:
a = base64.b64decode(a)
except:
print(a)
break
据说MD5加密很安全,真的是么?
分值: 200
e0960851294d7b2253978ba858e24633
这题是求MD5解密值,上网站查……
http://www.dmd5.com/
http://www.cmd5.com/
http://www.xmd5.org/
https://www.somd5.com/
请大佬们继续推荐总结下md5查询网站~~,做题的话就这么肯定能查到,但这题我一直想在本网站找到一个讲解到功夫点的文章,可惜没找到。这里我将自己的一次尝试分享出来,以备不时之需(没网络等情况下做这题):先记录一个python的md5加密实现(只是举个例子,想到就记录下了,这题用别的方法下文说):
import hashlib
passwords = ['123123', 'abc', 'xxxxxx', '#%GKI*']
for password in passwords:
md5 = hashlib.md5() #要加密的字符串
md5.update(password.encode("utf-8")) #获取要加密的字符串
print(md5.hexdigest())
因为一般ctf题里不会出现特别复杂的密码,复杂的话一定有提示,所以这里我用hashcat工具中掩码破解的方式暴力破解下这个md5,当然,我是看过答案后才赌了这个密码中只有小写字母和数字(其实只有字母)且不超过8位
hashcat -a 3 -m 0 --force e0960851294d7b2253978ba858e24633 --increment --increment-min 1 --increment-max 8 ?h?h?h?h?h?h?h?h --show
e0960851294d7b2253978ba858e24633:bighp
是不是很暴力!结果是不是很舒适!当然显卡给力的话你用?a?a?a…(8个)…也是可以的。
种族歧视
分值: 300
小明同学今天访问了一个网站,竟然不允许中国人访问!太坑了,于是小明同学决心一定要进去一探究竟!
通关地址
这题啊,burp抓包看一看:
GET /base1_0ef337f3afbe42d5619d7a36c19c20ab/index.php HTTP/1.1
Host: lab1.xseclab.com
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36 Edg/83.0.478.45
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9, en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Connection: close
看见我画删除横线的地方了吗,把它去掉就可以了,key is: *(TU687jksf6&*
HAHA浏览器
分值: 200
据说信息安全小组最近出了一款新的浏览器,叫HAHA浏览器,有些题目必须通过HAHA浏览器才能答对。小明同学坚决不要装HAHA浏览器,怕有后门,但是如何才能过这个需要安装HAHA浏览器才能过的题目呢?
通关地址
GET /base6_6082c908819e105c378eb93b6631c4d3/index.php HTTP/1.1
Host: lab1.xseclab.com
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36 Edg/83.0.478.45
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Connection: close
看到我删除线地方吗,把它改成HAHA就行了
key究竟在哪里呢?
分值: 200
上一次小明同学轻松找到了key,感觉这么简单的题目多无聊,于是有了找key的加强版,那么key这次会藏在哪里呢?
通关地址
burp抓包repeater的结果中如下,找到key
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 11 Jun 2020 02:27:49 GMT
Content-Type: text/html
Connection: close
Key: kjh%#$#%FDjjj
Via: 4334
Content-Length: 201
key又找不到了
分值: 350
小明这次可真找不到key去哪里了,你能帮他找到key吗?
通关地址
burp抓包repeater看结果里有个search_key.php,把网址改成http://lab1.xseclab.com/base8_0abd63aa54bef0464289d6a42465f354/search_key.php继续抓包又看到./key_is_here_now_.php,再继续抓http://lab1.xseclab.com/base8_0abd63aa54bef0464289d6a42465f354/key_is_here_now_.php 终于看到 key: ohHTTP302dd
冒充登陆用户
分值: 200
小明来到一个网站,还是想要key,但是却怎么逗登陆不了,你能帮他登陆吗?
通关地址
还是用burp,抓包看到头文件里有个Cookie: Login=0,把0改成1再repeater就看到结果了key is: yescookieedit7823789KJ
比较数字大小
分值: 100
只要比服务器上的数字大就可以了!
通关地址
打开链接发现输入数字只能输入3位,要求比服务器上的数字大,我这么聪明的人当然也想到了用科学计数法e,但是应该不行,这题直接在burp里改数(有个v=XXX的post参数,改大就行),或者,F12进入开发者模式,看到控件的限制
本地的诱惑
分值: 200
小明扫描了他心爱的小红的电脑,发现开放了一个80端口,但是当小明去访问的时候却发现只允许从本地访问,可他心爱的小红不敢让这个诡异的小明触碰她的电脑,可小明真的想知道小红电脑的80端口到底隐藏着什么秘密(key)?
通关地址
这题想考察的应该是在http头文件里加上X-Forwarded-For:127.0.0.1
可是这题用burp抓包或者直接CTRL+u就看到源码里的key了,key is ^&*(UIHKJjkadshf
就不让你访问
分值: 150
小明设计了一个网站,因为总是遭受黑客攻击后台,所以这次他把后台放到了一个无论是什么人都找不到的地方…可最后还是被黑客找到了,并被放置了一个黑页,写到:find you ,no more than 3 secs!
通关地址
这题考察知识点稍微多点,首先,robots.txt文件泄露,http://lab1.xseclab.com/base12_44f0d8a96eed21afdc4823a0bf1a316b/robots.txt,看到:
User-agent: *
Disallow: /
Crawl-delay: 120
Disallow: /9fb97531fe95594603aff7e794ab2f5f/
Sitemap: http://www.hackinglab.sinaapp.com/sitemap.xml
这个 /9fb97531fe95594603aff7e794ab2f5f/目录设定disallow就很可疑了,应该是管理员才allow的,所以管理员的主页应该在这个目录下,文件名呢?admin.php? login.php?………当然可以猜,经验多手感好的大佬门猜的比工具快,我这里用工具跑,爆破网络后台地址的工具,最有名的是御剑了,有没有更新版?官方地址?请走过路过的朋友帮忙分享下,我对随手可下的工具一直不太敢用,这里我用个开源的工具吧!刚才说了管理员的登录地址应该在这个目录下:http://lab1.xseclab.com/base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/ 现在用工具爆破敏感登录文件名:
dirsearch -u http://lab1.xseclab.com/base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/ -e php
结果:
[11:32:01] 200 - 53B - /base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/index.php
[11:32:01] 200 - 53B - /base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/index.php/login/
[11:32:02] 200 - 31B - /base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/login.php
访问http://lab1.xseclab.com/base12_44f0d8a96eed21afdc4823a0bf1a316b/9fb97531fe95594603aff7e794ab2f5f/login.php
看到key,right! key is UIJ%%IOOqweqwsdf
可能御剑快一点吧,毕竟字典不一样,工具语言也不一样,python是出了名的慢,等大佬们分享给我更好的工具啦!
感谢浏览本文!请不忙的朋友留下宝贵建议,篇幅有限,下一篇我将继续后面的题目。