渗透测试模拟实战-tomexam网络考试系统
渗透测试,也称为“pentest”或“道德黑客”,是一种模拟攻击的网络安全评估方法,旨在识别和利用系统中的安全漏洞。这种测试通常由专业的安全专家执行,他们使用各种技术和工具来尝试突破系统的防御,如网络、应用程序、主机和服务。目标是评估系统的安全状况,并提供关于如何修复发现的问题的建议。
渗透测试可以分为几种类型,包括:
1. 黑盒测试:测试者对目标系统的信息了解最少,就像真正的攻击者一样。
2. 白盒测试:测试者对目标系统有完全的了解,包括代码、架构和设计。
3. 灰盒测试:测试者对目标系统有一定了解,介于黑盒和白盒测试之间。
4. 盲测:测试者在事先未通知的情况下进行测试,以评估组织的实时响应能力。
5. 内部测试:从内部网络进行测试,以评估内部防御机制的有效性。
渗透测试是维护网络安全的重要组成部分,可以帮助组织识别并修复潜在的安全漏洞,减少被恶意攻击的风险。然而,进行渗透测试时必须遵守法律和道德规范,确保所有活动都在授权范围内进行。
---------------
tomexam环境部署:
jspstudy2016、 tomexam靶场环境 安全工具


管理员登录:
admin admin
http://10.0.0.101:8080/tomexam/login.jsp

工具漏洞扫描
1、快速使用fscan、appscan、nessus、nmap、awvs、goby、7kb、破壳、御剑等
web漏洞扫描工具:appscan、awvs(Acunetix)、Netsparker.
系统漏洞扫描工具:nessus
信息收集:
域名:fofa、谷歌、百度、零零信安等搜索引擎、DNS历史记录、DNS备案号查询、https证书
敏感信息:谷歌搜索,社工库检索、威胁情报、天眼查、零零信安、7kb、破壳、dirsearch
IP地址:有CDN通过fofa标签找到真实ip、文件的hash值、网站证书、dns历史记录
网站指纹:wappalyzer插件、御剑web指纹识别、在线平台
端口:nmap、masscan、fscan、goby
目录扫描:7kb、破壳、御剑
旁站信息:fofa、masscan、k8、goby、fscan
旁注:facan
D:\在线工具包v0.3.1公测版\storage\fscan>.\fscan64.exe -h 10.0.0.101
start infoscan
(icmp) Target 10.0.0.101 is alive
[*] Icmp alive hosts len is: 1
10.0.0.101:8080 open
10.0.0.101:80 open
10.0.0.101:135 open
10.0.0.101:3306 open
10.0.0.101:8009 open
10.0.0.101:84 open
10.0.0.101:86 open
10.0.0.101:139 open
10.0.0.101:89 open
10.0.0.101:90 open
10.0.0.101:445 open
10.0.0.101:1433 open
[*] alive ports len is: 12
start vulscan
[*] WebTitle: http://10.0.0.101 code:400 len:39 title:None
[*] NetInfo:
[*]10.0.0.101[->]oldboy-f74d04fe[->]10.0.0.101
[+] 10.0.0.101 MS17-010 (Windows Server 2003 3790 Service Pack 2)
[*] WebTitle: http://10.0.0.101:8080 code:200 len:2416 title:Directory Listing For /
[*] WebTitle: http://10.0.0.101:90 code:200 len:2416 title:Directory Listing For /
[+] mssql:10.0.0.101:1433:sa 123456
[*] WebTitle: http://10.0.0.101:84 code:200 len:239 title:Hacked Me
[+] http://10.0.0.101:84 poc-yaml-iis-put-getshell
[*] WebTitle: http://10.0.0.101:86 code:200 len:41578 title:XYCMS中心小学建站系统
[*] WebTitle: http://10.0.0.101:89 code:200 len:173580 title:Shop7z网上购物系统-国内顶级的专业网上购物系统开发服务商
[+] http://10.0.0.101:86 poc-yaml-iis-put-getshell
[+] http://10.0.0.101:89 poc-yaml-iis-put-getshell
已完成 12/12
[*] 扫描结束,耗时: 18.0463107s
服务端口爆破:超级弱口令检查工具(SNETCracker)、Bruter(弱口令漏洞)

用御剑扫描后台目录;对扫描出来的网站目录进行访问检测(列目录漏洞)

指纹信息:通过指纹信息找漏洞(中间件)

工具探测漏洞略过。。
手工探测漏洞
bp与xary联合使用:
1、bp设置顶级代理;xary反向监听。
1-1、打开bp设置顶级代理:

1-2、xary配置config.yaml文件填写网站地址及端口;
# 被动代理配置
hostname_allowed: [10.0.0.101]
port_allowed: [8080]

