目录

  • 1 §1 实训项目1 搭建网络安全实训环境
    • 1.1 导入(第1次课)
    • 1.2 §1.1 靶场:虚拟机CentOS7.8(192.168.112.100)
      • 1.2.1 (1)DVWA-master
      • 1.2.2 (2)sqli-labs(第3次课)
      • 1.2.3 (3)sqlmap
      • 1.2.4 (4)login, loginPHP
      • 1.2.5 (5)Firefox, Hackbar
      • 1.2.6 2022.09.07作业1 “未知攻,焉知防”
      • 1.2.7 2022.09.14作业3“拖库—爆库、爆表、爆字段、爆数据”
      • 1.2.8 Q&A-1(作业批改、辅导答疑)
    • 1.3 §1.2 Burp(第2次课)
      • 1.3.1 2022.09.08作业2 “工欲善其事,必先利其器”
      • 1.3.2 Q&A-2(作业批改、辅导答疑)
    • 1.4 §1.3 Python
      • 1.4.1 Python的Anaconda3集成开发环境
    • 1.5 §1.4 Kali
      • 1.5.1 2022.09.15作业4“永恒之蓝漏洞”
    • 1.6 §1.5 Wireshark
    • 1.7 2022.09.15腾讯会议答疑
  • 2 §2 实训项目2 SQL注入
    • 2.1 ■(1)SQL注入联合查询(第3次课)
      • 2.1.1 附件:联合查询SQL注入模板
      • 2.1.2 ■模板
    • 2.2 (2)SQL注入(PDF文档)
      • 2.2.1 ①更新Kali系统中的Firefox浏览器并安装浏览器插件
      • 2.2.2 (2)部署sqli-labs学习环境
      • 2.2.3 (3)sqli-labs使用教学
      • 2.2.4 (4)实战:SQL注入联合查询-获取数据库数据
    • 2.3 ■(3)部署loginPHP网站
      • 2.3.1 ●SQL注入测试
      • 2.3.2 ●创建数据库、部署简单登录网站loginPHP、进行SQL注入测试(2019.12.17)
      • 2.3.3 ①login.php
      • 2.3.4 ②loginAuth.php
      • 2.3.5 ③loginAuth1.php
      • 2.3.6 ④success.php
      • 2.3.7 ⑤failure.php
      • 2.3.8 ■⑥(loginPHP网站SQL注入)结果截图
    • 2.4 (4)DVWA的SQL Injection
    • 2.5 (5)拓展视野:靶场SQL注入
  • 3 §3 实训项目3 通过SQLmap进行SQL注入并获得后台管理员账号和密码
    • 3.1 (1)安装DVWA
    • 3.2 (2)安装SQLmap
    • 3.3 (3)※实战 SQLmap探测DVWA的SQL注入漏洞
    • 3.4 (4)结果截图(SQLmap拖库)
    • 3.5 (5)使用BurpSuite进行POST方式的SQL注入
    • 3.6 ■附 安装DVWA-1.9(完整版)
  • 4 §4 实训项目4 使用永恒之蓝漏洞对Win7进行渗透
    • 4.1 (1)获取Win7系统shell、开启远程桌面
    • 4.2 (2)截图
    • 4.3 (3)Metasploit渗透测试
    • 4.4 (4)使用msf渗透攻击XP并进行远程关机
  • 5 §5 实训项目5 安装Kali渗透测试系统
    • 5.1 BT到Kali的发展史
    • 5.2 (1)安装Kali
    • 5.3 (2)安装BT5
    • 5.4 ■附 安装Kali、BT5、DVWA、SQLmap、Win7
  • 6 §6 实训项目6 配置Kali渗透测试系统
    • 6.1 (1)安装Kali渗透测试系统
    • 6.2 (2)SSH连接Kali
    • 6.3 (3)※ettercap抓取FTP登录账号和密码
    • 6.4 (4)结果截图(ettercap抓取FTP登录账号和密码)
  • 7 §7 实训项目7 ARP协议安全攻防
    • 7.1 (1)ARP协议安全攻防(试题)
    • 7.2 (2)※ARP协议安全攻防
    • 7.3 (4)实训 防御密码嗅探-使用arpspoof实施中间人攻击并抓取密码
    • 7.4 (3)练习:防御密码嗅探-使用arpspoof实施中间人攻击并抓取密码
    • 7.5 演示视频 arpsproof+etthercap实施中间人攻击
  • 8 §8 实训项目8 暴力破解
    • 8.1 (1)※实战-通过暴力破解Web登录界面获得管理员权限
    • 8.2 (2)字典工具pydictor.py
    • 8.3 (3)hydra和xhydra
    • 8.4 (4)Medusa
    • 8.5 (5)离线破解md5值和shadow加密文件
    • 8.6 (6)Brute Force(DVWA)
    • 8.7 (7)Burp Suite(Windows)
    • 8.8 (8)Burp Suite(Kali)
  • 9 §9 实训项目9 防止黑客攻破Discuz论坛并拿下数据库
    • 9.1 (1)防止黑客攻破Discuz论坛并拿下数据库
    • 9.2 (2)CentOS6.5-desktop及MySQL
  • 10 §10 实训项目10作业 Wireshark抓取Telnet明文包
    • 10.1 (1)※Wireshark抓取Telnet明文包(CentOS6.5)
    • 10.2 (2)结果截图(Wireshark抓取Telnet明文包)
    • 10.3 (3)常用协议分析(ARP、ICMP、TCP、HTTP、DNS)
  • 11 §11 实训项目11 基于文件上传漏洞获得网站shell权限
    • 11.1 ●文件上传(PDF文档)
    • 11.2 (1)基于文件上传漏洞获得网站shell权限
    • 11.3 (2)本地文件包含漏洞截图
    • 11.4 (3)课程资料
    • 11.5 (4)课外 编辑器KindEditor文件上传漏洞
  • 12 §12 实训项目12 Nmap
    • 12.1 (1)安全工具
    • 12.2 (2)Nmap
    • 12.3 (3)网络空间安全(系统渗透测试篇)
    • 12.4 (4)信息收集
  • 13 §13 实训项目13 File Inclusion文件包含漏洞及防御
    • 13.1 (1)本地文件包含
    • 13.2 (2)远程文件包含
  • 14 §14 实训项目14 XSS跨站脚本攻击
    • 14.1 (1)窃取用户Cookie信息保存到远程服务器
    • 14.2 (2)反射型XSS攻击劫持用户浏览器
    • 14.3 (3)存储型XSS窃取用户信息
  • 15 §15 实训项目15 缓冲区溢出漏洞
  • 16 §16 实训项目16 搭建蜜罐系统捕捉黑客操作步骤
  • 17 考核
    • 17.1 平时成绩(40%+30%)
    • 17.2 期末考试(30%)
  • 18 网络1901-04期末考试(2020-2021-2)
    • 18.1 试题1:damicms
    • 18.2 试题2:sqli-labs
    • 18.3 试题3:dvwa
    • 18.4 试题4:loginPHP
  • 19 校外卷重修-B05123网络安全运行与维护复习
    • 19.1 (1)loginPHP
    • 19.2 (2)Python编程
