E047-论坛漏洞分析及利用-针对Wordpress论坛进行信息收集与漏洞扫描的探索

news2024/11/28 12:47:37

任务实施:

E047-论坛漏洞分析及利用-针对Wordpress论坛进行信息收集与漏洞扫描的探索

任务环境说明:

服务器场景:p9_kali-6(用户名:root;密码:toor)

服务器场景操作系统:Kali Linux  192.168.32.178


服务器场景:p9_linux-7(用户名:root;密码:123456)

服务器场景操作系统:Linux   192.168.32.179 

网络结构拓扑

实战复现

        使用命令firefox http://192.168.32.179访问目标站点,在页面底部查看版权信息。

        发现了网站采用的是有名的5分钟建站的简易Wordpress论坛,然后尝试访问网站根路径的robots.txt文件(robots.txt文件我们写过爬虫的就知道,这个文件是告诉我们哪些目录是禁止爬取的。但是大部分的时候我们都能通过robots.txt文件来判断出cms的类型)

可以看到页面内容中的网站结构wp-xxxx符合我们之前的猜测

进一步检索扫描信息,发现该论坛下有root和test两个用户

nmap结果中收集到的有效信息,比较少,下一步的做法就需要收集更多有关wordpress论坛的信息

Kali中现有的扫描工具中就有一款针对wordpress论坛的专业网站安全漏洞扫描软件wpscan

接下来介绍一下wpscan扫描工具的所有参数

wpscan -u [wordpress url]   

——默认针对网站常用插件做检测

wpscan  -u [wordpress url] -e

——对网站进行全面检测

wpscan –u [wordpress url] 

——扫描可能存在的漏洞网站:

wpscan –u [wordpress url] –wordlist [字典路径] –username [破解的用户] –threads [使用的进程数量] 

——暴力破解用户的root密码

wpscan -update 

——更新漏洞库

wpscan --force | -f Forces

——对目标站点使用暴力破解的方式无论其使用的是否是wordpress论坛

wpscan -u [wordpress url] --wordlist xxx.lst --threads 50

——使用50线程对枚举出来的用户的密码进行字典暴力破解

wpscan -u [wordpress url] --wordlist xxx.lst --username admin

——只对指定admin用户的密码进行字典暴力破解

wpscan –u [wordpress url] --enumerate p ——枚举安装的插件

vp – only vulnerable plugins 只有脆弱插件

ap – all plugins (can take a long time) 所有插件

wpscan -u [wordpress url] --enumerate t ——枚举安装的主题

vt – only vulnerable themes 只有脆弱主题

at – all themes (can take a long time) 所有主题

wpscan -u [wordpress url] --enumerate u ——枚举用户

        使用命令wpscan -u http://172.16.1.21 -e at -e ap -e u 枚举出wordpress的主题,所有插件、以及用户内容。

wpscan -u http://192.168.32.179 -e at -e ap -e u

根据检索信息可知wordpress的版本号为Version 4.6

继续检索发现位于站点的http://172.16.1.21/wp-content/uploads/ 存在目录遍历漏洞:

尝试进行访问,发现管理员没有对站点下的uploads目录进行权限设置:

再往下检阅发现有两个链接存在目录遍历,并且由于网站安装了Pie Register 2.0.14版本的插件导致XSS跨站脚本漏洞可以被利用:

最后枚举出论坛的2个账户信息:

        直接使用命令wpscan http://172.16.1.21对该论坛进行漏洞扫描根据扫描的反馈结果发现目标论坛包含目录遍历和SQL注入漏洞,黄色感叹号代表信息泄露级别,红色感叹号代表威胁程度较高的漏洞。

        对网站的目录遍历地址逐个排查发现/wp-content/plugins/ultimate-product-catalogue/funtions/Process目录下有文件名为Process_Ajax.php,正好验证了前面反馈结果信息里的SQL注入高危漏洞。

下面为漏洞关键代码部分

Line:147

global $subcategories_table_name;

 

$Path = ABSPATH . 'wp-load.php';

include_once($Path);

global $wpdb;

