第一次参加铁三,这次总决赛中的数据赛不再是之前的看数据包,而是直接给了一台 web 服务器溯源。

经验总结

第一次接触,全队也就自己一个人在做,挖了坑也填了坑,记录一下。

  1. 服务器给的是命令行界面,不用想着变成图形界面来操作。因为我 init 5 变成图形界面后发现完全没法操作…后来为了变回去我误以为是 init 0,直接把服务器关了…后来只能让让主办方帮忙重启一下,差点被扣分…
  2. 刚开始的时候我主要目标是在每个用户的家目录以及 web 服务的根目录下查看是否有一些隐藏文件, 还是可以收集到一些重要信息的。
  3. 然后在数据库的目录下也可以发现一些信息。
  4. 之后慢慢发现最重要其实是 web 服务下的一些 log 文件,记录了黑客对服务器攻击的主要过程。
  5. 后来我还发现在每个用户家目录下的 .bash_history 也是很有用的,可以看到黑客提权后干的事情。
  6. 查看文件的话,建议用 less -mN filename,因为纯命令行的界面不能滚屏,用 less 就会方便很多。
  7. 刚登上服务器建议 lastlog 一下,看看除了 root 用户之外其他用户最后一次是什么时候登陆的。
  8. 其他命令的话,常用 grep 肯定是没错的…

然后比赛的时候也找了两篇关于服务器溯源的文章,记录一下:

比赛的时候因为我们队排名在后来不是很靠前,然后我信息的收集也不是很到位,第一题怕做错会扣分,万一我们连三等奖都拿不到了,就没敢做。比赛结束后才知道每个队伍都会获奖…

溯源过程记录

题目差不多是这样:黑客在内网中拿到了两台肉鸡,然后通过这两台肉鸡对一台服务器进行了攻击,我们则需要对这台服务器溯源取证分析,并且找到黑客留下的后门。

刚拿到服务器,先在 root 的家目录下查看了一下隐藏文件,没想到一下子就有收获:

在这里一下子就拿到了数据库的账号和密码。

然后尝试登陆一下数据库,发现有一个 seacms 的数据库,然后进去之后发现一些重要的信息:

看完数据库,我就去查了一下关于海洋 cms 的洞:

大概知道了是在 web 根目录下的 search.php 中存在漏洞,然后通过分析黑客可能用来攻击的脚本,大概知道了攻击过程。

我这里还把 search.php 记录下来了:

在 web 目录下还看到了一个 360safe,就截了张图:

然后我看了一下每个用户家目录下的 .bash_history,正常的用户 simple 以及黑客创建的 hacker 都没啥,主要是 root 的 .bash_history

大概收集了这些,也能推断出黑客拿到权限后新建了一个叫 hacker 的用户,然后黑客的操作是从什么时候开始的也无法判断。再 grep 一下:

下一步我就开始看日志,通过对 .bash_history 的阅读,判断主要是在 /var/log/httpd 下和 /var/www/html/logs 下的 log 文件:

然后就开始对 log 文件一行一行看下来:

基本看到几个 ip:

在后面一点的时候会看到 192.168.12.173,通过 GET 的 url 很容易判断出在用脚本打网站:

最后看到可以黑客在放后门 eval($_POST[cmd])

大概的分析就是这样,中间也踩了很多坑。我最后的判断是:

IP IDENTITY OPERATING SYSTEM
192.168.31.119 admin windows
192.168.12.129 victim windows
192.168.12.173 bot windows
192.168.12.156 bot windows
192.168.12.125 bot android
192.168.31.73 bot android

感觉自己整体分析下来应该方向是没错的,可能因为自己没学过计网,对一些网络的协议和请求方式没有了解很透彻,导致比赛的时候第一题问两台肉鸡的 ip 就判断错了,然后就没敢做下去…


ctf wp

本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!

RE入门(二)
简单压缩壳脱壳指南