net 站点安全 OwaspHeaders.Core

OwaspHeaders.Core

环境:net8

nuget包:OwaspHeaders.Core Version=9.0.1

OwaspHeaders.Core是一款专为ASP.NET Core设计的中间件集合,旨在通过采用OWASP推荐的请求头,以增强Web应用的安全性。该项目不仅支持最新的.NET SDK版本,还提供了丰富的配置选项,让开发者能够灵活地定制安全策略。

OwaspHeaders.Core的核心功能是通过注入HTTP头来提升应用的安全性。这些头包括但不限于:

Strict-Transport-Security:强制使用HTTPS。

X-Frame-Options:防止点击劫持。

X-XSS-Protection:启用浏览器的XSS过滤器。

X-Content-Type-Options:防止MIME类型混淆攻击。

Content-Security-Policy:限制资源加载,防止跨站脚本攻击。

Referrer-Policy:控制Referrer头的策略。

此外,该项目还提供了自定义配置的能力,允许开发者根据具体需求调整安全头设置
暂不支持 Blazor 或 WebAssembly 应用程序

program:

cs 复制代码
  public class Program
  {
      public static void Main(string[] args)
      {
          var builder = WebApplication.CreateBuilder(args);

          // Add services to the container.

          builder.Services.AddControllers();
          // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
          builder.Services.AddEndpointsApiExplorer();
          builder.Services.AddSwaggerGen();

          var app = builder.Build();

          app.UseSecureHeadersMiddleware(SecureHeadersMiddlewareExtensions.BuildDefaultConfiguration());//使用默认配置
          //app.UseSecureHeadersMiddleware(CustomConfiguration());//自定义配置
          

          // Configure the HTTP request pipeline.
          if (app.Environment.IsDevelopment())
          {
              app.UseSwagger();
              app.UseSwaggerUI();
          }

          app.UseAuthorization();

          app.MapControllers();

          app.Run();
      }

      public static SecureHeadersMiddlewareConfiguration CustomConfiguration()
      {
          return SecureHeadersMiddlewareBuilder
              .CreateBuilder()
              .UseHsts()
              .UseXFrameOptions()
              .UseContentTypeOptions()
              .UseContentDefaultSecurityPolicy()
              .UseReferrerPolicy()
              .RemovePoweredByHeader()
              .UseXssProtection()
              .UseCrossOriginResourcePolicy()
              .Build();
      }
  }

使用前

使用后:增加如下请求头信息

相关推荐
龙亘川1 天前
一网统管AI平台民生业务实践:基于城市数字底座赋能公积金业务服务升级
大数据·安全·智慧城市·开源软件·数据可视化·政务
kybs19911 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
LorryJovens1 天前
【LAAP科研】双系统具身AGI范式研究——基于LAAP认知架构与Jev概率决策模型的系统性技术调研与范式验证
人工智能·gpt·安全·架构
其实防守也摸鱼1 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
山东科恩光电1 天前
提升安全性的关键技术:安全触边在工业自动化中的应用解析
安全
LONGZETECH1 天前
一线职教实测:风光 580 汽车故障诊断仿真系统,破解实车实训四大核心痛点
人工智能·学习·安全·架构·汽车
Mikko71 天前
jackson-databind 升到 2.21.6 就安全了吗?jackson-core 是另一个坐标,它那条 high 全局库至今没收
java·后端·安全·json
赛博守夜人1 天前
反舞弊系列之十四:商业地产与零售招商中的“转租差价与免租期寻租”
安全
xiaoqiMikko1 天前
你升的是 jackson-databind,中招的是 jackson-core:一个超长 JSON key 就能吃掉 200MB 堆
java·安全