Linux/Frolic

Enumeration

nmap

还是扫描系统对外开放的端口情况,对外开放了22,139,445,还有9999端口,显示是http服务,使用了nginx 1.10.3

bash 复制代码
┌──(kali㉿kali)-[~/HTB/Frolic]
└─$ nmap -sC -sV -oA nmap -Pn 10.10.10.111
Starting Nmap 7.93 ( https://nmap.org ) at 2023-03-31 02:49 EDT
Nmap scan report for 10.10.10.111
Host is up (0.23s latency).
Not shown: 996 closed tcp ports (conn-refused)
PORT     STATE SERVICE     VERSION
22/tcp   open  ssh         OpenSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 877b912a0f11b6571ecb9f77cf35e221 (RSA)
|   256 b79b06ddc25e284478411e677d1eb762 (ECDSA)
|_  256 21cf166d82a430c3c69cd738bab502b0 (ED25519)
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 4.3.11-Ubuntu (workgroup: WORKGROUP)
9999/tcp open  http        nginx 1.10.3 (Ubuntu)
|_http-server-header: nginx/1.10.3 (Ubuntu)
|_http-title: Welcome to nginx!
Service Info: Host: FROLIC; OS: Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
| smb2-security-mode: 
|   311: 
|_    Message signing enabled but not required
| smb-security-mode: 
|   account_used: guest
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)
|_clock-skew: mean: -1h49m59s, deviation: 3h10m30s, median: 0s
| smb-os-discovery: 
|   OS: Windows 6.1 (Samba 4.3.11-Ubuntu)
|   Computer name: frolic
|   NetBIOS computer name: FROLIC\x00
|   Domain name: \x00
|   FQDN: frolic
|_  System time: 2023-03-31T12:20:38+05:30
| smb2-time: 
|   date: 2023-03-31T06:50:38
|_  start_date: N/A
|_nbstat: NetBIOS name: FROLIC, NetBIOS user: <unknown>, NetBIOS MAC: 000000000000 (Xerox)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 73.12 seconds

TCP/139,445

因为开放了这两个端口,运行着samba服务,所以使用相关扫描工具探测一下是否存在问题

使用smbmap扫描ip,显示没有什么能够访问的文件

使用smbclient扫描ip,结果也差不多,暂时放下去看看web

Exploitation

TCP/9999

打开是默认的欢迎账号,但是在下方提示了系统还有一个1880端口,先记下来一会看看

先扫描网站目录结构,看看有没有其他路径

/admin

打开告诉我这个是可以被攻击的,先放着看看其他的

/backup

拼接url可以得到一组用户名和密码

admin:imnothuman

很不幸,登录失败了,并且提示还有两次机会

/test中是phpinfo信息

看来还是得回到登录界面,但是提示还有两次机会,所以不太可能是暴力破解,查看页面源代码,在lohin.js中又发现一组用户名密码

admin:superduperlooperpassword_lol,使用该口令成功登陆系统,发现了一串很奇怪的编码,这一定是下一步的突破口

搜索发现这其实是一种编程语言

在网上找到一个解密网站

最后发现其实那一串字符是一个路径,尝试拼接url访问该路径,发现又是一大堆代码

在cyberchef中判断原文用了base64编码,解码后发现他是一个zip文件

得到这些消息后,将经过base64转换的编码保存到code.zip中

解压文件发现需要密码,但是刚才的两组密码都不对

尝试使用fcrackzip来暴力破解,很快就得到了密码,然后解压文件得到了一个index.php

于是,又得到了一堆十六进制代码

在经过十六进制和base64的转换,得到了一组brainfuck编码

再将其放到刚才的网站中,会得到一个字符串idkwhatispass

I don't know what is pass,这玩意肯定是密码,但是没有什么地方能登陆了,刚才还发现了一个1880端口,尝试访问该端口

访问前需要在/etc/hosts中写入ip到域名的映射,该端口是一个Node-RED的登录界面

但是使用admin/idkwhatispass登录并未成功,看了一些别人写的过程,发现是刚才扫描目录出现了问题,没有使用递归扫描,也就没有扫描出dev之后的内容,访问..dev/backup/返回了一个/playsms,跟在dev/backup之后报错404,而直接跟在http://10.10.10.111:9999/之后会进入playsms的登录页面

playsms

使用用户名和密码登录,成功登录,看到playsms的版本为1.4.5

查看有没有直接可以利用的漏洞,可以看到还是挺多的

可以看到metasploit有,那就直接利用吧,选择第一个

设置好所有配置项后直接运行就能得到shell

然后获取交互式shell,在获取user的flag

Privilege Escalation

使用LinEnum.sh扫描系统,发现一个suid文件/home/ayush/.binary/rop

看了别人的过程其实是一个溢出漏洞

将rop发送给kali

使用gdb工具,配置好peda,利用pattern create来生成非重复字符串

运行gdb -q rop然后将这一串字符串作为输入来运行程序

run AAA%······

可以看到EIP为AAGA,也能算出偏移量为52

使用 ldd 指令获取基本 libc 地址

可以使用readelf工具来查看共享库libc.so.6的符号表,并过滤出system@和exit@的行,可以看到名为system的符号偏移地址为0003ada0,名为exit的符号偏移地址为0002e9d0,15ba0b是/bin/sh在libc.so.6文件中的偏移地址,以16进制表示

计算地址,并将最后的值转化成字节序列并按照小段字节排列

bash 复制代码
gdb-peda$ p 0xb7e19000 + 0x0003ada0
$4 = 0xb7e53da0  # system

gdb-peda$ p 0xb7e19000 + 0x15ba0b
$5 = 0xb7f74a0b  # /bin/sh

gdb-peda$ p 0xb7e19000 + 0x0002e9d0
$6 = 0xb7e479d0  # exit

[JUNK] + SYSTEM(ret地址覆盖)+ EXIT(下一个返回地址)+"/bin/sh"(args),其中52个JUNK字符导致程序崩溃溢出

执行下面的指令即可

相关推荐
Nerd Nirvana33 分钟前
软考—系统架构设计(案例 | 论文)
linux·系统架构·软件工程·软考·计算机基础
勤奋的凯尔森同学2 小时前
webmin配置终端显示样式,模仿UbuntuDesktop终端
linux·运维·服务器·ubuntu·webmin
月光水岸New2 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
狄加山6752 小时前
数据库基础1
数据库
我爱松子鱼2 小时前
mysql之规则优化器RBO
数据库·mysql
chengooooooo3 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
Rverdoser4 小时前
【SQL】多表查询案例
数据库·sql
Galeoto4 小时前
how to export a table in sqlite, and import into another
数据库·sqlite
人间打气筒(Ada)4 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231114 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql