📜  Tr0ll 3检查标志或CTF问题的演练

📅  最后修改于: 2021-05-25 20:44:56             🧑  作者: Mango

CTF或“检查标志”问题已发布在vulunhub.com上。 VulunHub是一个平台,可为易受攻击的应用程序/计算机提供信息安全领域的实践经验。

Tr0ll 3是vulunhub上的计算机。要下载访问:
巨魔3机– Vulunhub

以下是Vulunhub – Tr0ll 3演练的步骤:

  • 在网络内部查找主机

    使用命令netdiscover -i(接口名称)-r(IP地址/ 16)

    例子:

    netdiscover -i eth0 -r 10.0.2.0/16  

  • 使用nmap扫描目标

    我们获得了目标IP。下一步是使用nmap扫描目标。
    例子:

    nmap -p- -A -O -T 4 IP_address

    Nmap显示仅端口22(SSH)已打开。

    打开目标计算机后,我们会发现有凭据(在此处开始)。

  • SSH登录

    使用命令ssh start @ IP_address (按Enter键并输入密码)

    我们来了。该寻找有用的东西了。使用ls命令查看内容,我们发现两个文件redpill和bluepill不包含有用的信息。

  • 查找我们可以访问的文件

    使用命令find / -type f -perm 777 2> / dev / null查找具有所有权限的文件。

    使用scp start @ IP_address:file_path ./home/Kali/将文件从远程主机复制到我们的计算机。这里gold_star.txt包含一堆密码, wytshadow.cap看起来像无线网络捕获的数据包。 wytshadow.cap可以通过Wireshark的被打开,但它是不是很方便,如果你是在远程另一台PC。所以,处理它能够更好地使用tcpdump命令来分析它告诉我们,这是一个解除认证数据包,所有的报文有协议的数据包为“ 802.11”
    注意: 802.11是用于在无线连接的设备之间传输数据包的协议。

  • 提取密码的命令

    现在,我们有一个.CAP文件和一些乱码字符串。因此,我们使用了称为aircrack-ng的工具,该工具可能有助于提取密码。

    现在使用wytshadow作为user_id,并使用破解的密码来访问另一个名为wytshadow的用户。

    我们注意到有一个名为oohfun的文件,具有SUID位。让我们执行它。
    注意:可以使用命令“ file file_name”检查任何文件详细信息

    现在,尝试使用sudo -l检查我们在这里拥有的sudo特权,并使用aircrack-ng输入我们破解的密码,这表明我们可以使用sudo特权启动ngnix服务器。现在,如果找到文件名default,则转到/ etc / ngnix / sites-available路径netstat -nalp打开它表明我们可以在8080端口上用lynx服务远程处理它,但首先我们要开始端口8080ngnix服务器开始使用命令:sudo服务ngnix服务器nginx的启动,我们可以检查状态|较少的

  • 现在,在Kali终端中侦听特定的端口类型“ lynx http://10.0.2.10:8080”

    瞧!我们获得了另一张证书。让我们使用上述凭据切换到genphlux用户

  • 现在使用ls命令,我们有文件maleusxlogin。 Maleus似乎很有趣。让我们探索文件。我们看到它存储了一个RSA密钥,并且xlogin是简单的HTML文档文件复制私钥并将其保存到权限为600的任何文件中(我将其命名为ssh-key)

    有ELF 64位可执行文件dont_even_bother具有完整的权限。当我们执行文件时,它需要一个我们还没有的密码。
    使用ls -lah ,我们得到了另一个有趣的文件“ .viminfo” 。我们使用cat命令检查文件,并获得凭证(B ^ slc8I $)
    现在使用sudo -l命令查看root特权文件,我们可以以maleus用户身份以root用户身份运行don’t_even_bother文件。
    我们首先删除dont_even_bother文件的内容,然后将恶意代码注入该文件中。

  • 现在,将以下脚本注入dont_even_bother.c文件。该脚本将在执行时调用外壳程序。
    int main(void) {
        setgid(0); setuid(0);
        execl("/bin/sh", "sh", 0);
    }

    在这里,我们将group_id和user_id的值设置为0,因为在Linux中,“ 0”代表root用户,这将有助于我们扩展当前特权。

  • 现在我们必须编译C代码以使其可执行
    我们使用gcc编译器“ gcc dont_even_bother.c -o dont_even_bother”来编译文件
    就像您记得的那样,我们可以以sudo用户身份运行dont_even_bother。

  • 现在,键入whoami以查看您和谁很棒!我们成功获得了根外壳并拥有根。
    现在键入cd / root ,然后输入ls来查看内容

    太好了!,我们得到的标志是flag.txt

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。