[网络安全自学篇] 三十七.Web渗透提升班之hack the box在线靶场注册及入门知识

在撰写这篇文章以前,我先简单分享下hack the box实验感觉。hack the box是一个在线渗透平台,模拟了真实环境且难度较大,并且用户注册该网站时须要绕过关卡并获取邀请码,涉及审查元素、base64解密、发送post请求等操做,挺有意思的。这是一篇基础性文章,将讲述注册过程、遇到的难点及入门案例,但愿对您有所帮助。同时,该网站题目细节不便于透露,更好地让你们去尝试,因此只会分享一些思想。javascript

做者做为网络安全的小白,分享一些自学基础教程给你们,主要是关于安全工具和实践操做的在线笔记,但愿您们喜欢。同时,更但愿您能与我一块儿操做和进步,后续将深刻学习网络安全和系统安全知识并分享相关实验。总之,但愿该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!若是文章对您有帮助,将是我创做的最大动力,点赞、评论、私聊都可,一块儿加油喔~java

PS:本文参考了B站、安全网站和参考文献中的文章,并结合本身的经验和实践进行撰写,也推荐你们阅读参考文献。python

下载地址:https://github.com/eastmountyxz/NetworkSecuritySelf-studygit

前文学习:
[网络安全自学篇] 一.入门笔记之看雪Web安全学习及异或解密示例
[网络安全自学篇] 二.Chrome浏览器保留密码功能渗透解析及登陆加密入门笔记
[网络安全自学篇] 三.Burp Suite工具安装配置、Proxy基础用法及暴库示例
[网络安全自学篇] 四.实验吧CTF实战之WEB渗透和隐写术解密
[网络安全自学篇] 五.IDA Pro反汇编工具初识及逆向工程解密实战
[网络安全自学篇] 六.OllyDbg动态分析工具基础用法及Crakeme逆向破解
[网络安全自学篇] 七.快手视频下载之Chrome浏览器Network分析及Python爬虫探讨
[网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster工具
[网络安全自学篇] 九.社会工程学之基础概念、IP获取、IP物理定位、文件属性
[网络安全自学篇] 十.论文之基于机器学习算法的主机恶意代码
[网络安全自学篇] 十一.虚拟机VMware+Kali安装入门及Sqlmap基本用法
[网络安全自学篇] 十二.Wireshark安装入门及抓取网站用户名密码(一)
[网络安全自学篇] 十三.Wireshark抓包原理(ARP劫持、MAC泛洪)及数据流追踪和图像抓取(二)
[网络安全自学篇] 十四.Python攻防之基础常识、正则表达式、Web编程和套接字通讯(一)
[网络安全自学篇] 十五.Python攻防之多线程、C段扫描和数据库编程(二)
[网络安全自学篇] 十六.Python攻防之弱口令、自定义字典生成及网站暴库防御
[网络安全自学篇] 十七.Python攻防之构建Web目录扫描器及ip代理池(四)
[网络安全自学篇] 十八.XSS跨站脚本攻击原理及代码攻防演示(一)
[网络安全自学篇] 十九.Powershell基础入门及常见用法(一)
[网络安全自学篇] 二十.Powershell基础入门及常见用法(二)
[网络安全自学篇] 二十一.GeekPwn极客大赛之安全攻防技术总结及ShowTime
[网络安全自学篇] 二十二.Web渗透之网站信息、域名信息、端口信息、敏感信息及指纹信息收集
[网络安全自学篇] 二十三.基于机器学习的恶意请求识别及安全领域中的机器学习
[网络安全自学篇] 二十四.基于机器学习的恶意代码识别及人工智能中的恶意代码检测
[网络安全自学篇] 二十五.Web安全学习路线及木马、病毒和防护初探
[网络安全自学篇] 二十六.Shodan搜索引擎详解及Python命令行调用
[网络安全自学篇] 二十七.Sqlmap基础用法、CTF实战及请求参数设置(一)
[网络安全自学篇] 二十八.文件上传漏洞和Caidao入门及防护原理(一)
[网络安全自学篇] 二十九.文件上传漏洞和IIS6.0解析漏洞及防护原理(二)
[网络安全自学篇] 三十.文件上传漏洞、编辑器漏洞和IIS高版本漏洞及防护(三)
[网络安全自学篇] 三十一.文件上传漏洞之Upload-labs靶场及CTF题目01-10(四)
[网络安全自学篇] 三十二.文件上传漏洞之Upload-labs靶场及CTF题目11-20(五)
[网络安全自学篇] 三十三.文件上传漏洞之绕狗一句话原理和绕过安全狗(六)
[网络安全自学篇] 三十四.Windows系统漏洞之5次Shift漏洞启动计算机
[网络安全自学篇] 三十五.恶意代码攻击溯源及恶意样本分析github

前文欣赏:
[渗透&攻防] 一.从数据库原理学习网络攻防及防止SQL注入
[渗透&攻防] 二.SQL MAP工具从零解读数据库及基础用法
[渗透&攻防] 三.数据库之差别备份及Caidao利器
[渗透&攻防] 四.详解MySQL数据库攻防及Fiddler神器分析数据包web

声明:本人坚定反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络须要咱们共同维护,更推荐你们了解它们背后的原理,更好地进行防御。正则表达式


一.注册hack the box

Hack The Box是一个在线平台,容许测试您的渗透技能和代码,并与其余相似兴趣的成员交流想法和方法。它包含一些不断更新的挑战,而且模拟真实场景,其风格更倾向于CTF挑战。算法

注册登陆以后以下图所示,包括地图炮(attack maps)、在线人数及设备、Web渗透真实场景等。
官方网址:https://www.hackthebox.eu/shell

在这里插入图片描述

那么,开始咱们的注册和学习吧!哪有这么简单,注册是颇有意思的,Let’s go!数据库


第一步,访问网站主页并点击“JOIN”按钮,跳转至获取邀请码界面。

在这里插入图片描述

主页中间有个“JOIN”超连接,点击以后会进入邀请码页面,注册须要一个邀请码。

在这里插入图片描述


第二步,该邀请界面也能够直接经过“https://www.hackthebox.eu/invite”访问,可是邀请码是什么呢?

在这里插入图片描述

咱们右键浏览器“审查元素”或按下F12查看源代码。
在“https://www.hackthebox.eu/js/inviteapi.min.js”脚本中发现“makeInviteCode”的提示。

在这里插入图片描述

第三步,打开控制台Console,并输入命令“makeInviteCode()”,输出结果以下图所示。

在这里插入图片描述

在控制台执行“makeInviteCode()”函数会回显一个base64的字符串。

在这里插入图片描述

代码以下,enctype一般为"ROT13"或者"BASE64",表示加密方式,因此接下来咱们要经过Base64解密该data。

{0: 200, success: 1, data: {}}
0: 200
data:
data: "SW4gb3JkZXIgdG8gZ2VuZXJhdGUgdGhlIGludml0ZSBjb2RlL.....mVyYXRl"
enctype: "BASE64"
__proto__: Object
success: 1
__proto__: Object

第四步,经过在线网站解密该字符串,以下图所示。

在这里插入图片描述

解密后的结果以下所示,它竟然还不是邀请码,而是让你发送一个POST请求到指定页面。注意,在SQL注入、XSS注入等渗透中,发送自定义拼接的POST请求是很是重要的一个知识点。

In order to generate the invite code,
make a POST request to /api/invite/generate

GET请求和POST请求区别

  • GET和POST是HTTP协议中的两种发送请求的方法,最直观的区别就是GET把参数包含在URL中,POST经过request body传递参数。
  • GET是从指定的资源请求获取数据,像数据库的查询操做同样,不会修改增长数据,也不会影响资源的状态;而POST是向指定的资源提交要被处理的数据,是用于可能修改指定资源的请求,会像数据库的删除、增长、修改数据同样,能够影响资源的状态。
  • 安全方面,GET数据经过URL传递,数据是会直接暴露在URL上,而且数据会保留在浏览器历史中,是能被缓存且可收藏为书签的,因此安全性很是低;POST数据则是放在Request body(报文的请求体)中,数据不会保留在浏览器历史或Web服务器日志,不能被缓存且不可收藏为书签,因此POST的安全性要比GET的安全性高。
  • GET请求和POST请求都有本身的语义,不能随便混用。在发送密码或其余敏感信息时绝对不要使用GET请求!同时在发送数据时,GET 请求向URL添加数据,URL的长度是受限制的(URL最大长度是2048个字符);而POST请求是无限制的。GET只接受ASCII字符,而POST没有限制。

第五步,发送POST请求并获取返回值。

若是在Linux或MAC系统,使用curl post发送请求。

curl -X POST https://www.hackthebox.eu/api/invite/generate

因为做者电脑是Windows系统,采用其余方法,发送POST请求,如Python代码、OWASP Mantra浏览器发送。

OWASP Mantra 是由 Mantra 团队开发,面向渗透测试人员、Web 开发人员和安全专业人员的安全工具套件 (基于浏览器, 目前是 Chromium 和 Firefox ),包括扩展程序和脚本集合。

在OWASP Mantra浏览器中输入网址和选中“Enable Post data”按钮,发送post data为“1”,获得以下图所示的返回值,它仍是使用base64加密的邀请码。

在这里插入图片描述

返回值以下:

{
    "success":1,
    "data":{
        "code":"UEVYVUktTUxZRkstRlZVVVEtTU1DTUstT1NLRkk=",
        "format":"encoded"},
    "0":200
}

第六步,经过在线网站解密Base64,自此终于获取了咱们的邀请码。

  • POST请求获取数据:UEVYVUktTUxZRkstRlZVVVEtTU1DTUstT1NLRkk=
  • Base64解密获取邀请码:PEXUI-MLYFK-FVUUQ-MMCMK-OSKFI
    在这里插入图片描述

输入验证码,点击“Sign Up”。

在这里插入图片描述


第七步,在注册页面输入用户名、密码、邮箱,并完成注册。
注册页面:https://www.hackthebox.eu/register

在这里插入图片描述

您可能会想,我为何不进行目录爆破,直接获取注册界面而后进行注册呢?哈哈,其实我也尝试了,它会提示以下图所示错误,让你您进行获取邀请码。

在这里插入图片描述



问题
做者在注册过程当中遇到一个问题,并且花费了很长时间才解决。虽然不少人会以为很容易解决,但对于网络安全初学者的我来讲,仍是挺难的。若是您是初学者,别担忧、别气馁,一步一个脚印的前行。

该问题是咱们注册时,因为看不到验证码,总提示“The g-recaptcha-response field is required.”。怎么解决呢?您应该懂吧!

在这里插入图片描述

但做者的PC端计算机访问Google始终失败,最后是经过手机端完成的。而后填写用户名、邮箱、密码,作下Googel人机验证 ,验证经过就行了。

在这里插入图片描述

最后,打开QQ邮箱点击连接确认便可登陆。

在这里插入图片描述

登陆网站,显示以下图所示主页。

在这里插入图片描述

主页包括地图炮(attack maps)、在线人数及设备、Web渗透真实场景等。

在这里插入图片描述


二.hack the box介绍

Hack The Box is an online platform allowing you to test and advance your skills in cyber security. Use it responsibly and don’t hack your fellow members.

网站中间显示了基本统计信息:

在这里插入图片描述

点击某个团队,能看到它们的相关信息,以下图所示。

在这里插入图片描述

点击“Access”中获取一些入门知识。

在这里插入图片描述

机器(Machines)和挑战(Challenges)是最经常使用的界面,以下图所示。它能显示激活机器(Active Machines)和释放机器(Retired Machines),释放机器须要VIP能激活。每一个机器独有对应的难度和分数。

在这里插入图片描述

Challenges包含了各类类型的题目,相似于CTF。

在这里插入图片描述

这里咱们选择Web题目,能够看到题目的难度值、评分。

在这里插入图片描述

咱们随机选择一个题目,而且点击“Start Instance”,安装以后会显示网址和端口。

在这里插入图片描述

复制网址和端口,便可作题。

在这里插入图片描述

同时,该网站包括讨论区,但切记别透露题目的核心完成步骤。

在这里插入图片描述

以下图所示:

在这里插入图片描述


三.小试牛刀

终于登陆成功,是否是有点兴奋呢?接着咱们分线一个小案例——Cartographer。

在这里插入图片描述

访问网址以下图所示:

在这里插入图片描述

这是一道SQL注入题目,咱们将用户名和密码设置为万能密码admin、‘or’='or’均失败,那试试 ‘=’ 呢?

在这里插入图片描述

也能够尝试分析源码或BurpSuite分析。

在这里插入图片描述

成功以后会进入下面的界面,还须要进一步提取Flag。

在这里插入图片描述

接着尝试,参数试试设置flag呢?最终后去的flag以下所示。

在这里插入图片描述

按照格式输入Flag提交便可,如:HTB{I love CSDN}。

在这里插入图片描述

写到这里,这篇文章分享结束,咱们拿下了first blood。很是推荐你们去试试hack the box。同时更多细节你们本身去尝试,咱们也不泄露最终结果。


四.总结

这篇基础性文章就此结束,但愿文章对您有所帮助。很是感谢师弟他们的推荐,也以为本身的技术好浅,要学的知识好多。若是您是安全初学者,一步一步学习,多实践多尝试,大牛都是慢慢练成的。

转眼,本身已经写了400多篇文章了,很是值得记念,从此也但愿帮到更多的读者。最后,但愿博友们多看看来时的路,生活不止有编程和论文,还有太多精彩须要咱们去感觉,祝好~

(By:Eastmount 2020-01-09 晚上8点写于武汉 http://blog.csdn.net/eastmount/ )


参考文献:
[1] https://www.hackthebox.eu/
[2] hack the box 注册 - mixboot
[3] hackthebox 入门攻略 - 搜狐
[4] Hack The Box 注册 - espandy
[5] http://dispa1r.cn/2018/05/20/hack-the-box-1/
[6] HackTheBox HackBack渗透笔记 - Kir[A]
[7] http://www.tjuscswyz.cn/