(4)课外 编辑器KindEditor文件上传漏洞

编辑器KindEditor文件上传漏洞

KindEditor官方下载地址

https://github.com/kindsoft/kindeditor/releases

KindEditor是一套开源的HTML可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容IE、Firefox、Chrome、Safari、Opera等主流浏览器。



一、关于编辑器KindEditor上传漏洞的安全预警

1、编辑器 KindEditor漏洞描述

开源HTML编辑器KindEditor存在文件上传漏洞并已出现攻击事件。

漏洞存在于KindEditor组件中的upload_json.*上传功能文件允许被直接调用(没有任何验证措施)从而实现任意上传htm、 html、txt等文件到服务器,可造成网页被篡改、植入恶意代码等问题。

2、威胁级别

威胁级别:【严重】(说明:威胁级别共四级:一般、重要、严重、紧急。)

3、影响范围

KindEditor<=4.1.11的版本


二、快速搭建KindEditor环境

1.搭建系统环境

我们搭建一个基本的软件环境满足KindEditor正常运行即可

# systemctl stop firewalld #关闭防火墙

# iptables -F                      #清空iptables防火墙规则

# setenforce 0                    #临时关闭SELinux

# yum -y install httpd php  #安装http和php环境

修改httpd默认配置

# vi /etc/httpd/conf/httpd.conf