$SubCategories = $wpdb->get_results("SELECT SubCategory_ID, SubCategory_Name FROM $subcategories_table_name WHERE Category_ID=" . $_POST['CatID']);

=========================================================

//$_POST[‘CatID’]  ——$_POST变量由HTTP POST方法发送的变量名称和值,引起这个漏洞的原因是CatID的参数没有做转义处理导致不法用户可以通过构造SQL语句进行注入操作来获取网站资料。

=========================================================================

在论坛中注册一个账号,admin123密码12345678 使用该账户进行登录。

填写一些基本信息进行注册

注册成功

转到http://172.16.1.21/index.php/login ,使用刚注册的账号进行登录

然后转到地址http://172.16.1.21/wp-admin/admin-ajax.php 下,推测该链接存在sql注入点,尝试使用火狐浏览器对其进行手工注入:

实验结束,关闭虚拟机。

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

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

相关文章

零代码编程:用ChatGPT批量下载谷歌podcast上的播客音频

谷歌podcast有很多播客音频,如何批量下载到电脑呢? 以这个播客为例: https://podcasts.google.com/feed/aHR0cHM6Ly9oYWRhcnNoZW1lc2guY29tL2ZlZWQvcG9kY2FzdC8?saX&ved0CAkQlvsGahcKEwi4uauWsvKBAxUAAAAAHQAAAAAQAg 查看网页源代码&a…

【LeetCode刷题(数据结构与算法)】:二叉树的后序遍历

给你一棵二叉树的根节点root 返回其节点值的后序遍历 示例 1: 输入:root [1,null,2,3] 输出:[3,2,1] 示例 2: 输入:root [] 输出:[] 示例 3: 输入:root [1] 输出:[1]…

智慧公厕厂家,解读智慧厕所的全面功能应用

近年来,随着城市化进程的加速,智慧公厕的建设与发展成为了城市管理的重要一环。作为城市的门面和城市基础设施的重要组成部分,智慧公厕不仅能够满足人们基本的生理需求,更能提升城市形象和居民生活品质。那么,智慧公厕…

堆专题4 堆排序

题目: 样例: 输入 5 2 8 5 1 3 输出 1 2 3 5 8 思路: 由题意,堆的排序,就是结合向下或向上调整的方式,调整堆顺序,全部的各个部分都变为 顶堆形式。不同的是,由于我们是顶堆原理&a…

学信息系统项目管理师第4版系列28_组织级项目管理和量化项目管理

1. OPM 1.1. 旨在确保组织开展正确项目并合适地分配关键资源 1.1.1. 有助于确保组织的各个层级都了解组织的战略愿景、实现愿景的措施、组织目标以及可交付成果 1.2. 业务评估是建立OPM框架的必要组件 1.3. OPM3 是组织级项目管理成熟度模型,可用于评估组织项目…

华为OD机考算法题:开心消消乐

题目部分 题目开心消消乐难度易题目说明给定一个 N 行 M 列的二维矩阵,矩阵中每个位置的数字取值为 0 或 1,矩阵示例如: 1 1 0 0 0 0 0 1 0 0 1 1 1 1 1 1 现需要将矩阵中所有的 1 进行反转为 0,规则如下: 1) 当点击一…

互联网Java工程师面试题·Java 总结篇·第一弹

目录 1、面向对象的特征有哪些方面? 2、访问修饰符 public,private,protected,以及不写(默认)时的区别? 3、String 是最基本的数据类型吗? 4、float f3.4;是否正确? 5、short s1 1; s1 s1 1;有错吗…

Deno 下一代JavaScript运行时

目录 1、简介 2、Deno 的特点 3、Deno 和 Node 的区别 4、TypeScript开箱即用 5、内置的基本开发工具 独立可执行文件 测试运行器 代码格式化程序 代码linter 6、专为云而建 7、从浏览器到后端的一致代码 TC39 WinterCG 8、高性能联网 9、数百万个社区模块 10、相关框架 1、简介…

Stream流中的 distinct()方法

