目录
二、总结Linux内核提权利用步骤(从内网信息收集到提权成功的思路)
一、复现上课的提权案例
1.打开案例1,要求是与攻击发起端同网段的,未知密码靶机进行提权
2.打开攻击端kali,输入ip a查看网络情况
3.同网段用nmap扫一下: nmap 192.168.171.0/24
4.除了本机ip之外,还有两ip,其中一个有着许多端口的可疑ip,在浏览器中访问80端口,以此可以确定靶机地址
5.然后又可以对其进行全端口深度扫描
Nmap -T4 -p 1-65535 192.168.171.131
6.新发现一个端口1898,再次在浏览器中进行访问
7.下载并打开浏览器插件Wappalyzer
8.使用msf连接,使用命令msfconsole,搜索Drupal相关漏洞: search drupal
9.选择1号模块并进行使用: use 1
10.输入show options查看需要配置的参数,并发现需要重新配置的有rhosts和rport:
11.设置好ip与端口,尝试运行:
12.获取shell,查看id与内核版本
13.下载提权脚本,压缩包上传到kali,解压之后上传到靶机
14.进入shell后检测上传情况
15.再用chmod +x tatget.sh命令来赋予文件权限,然后执行
16.执行脚本扫描,并上传“脏牛漏洞”
17.上传成功之后,进行编译,再执行,最后完成提权
二、总结Linux内核提权利用步骤(从内网信息收集到提权成功的思路)
(一)、内网信息收集
确定目标系统:
确定要攻击的目标系统,包括其IP地址、操作系统类型等。
收集系统信息:
使用各种命令和工具收集目标系统的详细信息,包括操作系统版本、内核版本等。常用的命令有uname -a(查看系统全部信息)、uname -r(查看内核版本)、cat /etc/issue(查看系统版本)等。
搜索已知漏洞:
根据收集到的内核版本信息,使用漏洞搜索工具(如Kali Linux中的searchsploit)搜索可能存在的内核漏洞及其对应的exploit(漏洞利用代码)。
(二)、漏洞分析与exploit选择
分析漏洞详情:
对搜索到的漏洞进行详细分析,了解漏洞的成因、影响范围及可利用性。
选择exploit:
根据漏洞的详细信息,选择适合的exploit进行利用。确保exploit与目标系统的内核版本相匹配。
(三)、exploit准备与上传
获取exploit代码:
从漏洞搜索工具或相关网站下载exploit代码。
编译exploit(如需):
如果下载的exploit代码是源代码(如C语言编写),则需要在目标系统或攻击机上编译成可执行文件。使用gcc等工具进行编译。
上传exploit:
将编译好的exploit或原始的exploit代码上传到目标系统上。可以通过各种文件传输方式(如FTP、SCP、HTTP服务等)进行上传。
(四)、执行exploit
设置执行环境:
确保exploit的执行环境满足要求,如必要的系统权限、依赖库等。
执行exploit:
在目标系统上执行exploit,通常通过命令行界面运行编译好的可执行文件或脚本。
监控执行结果:
监控exploit的执行过程,观察是否有root权限的shell被成功获取。
(五)、获取root权限
验证提权成功:
执行id或whoami命令,检查当前用户是否已提升为root用户。
进一步操作:
如果提权成功,可以执行任意root权限命令,如查看敏感文件、修改系统配置等。
(六)、后续处理
清理痕迹:
清理上传的exploit文件、执行过程中产生的临时文件等,避免被系统管理员发现。
持续监控:
如果提权是为了进行进一步的安全测试或漏洞利用,应持续监控目标系统的状态,确保测试过程的安全性和可控性。
三、总结Linux常用命令,10个以上
1. 文件和目录操作
ls:列出目录内容。常用选项包括-l(长格式显示)、-a(显示所有文件,包括隐藏文件)、-h(以人类可读的格式显示文件大小)。
cd:更改当前目录。常用路径包括绝对路径和相对路径,还可以使用..表示上一级目录,~表示用户主目录。
pwd:显示当前工作目录的完整路径。
mkdir:创建新目录。使用-p选项可以递归创建多级目录。
rmdir:删除空目录。注意,不能直接删除非空目录。
rm:删除文件或目录。使用-r选项可以递归删除目录及其内容,-f选项用于强制删除,不提示确认。
cp:复制文件或目录。使用-r选项可以递归复制目录,-i选项在覆盖文件前会提示确认。
mv:移动或重命名文件或目录。如果目标位置与源文件不在同一目录下,则执行移动操作;如果目标位置是文件名,则执行重命名操作。
2. 文件查看和编辑
cat:查看文本文件的内容。常用选项包括-n(显示行号),可以与其他命令(如more、less)结合使用进行分页查看。
more:逐页查看文件内容,使用空格键翻页。
less:与more类似,但提供了更多的导航功能,如前后翻页。
head:显示文件开头部分的内容,默认显示前10行,可以使用-n选项指定显示的行数。
tail:显示文件结尾部分的内容,默认显示最后10行。使用-f选项可以实时查看文件内容(常用于查看日志文件)。
3. 系统信息
top:实时显示系统进程和资源使用情况,如CPU、内存等。
df:显示文件系统的磁盘空间使用情况。使用-h选项可以以人类可读的格式显示。
du:显示目录或文件的磁盘使用情况。常用选项包括-sh(显示指定目录的总大小,以人类可读的格式)。
uname:显示系统信息,如内核名称、版本等。使用-a选项可以显示所有系统信息。
4. 网络相关
ping:检测网络连接,通过发送ICMP回显请求消息来验证与远程主机的连通性。
curl:通过URL传输数据,支持多种协议,如HTTP、FTP等。常用于下载网页内容或进行API调用。
wget:从网络下载文件。支持断点续传和后台下载等功能。
5. 用户和权限管理
chmod:修改文件或目录的权限。通过指定权限模式(如数字模式755)来改变文件或目录的访问权限。
chown:修改文件或目录的所有者。可以将文件或目录的所有权转移给另一个用户或用户组。