CTFHub题目WriteUP地址汇总
本来不想分段的,但是后来发现要写的东西太多了,就写了个首页,汇总一下地址,大家见谅
密码口令
弱口令
需要用到的软件:
Burp Suite(这边是引用大佬的教程)
如果按照上面的教程点击run打不开的话,我这边还有一个方法:
切换到burp suite对应的目录,在上方文件路径处输入cmd回车:
输入下面的命令:
java -jar burp-loader-keygen.jar
(需要java环境,不然会弹出’java’不是命令警告)
便可以打开注册机
再打开一个cmd窗口,输入下面的命令后回车:
java -Xbootclasspath/p:burp-loader-keygen.jar -jar burpsuite_pro_v1.7.37.jar
就可以正常开启burp suite
那接下来我们来看题目吧
这边根据题目提示需要进行密码爆破
先打开计算机的代理设置,并设置端口号(我这里设置了8081,不要设置8080即可)
打开burp suite,按照下面的方法找到add
添加刚刚的端口号
确保这里的√是勾上的(这是监听的端口号)
回到intercept
把intercept打开:
这时候回到题目页面,随意输入用户名和密码,点击登录:
就会在burp suite下面看到我们刚刚输入的用户名和密码:
右键点击send to intruder发送至爆破选项:
选择psositions,把除了password后面其他的‘§’符号全部删除(只需要把符号删除,中间的内容要保留)(这个符号中间的地方代表着要爆破的地方)
依次点击,添加要爆破的字典(这里因为它说是简单密码,所以我用admin作为用户名,密码我们在burp suite自带的password里面爆破)然后点击右上角Start attckt!
会跳出来一个窗口,等待它爆破完后点击length按照长度排序,可以找到和其他都不同长度的选项
点进去再点击response拉到最底下即可看到flag:
本题结束。
默认口令
(接下来我会记录一下我的错误思路,想看正确答案的童鞋请跳过此P,谢谢!)
打开题目看到如下界面的我,还是一如既往的想着用burp suite来爆破,但是我看到了验证码,于是犯了难。。
要知道burp suite是很难爆破带有验证码的东西的。。但我还是想试试。。因为毕竟服务器都是通过用户传去的数据来分析你有没有成功登录的嘛,管它是啥验证码,只要我能抓包分析,就没有我解决不了的问题。。(结果却显示我很幼稚)
这边我判断服务器是根据用户传来的两个值:PHPSESSID和UM_distinctid的其中之一来判断用户传来的验证码是否正确,一个PHPSESSID或UM_distinctid对应一个验证码,只要我不改变这两个值进行爆破,我是不是就成功了呢?具体操作看下图:(我把除了密码之外的地方都把‘§’符号删除了,具体操作请看上面一题,有详细讲解)
结果却让我很失望,除了第一个,其他长度425的全部显示为验证码错误。。。(这边我想分析一下,就是我查看网页源代码时发现了一个code.php文件,我刷新一下它它就给我新显示一个验证码的图片,我想可能是它在额外给服务器发送验证码图片的消息,但是我为什么接受不到。。我也不知道,欢迎大佬在评论区留言。。)
于是我没啥办法,只能去网上找了别人的WP。。
此处正片开始。。
既然是默认口令,就是公司内部一些人员为了方便而设计的默认用户名和密码,那么我只要用这些直接登录就可以了。
这边分享一下一些网站泄露出来的默认口令:网址
我将这个用户名和密码输入后,成功得到了flag:
本题结束。
XSS
反射型
建议没接触过XSS的童鞋们(比如我自己)先了解下XSS大致是啥以及基本思路:网址
本题需要用到的工具:
网址(这个是一个免费的XSS平台,能帮你自动生成XSS攻击代码)
来看下题目吧!
自己试一下就可以轻松得到结论:在第一个框内输入什么东西,在第二个红框内就会显示什么,这就是一个典型的反射型XSS
再来看看它能不能输入js:
在第一个框内输入<script>alert(1)</script>
可以弹出!说明并没有进行过滤js代码
分析:
根据输入框前面的提示可得,Send URL to Bot 可能是向服务器发送get请求,从而获得服务器的一些信息。
好分析完后我们就去利用前面的那个XSS网站去生成我们的XSS攻击代码
注册完以后应该是这样一个页面:(点击我的项目后面的创建)
选择默认配置即可:
拉到最下面点击下一步:
将生成的这一行代码拼接到原题目网址后面的?name=后面再输入到第二个框内,点击send:
成功后回到刚刚的XSS网址点击项目内容查看记录:
这时候应该会收到一条记录,展开后里面就有flag:
总结:一开始完XSS还是得靠别人生成的代码去攻击,我一开始还在想我如何写出自己的XSS攻击代码(这应该需要很好的js基础)
本题结束。
(已完结)