去除流中重要的元素。依赖(hashCode和equals方法) Stream流中无法直接修改集合、数组中的数据 package com.csdn.streampractice; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class StreamTest {public …

初级篇—第八章精讲MySQL数据类型

文章目录 MySQL数据类型常见的属性字符集设置数据库的字符设置表的字符集设置字段的字符集设置 整型数据类型可选属性MUNSIGNEDZEROFILL 如何选择? 浮点类型FLOAT 和 DOUBLE 这两种数据类型的区别是啥呢?为什么浮点数类型的无符号数取值范围,…

使用js获取选中的dom元素 并改变选中(有序dom)的状态

一个效果图&#xff0c;一段代码&#xff0c; 就这样吧。 <template><!-- <el-checkbox v-model"">开启双向</el-checkbox> --><divref"checkListRef"mouseup"mouseupCon"mousedown"mousedownCon"mouseov…

【MySQL】深入了解索引的底层逻辑结构

文章目录 主键排序一. InnoDB的索引结构1. 单个page2. 多个page 二. 为什么选择B树三. 聚簇索引和非聚簇索引结束语 主键排序 我们创建一个user表&#xff0c;并乱序插入数据 mysql> create table if not exists user(-> id int primary key,-> age int not null,-&…

【AI视野·今日NLP 自然语言处理论文速览 第五十四期】Fri, 13 Oct 2023

AI视野今日CS.NLP 自然语言处理论文速览 Fri, 13 Oct 2023 Totally 75 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Tree-Planner: Efficient Close-loop Task Planning with Large Language Models Authors Mengkang Hu, Yao M…

比特听命:补码的产生过程与整数在计算机中的存储

文章目录 参考环境声明八位二进制加法器八进制数值 原码概念正负数与零正数与负数的运算 反码概念一步之遥 补码概念唯一的零加法运算 补码的优缺点优点简化算术运算一眼辨别正负性运算过程中无需对符号位进行处理 缺点不易阅读 参考 项目描述搜索引擎Bing、GoogleAI 大模型文…

c#设计模式-行为型模式 之 访问者模式

&#x1f680;简介 封装一些作用于某种数据结构中的各元素的操作&#xff0c;它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作。 访问者模式包含以下主要角色 : 抽象访问者&#xff08;Visitor&#xff09;角色&#xff1a;定义了对每一个元素 &#xff08;E…

英语——语法——从句——句型和句子成分——笔记

老师导言&#xff1a;易于理解。 三种句型&#xff1a;1、主系表&#xff1b;2.主谓*&#xff1b;3.there be 句型&#xff1a;句子构成的形式。句子用于相互沟通&#xff0c;需要表达自己意思&#xff0c;句子中就存在一个主语&#xff0c;一般对主语&#xff08;主要描述对象…

4.Mask R-CNN/YOLOV8/RTMDET三种实例分割方法推理逻辑对比

文章目录 Mask R-CNN/YOLOV8/RTMDET三种实例分割方法推理逻辑对比Mask R-CNNYOLOV5/8实例分割方法RTMDet中的实例分割 欢迎访问个人网络日志&#x1f339;&#x1f339;知行空间&#x1f339;&#x1f339; Mask R-CNN/YOLOV8/RTMDET三种实例分割方法推理逻辑对比 实例分割是同…

CLIP模型原理与代码实现详解

文章目录 前言一、CLIP模型原理1.背景介绍2.对比训练方式3.prompt推理方式4.图像与文本编码结构5.特征CLS token结构vit划分patch原理cls token原理 二、CLIP环境安装1.官方环境安装2.CLIP环境安装3.CLIP运行结果 三.CLIP的Transformer结构代码解读四、CLIP模型主函数代码解读五…

相似性搜索:第 4 部分--分层可导航小世界 (HNSW)

SImilarity 搜索是一个问题&#xff0c;给定一个查询的目标是在所有数据库文档中找到与其最相似的文档。 一、介绍 在数据科学中&#xff0c;相似性搜索经常出现在NLP领域&#xff0c;搜索引擎或推荐系统中&#xff0c;其中需要检索最相关的文档或项目以进行查询。在大量数据中…

从0开始学go第八天

gin获取URL路径参数 package main//获取path&#xff08;URL&#xff09;参数 import ("net/http""github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/:name/:age", func(c *gin.Context) {//获取路径参数name : c.Param(&quo…