一、背景
在一个安全交流群里,有位同学发出这样一个链接给我
https://www.hackthebox.eu/invite
页面提示如果能 Hack 进去,那么就能获取邀请码!
二、操作步骤
如果你只是想拿这个邀请码,那就直接这样:
1、访问:https://www.hackthebox.eu/invite
2、在控制台输入$.post('https://www.hackthebox.eu/api/invite/generate',function(data){console.log(data)})
以下是以一个简单CTF学习为例,小白操作!!!
2.1 点击 Click Here
有提示,那就点下咯!!!
2.2 查看 console
发现这样一句话:
This page loads an interesting javascript file. See if you can find it :)
那就找找有没有特殊的 JS 文件!
2.3 访问JS
https://www.hackthebox.eu/js/inviteapi.min.js
执行后的结果:
function makeInviteCode(){$.ajax({type:"POST",dataType:"json",url:'/api/invite/how/to/generate',success:function(a){console.log(a)},error:function(a){console.log(a)}})}
2.4 提示有这个makeInviteCode()函数
2.4.1 方法一:
在Console输入这个函数
1、访问 https://www.hackthebox.eu/invite
2、 Console 里输入 makeInviteCode()
2.4.2 方法二:
根据上面函数得出的结果post提交数据
访问:https://www.hackthebox.eu/api/invite/how/to/generate
直接访问是 GET 方式
只要利用 burpsuite 改提交方式即可!
也看到了加密后的数据以及加密方式!
注: 不同的方法,加密的方式也会不同!
2.5 解密
以第二种方法为例:
加密方式是(移位变换加密): ROT13
密文:Va beqre gb trarengr gur vaivgr pbqr, znxr n CBFG erdhrfg gb /ncv/vaivgr/trarengr
解密后明文:In order to generate the invite code, make a POST request to /api/invite/generate
是不是又告诉你 POST 一个请求!!!
2.6 POST请求
访问:https://www.hackthebox.eu/api/invite/generate
更改请求方式为 POST
显然是 base64加密后的!!!
base64解码后:EIHXY-ZGVUO-YKNGE-VRAJW-NLTBM