Hack The Box Dab WriteUp

1.在8080端口上可以访问到如下图所示的页面,提示已经很明显了cookie没有设置,字段名称是password,唯一需要破解的是值,挂上Burpsuite单点爆破就可以搞定。

password:secret

2.用Cookie Manager添加当前页Cookie后你可以获得如下页面,既然是TCP socket test,不防65535端口全连接试试,你会在11211端口发现端倪。http://10.10.10.86:8080/socket?port=11211&cmd=111 URL的形式,同样支持BurpSuite的单点爆破。

socket连接尝试

3.11211端口对应服务为memcached,是目前流行的缓存服务。不必对它做太过深入的理解,学习一下基本命令即可。

memcached服务

4.攻击的关键是让memcache泄露所有的key,其中可能缓存了登录的用户名密码。

基本命令
80端口先尝试登录,密码错不重要,重要的是让memcached从mysql拉出数据进行缓存

5.接下来就是跑hash了,暴力的办法就是用john直接破解,优雅些的方法是利用22端口ssh漏洞枚举用户,msf里有可以直接利用的模块(msf > use auxiliary/scanner/ssh/ssh_enumusers)。经过这步后能够拿到登录密码:genevieve@10.10.10.86 Princess1

ssh登录成功

6.检查SUID文件,find / -user root -perm -4000 -ls 2>/dev/null ,ldconfig 和 myexec 同学你肯定有问题!

7.将myexec下载回本地,利用radare2对其进行跟踪

        [0x00400740]> aaa (aa用分析文件,aaa可以分析出更多程序细节,文件小逻辑简单的话建议使用)

        [0x00400740]> pdf@main(显示主函数的反汇编结果,在@后指定函数名或地址,打印相关内容)

        密码:s3cur3l0g1n

程序简单的密码比对逻辑:s3cur3l0g1n
还有一处需要注意,程序最后调用了一个函数seclogin( ),这个函数并没有被实现,是插入代码的好地方

8.检查程序调用的动态链接库

        检查动态链接库可以使用两种工具分别是objdump 和 ldd

        objdump -x myexec

        ldd myexec

        可以看出程序调用了两个so

        libseclogin.so 没有找到(dll劫持是当然的,思路基本是编写一个shell然后做成so让程序加载)

程序调用了两个so

9.一段简单的代码完成功能并编译成so

         gcc -shared -o libseclogin.so -fPIC note.c (动态链接库编译)

         ldconfig -l /tmp/libseclogin.so

        LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/tmp

         env LD_LIBRARY_PATH=/tmp

return 0 后面少了一个; 哈哈

10.可以拿到root shell 了,这台机器不太稳定,如果还是失败的话,需要重置几次机器!!!好运兄弟~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 此篇文章内容是我很久以前在印象笔记中的一个知识总结,大概122个Linux指令。如今,写出来就当再回顾一遍了。若有...
    StephenZhang01阅读 1,088评论 0 5
  • 0.Linux组成:linux内核:管理硬件。 位置在:/boot/目录之下lib库:封装内核接口,提供系统调...
    廖马儿阅读 2,310评论 0 6
  • 風追着雲調戲着 雲委屈的落下了淚 一路追趕着我 ——— 我很無奈 只是騎着腳車經過 卻迫使我一路狂奔 ——— 我急...
    星辰溥天阅读 231评论 0 1
  • 如果你问我为什么喜欢在深夜写代码?我会说安静,效率高,没人打扰。 是的写代码的过程最害怕别人打扰自己。所以有人宁愿...
    做全栈攻城狮阅读 366评论 0 0
  • 你在练车吗?练的怎么样了。一天没看到你的消息了。不想我吗?
    崔酷酷阅读 201评论 0 0