影响范围 Docker ALL 漏洞类型 未授权访问类 利用条件 影响范围应用 漏洞概述 Docker Remote API是一个取代远程命令行界面(RCLI)的REST API,当该接口直接暴漏在外网环境中且未作权限检查时...,攻击者可以通过恶意调用相关的API实现远程命令执行 漏洞复现 环境搭建 下载环境 mkdir docker cd docker wget https://raw.githubusercontent.com.../vulhub/master/docker/unauthorized-rce/docker-compose.yml wget https://raw.githubusercontent.com/vulhub.../vulhub/master/docker/unauthorized-rce/docker-entrypoint.sh 之后给docker-entrypoint.sh赋予执行权限 chmod 777...docker-entrypoint.sh 编译并启动环境 docker-compose up -d 漏洞利用 漏洞检测 docker -H tcp://192.168.17.140:2375 images
Docker Swarm是Docker的集群管理工具,它将Docker主机池转变为单个虚拟Docker主机,能够方便的进行docker集群的管理和扩展。...Docker Swarm使用标准的Docker API通过2375端口来管理每个Docker节点,Docker API是一个取代远程命令行界面(RCLI)的REST API。...当Docker节点的2375端口直接暴露并未做权限检查时,存在未授权访问漏洞,攻击者可以利用Docker API执行任何操作,包括执行Docker命令,创建、删除Docker以及获得宿主机权限等。...漏洞复现 访问目标的2375端口如下接口,若有信息,则存在Docker API未授权访问 http://x.x.x.x:2375/version http://x.x.x.x:2375/images http...我们可以执行如下命令启动一个未开启的容器,然后将宿主机的磁盘挂载到容器中。
01 漏洞成因 如果在docker上配置了远程访问,docker 节点上会开放一个TCP端口2375,绑定在0.0.0.0上,如果没有做限制的话,攻击者就可以通过Docker未授权来控制服务器 02 漏洞搭建...05 实战 这里来模拟测试开启Docker API未授权之后,使用密钥登陆受害者机器 5.1 配置Docker支持远程访问 在这里使用我自己的阿里云主机进行测试 首先要配置docker支持远程访问 进行文件备份...直接远程连接 ssh -i id_rsa root@127.0.0.1 ? 登陆成功。...5.3 关闭Docker API未授权 将我们的authorized_keys文件删除,将原来的文件复位 rm authorized_keys mv authorized_keys.bak authorized_keys...然后再用docker info看下 ? 警告信息没了 再试试连接下 ? 可以了 ? 06 修复方法 设置ACL,只允许信任的IP端口连接对应端口 开启TLS,使用生成的证书进行认证
0x01 漏洞简介 该未授权访问漏洞是因为Docker API可以执行Docker命令,该接口是目的是取代Docker命令界面,通过URL操作Docker。...Docker API 未授权访问漏洞分析和利用 0x02 环境准备 靶机环境:192.168.126.130 (ubuntu) 攻击环境:192.168.126.128 (kali) 在靶机上使用vulhub...vulhub官网地址:https://vulhub.org cd /vulhub/docker/unauthorized-rce docker-compose build docker-compose...up -d 0x03 漏洞检测 直接输入地址 http://your-ip:2375/version ;若能访问,证明存在未授权访问漏洞。...0x04 漏洞利用 在kali上安装docker环境 apt-get install docker docker-compose service docker start 在kali上开启nc监听本地1111
Web 开发中,API 通常用于实现前端与后端之间的通信。 客户端 JavaScript 中的 API 客户端 JavaScript 提供了众多可用的 API。...这些 API 并不属于 JavaScript 语言的核心部分,而是建立在其基础之上,为开发者使用 JavaScript 代码提供了额外的强大功能。...通常,这些 API 可以分为两种类型: 第一类是浏览器 API,它们嵌入于 Web 浏览器中,能够从浏览器及其周边环境获取数据,并用于执行各种复杂而有益的操作。...Web Storage API:允许在用户的浏览器中存储数据。 Canvas API:用于在网页上绘制图形。 Geolocation API:获取用户的地理位置信息。...的安全性是一个至关重要的话题,尤其是在数据泄露和未授权访问事件频发的背景下。
现在的 Web 开发大多都是前后端分离的方式,后端接口的正确使用显得尤为重要,本文讲下在 dotNET Core 3.X 下使用 Web API 。...Rider 比较好用(调试和智能提示),在 Rider 中创建 Web API 项目: ?...按照标准的 RESTful Web API 风格,不同的请求动作需要使用相对应的方法,但实际我们最常用的是 GET 和 POST,查询使用 GET,其他的操作都是使用 POST。...更多详细信息可以看文档:https://docs.microsoft.com/zh-cn/aspnet/core/web-api/handle-errors?...最后 本文只是涉及了在 Web API 中比较常用的一些功能点,限于篇幅,每个点并没有写的非常深入,也较少涉及原理,但我们在学习过程中,除了实现效果外还应该深入去了解其中细节和原理。
Docker swarm 是一个将docker集群变成单一虚拟的docker host工具,使用标准的Docker API,能够方便docker集群的管理和扩展,由docker官方提供。...Remote API,可以执行docker命令,比如访问 http://host:2375/containers/json 会返回服务器当前运行的 container列表,和在docker CLI上执行...docker ps的效果一样,其他操作比如创建/删除container,拉取image等操作也都可以通过API调用完成, 0x02 漏洞危害 Docker daemon api是使用url代替命令行来操作...docker,docker swarm 是docker下的集群管理工具,在开放2375端口来监听集群容器时,会调用这个api,可以执行docker命令,root权限启动docker情况下可直接可以控制服务器...0x03 漏洞验证 1、nmap探测开放的docker nmap -p 2375 x.x.x.x 2、使用-H参数连接目标主机的docker,使用ps命令查询目标系统运行的镜像。
开学了,然后要开始做asp项目了,不想跟着进度弄基础的framework,于是去微软官网自学webapi,遇到了下面这个问题 cs1061:"DbContextOptionsBuilder"未包含"UseInMemoryDataBase...报错截图: 在百度找到了解决方案:https://dotnet9.com/11839.html 项目右键“管理NuGet程序包(N)…”,搜索安装Microsoft.EntityFrameworkCore.InMemory
Dashboard: http://localhost:17109 Web应用: https://localhost:7120 身份认证API: https://localhost:17134 考试API...Docker服务启动失败 由于项目使用.NET Aspire管理服务,如果遇到服务启动问题: # 重启Aspire应用 cd Src/CodeSpirit.AppHost dotnet run...dev-certs https --trust 数据库连接问题 # 检查SQL Server容器状态 docker ps | grep sqlserver # 重启SQL Server docker...部署 # 构建所有服务的Docker镜像 dotnet publish CodeSpirit.sln -c Release # 使用项目提供的Dockerfile构建镜像 docker build -f...Src/CodeSpirit.Web/Dockerfile -t codespirit-web:latest . docker build -f Src/CodeSpirit.IdentityApi/
这是第一步,通过此文您将了解如何将net core web api 运行在Docker容器中。...如何在Docker容器中运行Asp.net Core web api 这是第一部份, 我们将对Docker进行一些初步的介绍,安装以及基本的操作;然后我们会创建一个最简单的 netcore web api...然后接着在命令行中进入项目的目录输入 dotnet restore,最后用 dotnet run来运行这个web api 项目。 接着就可以在本地浏览这个api ?...到这里我们的dotnet core web api已经运行在本地了,接下来我们就要让它运行在Docker中。...在Docker中运行dotnet core web api 上面我们已经讲过DockerFile以及一个net core web api 中应该如何配置它。我们会把它放到项目的根目录里。
核心代码如下: Product实体类: public class Product { public int ProductId { get; set; } public string Name...启动镜像并连接到指定数据库 docker提供了--link参数用于在容器之间建立连接。..." with the default driver Building web Step 1 : FROM microsoft/dotnet:latest ---> 7d4dc5c258eb Step...通过浏览器访问http::9090/api/products即可访问我们暴露的api。 5.3....最后 本文通过先介绍如何基于Docker实例化MySQL容器,再介绍如何通过挂载数据卷来持久化MySQL数据,以及如何使用--Link参数进行容器之间的连接,完成了.NET Core连接MySQL数据库
容器相关: docker ps:列出运行中的容器。 docker ps -a:列出所有的容器,包含未运行的。...连接测试 使用可视化工具连接数据库测试,工具有很多,我这里使用的是SQL Server Management(也可以直接在docker中使用命令进入容器连接数据库测试)。...使用账号sa/Password@2020连接。服务器名称localhost,1433这个1433也可以省略,默认端口就是1433。 ? ? 测试连接成功。...构建Docker镜像 下面使用docker构建一个asp.net core web应用的镜像。 首先使用vs2019新建一个asp.net core web应用程序,选择web api作为项目模板。...至此,一个简单的asp.net core web应用就成功运行于docker之中。
这篇文章写的是使用mac(linux)/win10开发一个基于asp.net core 2.0 web api, angular 5, bootstrap 4, sql server linux(使用到...该文章大约分这几部分: 开发环境的搭建 建立和配置asp.net core 2.0 web api 建立和配置angular5项目 开发基本的CRUD功能 基于Unit Of Work和Repository...然后选择是否保存密码, 最后给这个连接起一个名字: ? 这些操作完成后, 就会尝试连接master数据库, 连接成功的话上面会有提示框, 右下角也可以看出来: ?...然后执行dotnet run: ? 浏览器访问http://localhost:5000/api/values: ? 项目建立成功了. 然后在命令行输入code ....api 这一部分, 主要做以下几方面工作: 建立api 配置和使用entity framework core 2.0 配置asp.net core 使用automapper 建立domain models
api, angular 5, bootstrap 4, sql server linux(使用到docker)的小项目....该文章大约分这几部分: 开发环境的搭建 建立和配置asp.net core 2.0 web api 建立和配置angular5项目 开发基本的CRUD功能 基于Unit Of Work和Repository...new webapi 然后执行dotnet run: 浏览器访问http://localhost:5000/api/values: 项目建立成功了....api 这一部分, 主要做以下几方面工作: 建立api 配置和使用entity framework core 2.0 配置asp.net core 使用automapper 建立domain models...dotnet restore 然后打开Tv.csproj添加一个引用: Web.CodeGeneration.Tools
虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除了对...System.Web.dll程序集的依赖,实现在ASP.NET Web API框架中的URL路由系统亦是如此。...也就是说,ASP.NET Web API核心框架的URL路由系统与ASP.NET本身的路由系统是相对独立的。...另一个同样通过字典类型表示的只读属性DataTokens,我们应该不会感到陌生,至于通过制度属性Handler返回的HttpMessageHandler对象是组成ASP.NET Web API消息处理管道的核心...API管道的HttpConfiguration对象,这依赖于我们对Web API的寄宿方式,这并没有定义在ASP.NET Web API的核心框架之中。
Butterfly Server .NET – 允许用最少的工作量构建实时Web应用程序和本机应用程序。定义Web API和Subscription API,以自动同步所连接客户端的数据集。...dotnet-docker – 用于使用.NET Core和.NET Core Tools的基本Docker镜像。...Dockerize.NET – 用于将.NET核心应用程序打包成docker镜像的 .NET Cli工具:’dotnet dockerize’ FlubuCore – 跨平台构建和部署自动化系统,用于使用...go-dotnet – 去.NET Core Runtime的包装器。 Image2Docker – 将现有Windows应用程序工作负载移植到Docker的PowerShell模块。...DarkSkyCore – Dark Sky API的 .NET标准包装器。 Docker.DotNet – 用于Docker API的.NET(C#)客户端库。
️ 一、Selenium WebDriver 核心原理⚙️ 1. 架构模型:客户端-服务器模式• 客户端测试脚本(Python/Java等)调用WebDriver API(如点击操作)。...跨浏览器支持浏览器驱动维护方ChromeChromeDriverGoogleFirefoxGeckoDriverMozillaEdgeEdgeDriverMicrosoft 二、核心API实战详解 1....等待机制(防失败核心!)...无头模式(Headless)& Docker集成# 无头模式(不显示浏览器界面) from selenium.webdriver import ChromeOptions options = ChromeOptions...,结合健壮的API与等待策略解决UI自动化稳定性难题。
Covenant是一个ASP.NET核心,并且是一款跨平台的应用程序,其中包含了一个基于Web的用户界面,并支持多用户协同工作。 ?...4、API驱动; 5、监听器配置; 6、加密密钥交换; 7、动态编译 8、内联C#执行; 9、追踪标识符; 10、C#开发; 工具安装 首先,将Covenant的项目代码从GitHub库克隆至本地,并初始化...git子模块: git clone --recurse-submodules https://github.com/cobbr/Covenant 选项1-Dotnet核心 使用Covenant最简单的方法就是通过安装...Dotnet核心。.../Covenant$ ~> cd Covenant/Covenant$~/Covenant/Covenant > dotnet build$~/Covenant/Covenant > dotnet run
razorclasslib [C#] Web/Razor/Library/Razor Class Library ASP.NET Core Web API...Docker 镜像编译 按照官方指南,我们编写Dockefile,主要是通过microsoft/dotnet:2.1-sdk AS build实现编译,通过microsoft/dotnet:2.1-aspnetcore-runtime...Build/publish Docker Image: ?...然后部署,构建好image后,通过shell执行部署: docker service rm pailitaoservice docker service create --name pailitaoservice...本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Moonglade.Web/Moonglade.Web.csproj", "Moonglade.Web/"] # COPY 其余的工程文件,篇幅关系省略 RUN dotnet restore "Moonglade.Web...WORKDIR "/src/Moonglade.Web" RUN dotnet build "Moonglade.Web.csproj" -p:Version=10.2.0-docker -c Release...-o /app/build FROM build AS publish RUN dotnet publish "Moonglade.Web.csproj" -p:Version=10.2.0-docker...ediwang_dockerhub 是预先在 Azure DevOps 授权配置好的针对 Docker Hub 的连接名称。...Path.Join() 参考文档:https://docs.microsoft.com/en-us/dotnet/api/system.io.path.join?