第10天作业

一、复现上课的提权案例

1、将案例文件用VMware打开,进入命令行界面要求用户名和密码。

2、打开kail虚拟机,由于kail和目标位于同于网段,因此在kail中输入ifconfig查看ip地址,然后用输入nmap 192.168.226.0/24进行扫描。

 

 

3、扫描出IP地址为192.168.226.134开启了http,查看该网址。

 

4、暂时得不到信息,再回到kail用nmap扫描该网址全端口,结果发现还有端口1898开放。

 

5、查看192.168.226.134:1898进入新页面,尝试一下弱口令失败。打开浏览器插件wappalyzer发现该网站所用CMS框架为drupal。

 

 6、启动kail上的msf,输入search drupal查询。

7、选择序号为1的模块,输入以下命令进入,输入show options出现设置提示。

8、按照提示设置目标IP地址和端口,然后输入run入侵目标。

 

9、输入图中命令,搜集目标内核系统信息。

 

10、下载针对提权的扫描脚本,将其上传到靶机上,上传成功后为脚本文件增加可执行权限。

所用脚本下载链接:https://github.com/The-Z-Labs/linux-exploit-suggester 

 

11、 输入./1.sh执行,在扫出来的一大推漏洞中我们选择利用CVE-2016-5195脏牛漏洞来提权。

 12、在PoC  in github上查找该漏洞情报,找到作者gbonacini的漏洞链接。

GitHub - nomi-sec/PoC-in-GitHub: 📡 PoC auto collect from GitHub. ⚠️ Be careful Malware.

 

13、进入该作者的主页面就可以看到有关漏洞5195的提权脚本,下载下来,上传到kail并解压可以看到dcow.cpp文件。

 

14、将dcow.cpp上传到靶机,输入以下命令将cpp文件编译为可执行文件。

g++ -Wall -pedantic -O2 -std=c++11 -pthread -o ggbond ggbond.cpp -lutil

15、执行编译好的程序,成功得到靶机的root密码,切换到root用户并输入得到的密码,可以成功登陆,提权成功。

 

 

二、总结linux内核提权利用步骤

1、信息收集:先用nmap扫描同网段查找靶机ip,再在该ip上进行全端口扫描,看看是否有非常规端口开放,根据扫描出的ip和端口访问网页,利用wappalyzer插件或fingsomething插件查找网站信息,如CMS、中间件、编程语言等。打开kail的msf,根据查找到的CMS框架搜索相关后门进行入侵,入侵成功后输入uname -a等命令搜索Linux靶机内核系统信息。

2、漏洞分析:根据搜集的信息选择合适的提权扫描工具,将工具上传到靶机并执行,分析并选择可以利用的提权漏洞,到相关网站上查找该漏洞的利用方式或脚本程序。

3、上传exp并提权:将exp上传到靶机并执行,若执行成功就能拿到root密码,利用得到的密码登录靶机的root用户,登录成功即成功提权。

针对Linux提权的扫描脚本
https://github.com/The-Z-Labs/linux-exploit-suggester -- shell脚本
https://github.com/belane/linux-soft-exploit-suggester -- python开发
https://github.com/liamg/traitor--go语言开发,可能需要先编译
https://github.com/jondonas/linux-exploit-suggester-2-- Perl语言开发
扫播Linux提权一体化的扫描脚本
https://github.com/carlospolop/PEASS-ng--有多种编译方案
https://github.com/diego-treitos/linux-smart-enumeration -- shel1脚本
https://github.com/redcode-labs/Bashark -- shel1脚本
https://github.com/rebootuser/LinEnum -- shell脚本

exp获取:

https://github.com/Ascotbe/Kernelhub
http://kernelhub.ascotbe.com/Windows/Docs/#/
https://github.com/SecWiki/windows-kernel-exploits
https://github.com/nomi-sec/PoC-in-GitHub
https://gitlab.com/exploit-database/exploitdb

三、总结Linux常用命令,10个以上

  1. s:列出目录内容。这是最基本的文件操作命令之一,用于显示当前目录下的文件和子目录。使用-l选项可以查看详细信息,包括文件权限、所有者、大小等。

  2. cd:更改当前工作目录。通过输入目标目录的路径,可以切换到该目录下进行后续操作。例如,cd /home会切换到/home目录。

  3. pwd:显示当前工作目录的完整路径。这个命令在不清楚当前位置时非常有用。

  4. cp:复制文件或目录。例如,cp source.txt destination.txt会将source.txt复制为destination.txt。使用-r选项可以递归复制目录。

  5. mv:移动或重命名文件/目录。mv命令既可以用于将文件或目录移动到新位置,也可以用于更改文件或目录的名称。例如,mv oldfile.txt newfile.txt会将oldfile.txt重命名为newfile.txt

  6. rm:删除文件或目录。使用rm命令时需要小心,因为一旦删除,文件将不可恢复(除非有备份)。使用-r选项可以递归删除目录及其内容。

  7. mkdir:创建新目录。通过指定目录名称,可以在当前位置或指定路径下创建新目录。例如,mkdir newdir会创建名为newdir的新目录。

  8. touch:创建空文件或更改现有文件的时间戳。如果文件不存在,touch命令会创建一个空文件;如果文件已存在,则更新其访问和修改时间。

  9. grep:在文件中搜索指定内容。grep命令非常强大,支持正则表达式,能够高效地搜索文件中的文本内容。例如,grep "example" file.txt会在file.txt中搜索包含"example"的行。

  10. find:在目录树中搜索文件。find命令比grep更强大,因为它不仅可以在文件中搜索内容,还可以根据文件名、类型、大小等多种条件搜索文件。例如,find / -name "file.txt"会在根目录及其子目录中搜索名为file.txt的文件。

  11. chmod:更改文件或目录的权限。通过指定权限数字或符号,可以控制谁可以读取、写入或执行文件/目录。例如,chmod 755 file.txt会将file.txt的权限设置为所有者可读写执行,组用户和其他用户可读可执行。

  12. chown:更改文件或目录的所有者和所属组。这对于管理文件和目录的访问权限非常重要。例如,chown user:group file.txt会将file.txt的所有者更改为user,所属组更改为group

  13. ps:显示当前系统中的进程状态。使用ps命令可以查看哪些程序正在运行,以及它们的进程ID、CPU和内存使用情况等信息。

  14. top:实时显示系统中各个进程的资源占用情况。top命令提供了一个动态的视图,允许用户看到系统中最耗资源的进程,并可以对它们进行排序和管理。

  15. kill:发送信号给指定的进程,通常用于结束进程。通过进程ID(PID),可以使用kill命令向进程发送信号,以请求它终止运行。

  16. ifconfig 或 ip addr show:显示和配置网络接口。这两个命令都用于查看和管理网络接口的配置信息,如IP地址、子网掩码等。不过,请注意ifconfig命令在某些现代Linux发行版中可能已被ip命令取代。

  17. ping:测试网络连接。ping命令通过发送ICMP回显请求消息给目标主机,并监听回显应答来测试主机之间的网络连通性。

  18. wget 或 curl:从网络上下载文件。这两个命令都是强大的网络下载工具,能够下载HTTP、HTTPS、FTP等协议的文件。

  19. ssh:远程登录其他计算机。ssh是一种安全协议,用于加密两台计算机之间的通信,并提供远程登录功能。

  20. tar:打包和解压文件。tar命令可以将多个文件和目录打包成一个文件,便于存储和传输。同时,它还可以用于解压打包的文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值