1-3、xary输入命令运行:
xray.exe webscan --listen 127.0.0.1:7777 --html-output lan2024.html
这个命令将启动Xray进行Web扫描,监听本地主机的7777端口,并将扫描结果以HTML格式保存到一个名为
lan2024.html的文件中

即bp放一次包xary自动检测一次漏洞;
1-1、登陆页面探测漏洞:
1-1.1随意输入账户和密码查看登录提示:

不存在不安全提醒:

1-1.2、bp抓包查看请求包:
存在明文密码漏洞(https明文密码不算漏洞)

1-1.3、切换到管理员模式bp抓包进行暴力破解:(验证码可重复使用、弱口令密码)


开启选项里的重定向功能


1-2、注册页面探测漏洞

1-2.1、注册个新账号:
(注册页面用户名存在不安全提示,登录密码没有密码长度限制及复杂度限制)

1-2.1、尝试xss漏洞,调整字符限制;(未测试出xss)


1-3、登录后修改个人资料页面探测漏洞
1-3.1修改个人资料,邮箱位置插入xss代码(存在xss漏洞)


1-3.2、修改个人资料,形象图片位置查看源代码,发现文件上传模块连接:(webshell漏洞)

访问源代码里的链接:
http://10.0.0.101:8080/tomexam/inc/upload/postfile.html
可直接上传文件(限制照片格式)


抓包查看响应包,观察上传文件服务器端保存文件的格式:

多次上传:
upload/20240606/tes_20240606214251421.jpg
upload/20240606/tes_20240606214420656.jpg
upload/20240606/tes_20240606214435484.jpg
根据观察后三位是随机数,前几位为时间;
根据这一特性,抓包快速爆破:
bp设置后缀名变量,批量上传jpg、jsp格式:(快速爆破绕过限制)

添加有效载荷:
jpg
jsp
jpg
jsp
jpg
jsp

开始攻击:(批量上传jpg、jsp成功)

访问jpg格式上传的文件url,bp抓包后三位数字设置变量,后缀名改为jsp进行探测上传成功的jsp文件:
http://10.0.0.101:8080/tomexam/upload/20240606/tes_20240606220541843.jpg
代理拦截选项需取消拦截客户端请求中的File extension(不然访问文件bp不拦截)

抓包

设置后三位数字变量,后缀名改为jsp:
设置后三位数字有效载荷范围:
开始攻击:(成功筛选出上传成功的jsp文件)
访问webshell文件:
http://10.0.0.101:8080/tomexam/upload/20240606/tes_20240606220541796.jsp
正常解析 , 成功webshell

------------------
方式二: 经过测试直接访问目录可查看上传上传的webshell文件:
http://10.0.0.101:8080/tomexam/upload/20240606/