改:

96 #ServerName www.example.com:80

为:

96 ServerName 192.168.112.100:80

启动httpd服务

# systemctl start httpd


2.配置KindEditor

使用rz命令上传KindEditor和我们写好的页面文件

没有安装rz命令使用以下命令进行安装

# yum install -y lrzsz

# rz

kindeditor-4.1.11-zh-CN.zip(811K)  wgxy.php

# ls

anaconda-ks.cfg kindeditor-4.1.11-zh-CN.zip wgxy.php

解压kindeditor到网站目录下

# unzip kindeditor-4.1.11-zh-CN.zip -d /var/www/html/

复制页面文件到网站目录下

# cp wgxy.php /var/www/html/

创建kindeditor需要的目录

# mkdir /var/www/html/kindeditor/attached

修改网站根目录下的文件权限为apache

# chown -R apache:apache /var/www/html/


3.测试页面是否正常访问

浏览器打开页面

http://192.168.112.100/wgxy.php

页面可以正常访问。


三、使用Kali对目标网站上传恶意文件实现页面跳转

1.配置Kali网络代理

点击图标打开Burpsuite

Burpsuite是一款强大的Web安全工具,集成了非常多的Web攻击应用程序。

点击图标即可直接打开

配置浏览器使用burpsuite进行上网。这样我们就可以截获我们提交的数据包。


2.上传恶意文件测试

新建测试文件,后续我们会将该文件通过漏洞利用上传到目标服务器上。

# echo "<script>alert('wgxy')</script>" > test.html

火狐浏览器中输入

http://192.168.112.100/wgxy.php

这个时候我们会发现web 页面是打不开的

然后我们回到burpsuite,找到我们Host地址为192.168.112.100的数据包,如果前面有一些其他的无关数据包一律点击放行也就是Forward。


3.进行页面跳转

我们来写一个简单的页面跳转的页面进行上传

# vi wgxy.html

<script language="javascript">

window.location = "http://www.wgxy.net";

</script>


4.排查漏洞和修复漏洞的方法

排查方法:

(1)检查网站的KindEditor编辑器版本是否低于 4.1.12;

(2)排查网站目录中是否存在可疑htm、html、txt等文件特别是文件上传目录;

(3)检查网站服务器中是否存在webshell木马程序;

(4)检查网站服务器日志记录,攻击者有无提权或对其他服务器发起攻击。

处置方案:

(1)隔离主机:将已被篡改的服务器隔离,关闭对外提供的网络连接

(2)修补漏洞:升级KindEditor编辑器版本为最新版本,删除upload_json.*和file_manager_json.*名字开头的文件;

(3)修改配置文件,限制文件上传类型;

(4)使用专业的木马查杀工具对全盘进行木马查杀;

(5)查找攻击源:查看网站日志或者其他审计设备,确定攻击发生的时间,攻击者的其他信息。

注意:修复漏洞前请将资料备份,并进行充分测试。


课程资料:

1.编辑器KindEditor软件

kindeditor-4.1.11-zh-CN.zip(811K)【见群】

2.调用编辑器wgxy.php

<html>

<head>

<script charset="utf-8" src="kindeditor/kindeditor-all-min.js"></script>

<script charset="utf-8" src="kindeditor/lang/zh_CN.js"></script>

<script>

KindEditor.ready(function(K) {

window.editor = K.create('#editor_id', {

allowFileManager : true

});

});

</script>

<textarea id="editor_id" name="content" cols="100" rows="8"></textarea>

</head>

<body>

</body>

</html>