美文网首页
对HTB中的"I know Mag1k" 题解,开启自己的博客之

对HTB中的"I know Mag1k" 题解,开启自己的博客之

作者: Your7Maxx | 来源:发表于2020-03-03 23:55 被阅读0次

博主是一名在校大二学生,接触安全也小二年了,但是呢大一的我懵懵懂懂,只知道学习一些基础的理论,完全找不到属于自己的方向。真正的入门安全,还是偶然的机遇,让我遇到了一个特别好的团队,以及很大牛的学长,从最基本的抓包分析到漏洞复现到渗透实战,一步一步地成长。很遗憾,之前的一些经典漏洞的复现并没有记录在博客里,但是保证以后补上!

其实一直想写博客来着,因为这大半年一直都是看着大牛们的博客学习着,像08sec、T00ls等安全届的黄埔军校,都是很好的分享交流的平台。自己却从来没有动手写过类似的博客,我觉得最主要的原因还是因为自己没有找到一个很好的开头。都说万事开头难,总想着自己也有实战getshell、内网提权的一天,想以实战的胜利开头,但说实话,还没有达到那个水平状态。

Hack the box 是一个很好的靶机渗透的平台,博主本人也经常练习,但是由于靶机渗透的规则,需要进行提权操作,由于这方面的技术薄弱,所以没办法三百六十度无死角的日完,所以一直想要以一次成功的靶机渗透作为我博客的第一篇文章,但是转念又想,再加上学长师傅们的解惑,其实安全真的不只是说你会渗透、会日站,可能现在的状态会觉得日站很爽,但是那绝对不是要追求的最终的目标。所以我可能错过了许多分享的机会给大家,于是我终于来了哈哈。

不煽情了,开始hack吧!这次是针对HTB中的一道ctf题引发的思考,其实博主本人不是一名狂热的ctfer。。自己其实对做题没什么特别浓厚的兴趣,但是偶尔打打ctf也会发现很多骚姿势的哈~

name:I know Mag1k ; points:50

p1

Start Instance:

访问web是一个注册/登陆的接口页面,这个是博主比较喜欢的嘿嘿,因为之前的实战中对逻辑漏洞很有感受和理解,以后会总结的!

p2

如上图所见,首先条件反射,先尝试了弱口令:admin/admin123 、 admin/123456,都无果。(弱密码在平时的生活中最常见不过,也是最容易忽略的问题,还记得当年美国核弹的发射密码竟然是8个0,想想都背后一凉,博主在平时的渗透测试中,这种问题在一些企业中也经常出现,以后出现了会更!)

p3

既然没有弱密码,那试试注入吧:’or '1'=1'/’or '1'=1'

p4

还是fail了。接着拿burp爆破呗(其实博主以前的话是很喜欢上来就爆破,但是ip被封多了,就产生后怕。)

p5

博主这大半年,除了学习安全之外,还会经常收集、筛选字典,(只要字典足够强大,什么密码都没在怕!)这里使用的是我收集的top100用户名和密码字典。

p6

呵呵?跑了半天也没跑出来,算了。看看注册模块吧。

p7

这里博主注册了一个admin的账号,为什么注册admin呢?一个是之前的经验,第二个是经常排查。

p8

那个邮箱不是我本人的啊。。不要说博主没打码、泄露信息啥的,我不傻~

发现这个界面也没什么特别的接口,抓个包看看吧。

p9

有趣,这个cookie里藏着一个与题目重名的,以为是什么重要的线索,但看了半天没看出来是个啥。google查询一下,所有信息指向了Padding oracle attack。

之前博主看到这些类似的漏洞分析文章,有个坏习惯,都喜欢先找poc和exp,不会去深入思考这个问题产生的根本原因,被大哥批评后,决定学着去分析这个attack。

这里附上博主认为解释的特别nice的一个博客链接:https://www.freebuf.com/articles/database/151167.html

基本的理论可以看上边的链接,下面是我对这个问题的理解:

p10

由于不太会文本编辑,所以干脆手写了。

其实我对于这个问题理解的关键在于:异或具有可逆性,这也是解决这个题目的关键。

阐释的更清楚一点,只需要知道密文,便可以解密任何经其加密的密文。为什么呢?这里就要用到那个填充的知识了。我们只需要构建一个密文然后与所知道的密文进行异或,如果最后的填充的情况出现错误(服务器的反应),那说明构建的密文不对,那就是一种爆破的思想油然而生了,想过写个脚本去跑?但是自己能写的nice吗?基于这样的困惑,我又发现了kali的一大神器:PadBuster。

p11

俗话说:kali用的好,监狱进的早。这个寒假对于kali上工具的利用,让我对这句话有了更深刻的认识哈哈哈哈哈哈。padbuster的用法和参数我就不给大家科普了,help上都能查询的到。

p12

说实话,我不知道是我电脑带不动还是怎么样,等结果等死我了。。真龟速啊靠,好像是有4个模块,它每一块都要进行测试,反正贼慢。

p13

最后出来的结果是Decrypted value (ASCII): {"user":"admin","role":"user"},这是我注册的admin用户啊!原来权限也还是user,说明admin是不存在系统用户的,那么把role改成admin的权限不就ok了?接着利用padbuster将{"user":"admin","role":"admin"}加密成密文,这里踩坑了!!需要加 \ 转义,{\"user\":\"admin\",\"role\":\"admin\"},这个具体原因我到刚才写博客还在思考,但是有人说padbuster就是这样用的?不得而知,先这样把。

One year later。。。。

p14

结果得到密文:QeYbcelc1TtRpBeROwiTGoyuI63i7IsYMAovrw2IGp8AAAAAAAAAAA%3D%3D

然后改包forward:

success

拿到flag。

其实题目本身并不难,想要分享给大家的便是Oracle Padding Attack这个小知识,以一道ctf题开头,其实是我没有想到的,因为我并不太擅长做题,这方面的经验也比别的大牛差好多。我希望在以后的学习旅程中,将自己擅长的、有趣的知识或者实战的经验分享给大家,互相学习、共同进步,希望自己在以后多做一些漏洞复现以及深层次的思考和分析。

祝大家2020手握0day,指哪打哪!

相关文章

  • 对HTB中的"I know Mag1k" 题解,开启自己的博客之

    博主是一名在校大二学生,接触安全也小二年了,但是呢大一的我懵懵懂懂,只知道学习一些基础的理论,完全找不到属于自己的...

  • Day39-40

    NO.3:I know。 You know。 I know that you know。 I know that ...

  • 2017.06.15

    I KNOW I'M NOT ALONE I KNOW WE ARE STILL TOGETHER I KNOW ...

  • 【漫画文字版】致敬TWICE

    孩子的各种活动状态 Baby, I know you know, I know you know it, TWIC...

  • I know

    I know there is something I can not envy, I know there is...

  • 核心差距

    大学之后越来越真切的感受到自己的无知 The only thing I know is that I know n...

  • 044

    I Know it, I know what I can do. And I do believe it.

  • 时间不等人

    I don’t know, I don’t know how long can you know that is ...

  • shape of my heart

    I know that the spades are the swords of a soldier I know...

  • the day you went away

    I do, You know I really really do I know, I guess I reall...

网友评论

      本文标题:对HTB中的"I know Mag1k" 题解,开启自己的博客之

      本文链接:https://www.haomeiwen.com/subject/jbptpctx.html