声明:
- 此文章只做技术研究,谨遵守国家相关法律法规,请勿用于违法用途,如果您对文章内容有疑问,可以尝试留言私信,如有侵权请联系小编处理。
相关文章:
渗透测试模拟实战-tomexam网络考试系统
渗透测试,也称为“pentest”或“道德黑客”,是一种模拟攻击的网络安全评估方法,旨在识别和利用系统中的安全漏洞。这种测试通常由专业的安全专家执行,他们使用各种技术和工具来尝试突破系统的防御,如网络、应用程序、主…...
“神经网络之父”和“深度学习鼻祖”Geoffrey Hinton
“神经网络之父”和“深度学习鼻祖”Geoffrey Hinton在神经网络领域数十年如一日的研究,对深度学习的推动和贡献显著。 一、早期贡献与突破 反向传播算法的引入:Hinton是将反向传播(Backpropagation)算法引入多层神经网络训练的…...
[消息队列 Kafka] Kafka 架构组件及其特性(一)
工作中的消息队列用的是Kafka,一直没有系统的了解,这边集中整理一下。 目录 Kafka主要组件有十个部分。 1.Broker(服务器) 2.Record(消息) 3.Producer(生产者) 4.Consumer&…...
【Flutter 面试题】 JIT 与 AOT分别是什么?
【Flutter 面试题】 JIT 与 AOT分别是什么? 文章目录 写在前面口述回答写在前面 🙋 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主,51CTO专家博主。2023博客之星TOP153。 👏🏻 正在学 Flutter 的同学,你好! 😊 Flutter 面试宝典(…...
QT获取最小化,最大化,关闭窗口事件
QT获取最小化,最大化,关闭窗口事件 主程序头文件: 实现: changeEvent,状态改变事件 closeEvent触发点击窗口关闭按钮事件 其代码它参考: /*重写该函数*/ void MainWindow::changeEvent(QEvent *event) {…...
Oracle作业调度器Job Scheduler
Oracle数据库调度器 (Oracle Database Scheduler) 在数据库管理系统中,数据库调度器负责调度和执行数据库中的存储过程、触发器、事件等。它可以确保这些操作在正确的时间和条件下得到执行,以满足业务需求。 1、授权用户权限 -- 创建目录对象 tmp_dir…...
Vue 组件之间的通信
在 Vue.js 中,组件是构建应用程序的基本单位。然而,当你的应用程序变得复杂时,组件之间的通信变得至关重要。本文将介绍几种 Vue 组件之间通信的方式,帮助你更好地管理和组织代码。 父子组件通信 父组件可以通过 props 向子组件传…...
Elementary OS 7.1简单桌面调整
Elementary OS的Pantheon桌面环境提供了一种非常独特和直观的用户体验。默认情况下,Pantheon桌面并没有提供传统的窗口最小化、最大化按钮。但是可以通过安装和使用特定的工具来调整和自定义这些设置。 可以通过以下步骤来启用窗口的最小化和最大化按钮:…...
【C++ | 析构函数】类的析构函数详解
😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-06-06 1…...
ceph radosgw 原有zone placement信息丢失数据恢复
概述 近期遇到一个故障环境,因为某些原因,导致集群原有zone、zonegroup等信息丢失(osd,pool等状态均健康)。原有桶和数据无法访问,经过一些列fix后修复, 记录过程 恢复realm和pool相关信息 重…...
【动手学深度学习】残差网络(ResNet)的研究详情
目录 🌊1. 研究目的 🌊2. 研究准备 🌊3. 研究内容 🌍3.1 残差网络 🌍3.2 练习 🌊4. 研究体会 🌊1. 研究目的 了解残差网络(ResNet)的原理和架构;探究残…...
freertos初体验 - 在stm32上移植
1. 说明 freertos内核 非常精简,代码量也很少,官方也针对主流的编译器和内核准备好了移植文件,所以 freertos 的移植是非常简单的,很多工具(例如CubeMX)点点鼠标就可以生成一个 freertos 的工程࿰…...
ubuntu使用 .deb 文件安装VScode
使用 .deb 文件安装 下载 VSCode 的 .deb 文件: wget -q https://go.microsoft.com/fwlink/?LinkID760868 -O vscode.deb使用 dpkg 安装: sudo dpkg -i vscode.deb如果有依赖项问题,使用以下命令修复: sudo apt-get install -f...
9.1.1 简述目标检测领域中的单阶段模型和两阶段模型的性能差异及其原因
9.1目标检测 场景描述 目标检测(Object Detection)任务是计算机视觉中极为重要的基础问题,也是解决实例分割(Instance Segmentation)、场景理解(Scene Understanding)、目标跟踪(Ob…...
系统化自学Python的实用指南
目录 一、理解Python与设定目标 二、搭建学习环境与基础准备 三、入门学习阶段 四、中级进阶阶段 五、项目实践与持续深化 六、持续学习与拓展 一、理解Python与设定目标 Python概述:详细介绍Python的历史沿革、设计理念、主要特点(如易读、易维护…...
加密货币初创企业指南:如何寻找代币与市场的契合点
撰文:Mark Beylin,Boost VC 编译:Yangz,Techub News 原文来源:香港Web3媒体Techub News 在 Y Combinator 创始人 Paul Graham 《Be Good》一文中概述了初创企业如何找到产品与市场契合点的方法,即制造人…...
【十二】图解mybatis日志模块之设计模式
图解mybatis日志模块之设计模式 概述 最近经常在思考研发工程师初、中、高级工程师以及系统架构师各个级别的工程师有什么区别,随着年龄增加我们的技术级别也在提升,但是很多人到了高级别反而更加忧虑,因为it行业35岁年龄是个坎这是行业里的共…...
RainBond 制作应用并上架【以ElasticSearch为例】
文章目录 安装 ElasticSearch 集群第 1 步:添加组件第 2 步:查看组件第 3 步:访问组件制作 ElasticSearch 组件准备工作ElasticSearch 集群原理尝试 Helm 安装 ES 集群RainBond 制作 ES 思路源代码Dockerfiledocker-entrypoint.shelasticsearch.yml制作组件第 1 步:添加组件…...
JVM相关:Java内存区域
Java 虚拟机(JVM)在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。 Java运行时数据区域是指Java虚拟机(JVM)在执行Java程序时,为了管理内存而划分的几个不同作用域。这些区域各自承担特定的任务,…...
【C++】─篇文章带你熟练掌握 map 与 set 的使用
目录 一、关联式容器二、键值对三、pair3.1 pair的常用接口说明3.1.1 [无参构造函数](https://legacy.cplusplus.com/reference/utility/pair/pair/)3.1.2 [有参构造函数 / 拷贝构造函数](https://legacy.cplusplus.com/reference/utility/pair/pair/)3.1.3 [有参构造函数](htt…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
