1.复现上课的提权案例
打开靶机,只有版本信息
查看kali的ip地址
用nmap对当前网段进行扫描
可以看到一个ip开放了80端口,尝试去访问一下
说明这个主机应该就是案例机,用nmap对这个主机进行全端口扫描
可以看到该主机还开了一个1898端口,访问一下:
使用firefox访问,通过Wappalyzer插件查看用到的框架,发现存在Drupal,我们可以以此为突破。
kali自带msf,使用命令启动msf
接下来搜一下关于Drupal的漏洞
使用search Drupal命令
使用第二个漏洞试一下:
选择序号为1的模块:use 1,随后输入show options设置参数:
设置IP、端口
获取shell,看看id和内核版本。
下载提权辅助工具linux-exploit-suggester-master,并上传到受害主机,找到一个一定存在的目录,这里选择上传到tmp目录下,并更名为test.sh
进入shell查看上传结果
为test.sh赋予权限
执行test.sh
发现有许多可能可以利用的漏洞,这里可以使用脏牛漏洞来提权。
GitHub - gbonacini/CVE-2016-5195: A CVE-2016-5195 exploit example.
下载解压后上传dcow.cpp文件至案例机的/tmp
编译上传。
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow dcow.cpp -lutil
执行编译的文件,爆出了密码。
尝试使用su root获取管理员权限,提示缺少终端,使用python内置库开启终端:
提权成功
2.总结Linux内核提权利用步骤(从内网信息收集到提权成功的思路)
收集内网信息
使用命令获取系统版本等,如
uname -a # 内核版本
lsb_release -a # os版本
也可以使用nmap,fscan进行扫描,获取系统开放的端口信息等。
查找已知漏洞
使用工具如MSF搜索特定的已知漏洞
漏洞利用
在目标上编译漏洞,如脏牛漏洞等。随后获取root权限
3.Linux常用命令
1. ls:列出当前目录中的文件和子目录
2. pwd:显示当前工作目录的路径
3. cd:切换工作目录
4. mkdir:创建新目录
5. rmdir:删除空目录
6. rm:删除文件或目录
7. cp:复制文件或目录
8. mv:移动或重命名文件或目录
9. touch:创建空文件或更新文件的时间戳
10. cat:连接和显示文件内容
11.ping : 发送查看主机是否能连通
12.ifconfig :配置或显示网络接口的网络参数
13.netstat :显示网络连接、路由表等网络信息
14.uname -a :看版本、内核等
15.wget/curl : 从网络上下载文件
16.ps: 显示当前运行的进程
17.ps aux :显示所有进程
18.kill:杀进程
19.env :显示所有环境变量