.Net 通用防注入代码

.Net 全局过滤,防止SQL注入 防止SQL 注入、漏洞修复 阅读详情
using System;

namespace web.comm
{
    /// <summary>
    /// ProcessRequest 的摘要说明。
    /// </summary>
    public class ProcessRequest
    {
        public ProcessRequest()
        {
            //
            // TODO: 在此处添加构造函数逻辑
            //
        }

        #region SQL注入式攻击代码分析
        /// <summary>
        /// 处理用户提交的请求
        /// </summary>
        public static void StartProcessRequest()
        {
            
//            System.Web.HttpContext.Current.Response.Write("<script>alert('dddd');</script>");
            try
            {
                string getkeys = "";
                //string sqlErrorPage = System.Configuration.ConfigurationSettings.AppSettings["CustomErrorPage"].ToString();
                if (System.Web.HttpContext.Current.Request.QueryString != null)
                {
    
                    for(int i=0;i<System.Web.HttpContext.Current.Request.QueryString.Count;i++)
                    {
                        getkeys = System.Web.HttpContext.Current.Request.QueryString.Keys[i];
                        if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.QueryString[getkeys],0))
                        {
                            //System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
                            System.Web.HttpContext.Current.Response.Write("<script>alert('请勿非法提交!');history.back();</script>");
                            System.Web.HttpContext.Current.Response.End();
                        }
                    }
                }
                if (System.Web.HttpContext.Current.Request.Form != null)
                {
                    for(int i=0;i<System.Web.HttpContext.Current.Request.Form.Count;i++)
                    {
                        getkeys = System.Web.HttpContext.Current.Request.Form.Keys[i];
                        if (!ProcessSqlStr(System.Web.HttpContext.Current.Request.Form[getkeys],1))
                        {
                            //System.Web.HttpContext.Current.Response.Redirect (sqlErrorPage+"?errmsg=sqlserver&sqlprocess=true");
                            System.Web.HttpContext.Current.Response.Write("<script>alert('请勿非法提交!');history.back();</script>");
                            System.Web.HttpContext.Current.Response.End();
                        }
                    }
                }
            }
            catch
            {
                // 错误处理: 处理用户提交信息!
            }
        }
        /// <summary>
        /// 分析用户请求是否正常
        /// </summary>
        /// <param name="Str">传入用户提交数据</param>
        /// <returns>返回是否含有SQL注入式攻击代码</returns>
        private static bool ProcessSqlStr(string Str,int type)
        {
            string SqlStr;

            if(type == 1)
                SqlStr = "exec |insert |select |delete |update |count |chr |mid |master |truncate |char |declare ";
            else
                SqlStr = "'|and|exec|insert|select|delete|update|count|*|chr|mid|master|truncate|char|declare";

            bool ReturnValue = true;
            try
            {
                if (Str != "")
                {
                    string[] anySqlStr = SqlStr.Split('|');
                    foreach (string ss in anySqlStr)
                    {
                        if (Str.IndexOf(ss)>=0)
                        {
                            ReturnValue = false;
                        }
                    }
                }
            }
            catch
            {
                ReturnValue = false;
            }
            return ReturnValue;
        }
        #endregion


    }
}

360_safe3通用XSS/SQL防注入源代码(ASP/PHP/C#ASP.NET) 360_safe3通用XSS/SQL防注入源代码(ASP/PHP/C#ASP.NET),下载后,每个开发语言都对应着使用办法,一般是在全站文档中INCLUDE使用。已核实,代码可用且有效,更新到最新版。 立即下载

相关推荐

通用aspx防止注入代码

360通用aspx防护代码 -----------------使用方法------------------------------------------------------------------ 1.将App_Code目录拷贝到web根目录 假如已经存在App_Code目录,那直接把App_Code目录里的360safe.cs文件拷贝到当前的App_Code目录即可。 2.将Global.asax文件拷贝到web根目录 假如已经存在Global.asax文件,那直接把下面这段代码 void Application_BeginRequest(object sender, EventArgs e) { if (Request.Cookies != null) { if (safe_360.CookieData()) { Response.Write("您提交的Cookie数据有恶意字符!"); Response.End(); } } if (Request.UrlReferrer != null) { if (safe_360.referer()) { Response.Write("您提交的Referrer数据有恶意字符!"); Response.End(); } } if (Request.RequestType.ToUpper() == "POST") { if (safe_360.PostData()) { Response.Write("您提交的Post数据有恶意字符!"); Response.End(); } } if (Request.RequestType.ToUpper() == "GET") { if (safe_360.GetData()) { Response.Write("您提交的Get数据有恶意字符!"); Response.End(); } } } 拷贝到当前的Global.asax文件里保存。

探索Inject-Assembly:一款强大的.NET动态代码注入工具

```

gitblog_00010的博客 599

360通用aspx防护.rar

c# 全站防止sql注入,利用Global.asax、Appcode中添加类的方法 c# 防止sql注入 全局防护 360通用aspx防护 Global.asax 操作简单

asp.net 360通用防护代码,防止sql注入与xss跨站漏洞攻击

这是360提供的一个aspx公用代码,可以防止sql注入漏洞,xss跨站攻击漏洞,如果您的网站被360扫描,出现sql注入或跨站攻击等相关漏洞,没有较好的解决方案,倒是可以采用该方法进下防范。 -----------------使用方法------------------- 1.将App_Code目录拷贝到web根目录 假如已经存在App_Code目录,那直接把App_Code目

lisky119的专栏 5678

360通用asp防护代码

360通用asp防护代码 在所需要防护的页面加入代码 就可以做到页面防注入、跨站 如果想整站防注,就在网站的一个公用文件中,如数据库链接文件conn.asp中! 添加来调用本代码

防360代码大全

防360代码大全

.NET中如何防止注入攻击

目的: 对输入的字串长度,范围,格式和类型进行约束.  在开发ASP.NET程序时使用请求验证防止注入攻击.  使用ASP.NET验证控件进行输入验证.  对不安全的输出编码.  使用命令参数集模式防止注入攻击.  防止错误的详细信息被返回到客户端.  概述 :   你应该在程序中验证所有的不信任输入.你应该假定所有的用户输入都是非法的.用户可以在应用程

huangchangxu的专栏 575

360通用asp防护代码(防sql注入)

这个是360出的防sql注入的源码,可以防止注入漏洞,跨站攻击漏洞,如果您的网站被360扫描,不管怎么修改都报毒请用这个代码试试看。这是360提供的一个asp公用代码,效果不错哦。

.net 通用防注入代码

  using System;namespace web.comm{    /**//// &lt;summary&gt;    /// ProcessRequest 的摘要说明。    /// &lt;/summary&gt;    public class ProcessRequest    {        public ProcessRequest()        {         ...

weixin_34007886的博客 200

Windows防火墙服务异常修复指南:0x80070422与0x6D9报错实战处理

本文针对Windows防火墙服务异常导致的0x80070422与0x6D9报错,提供了从基础到进阶的实战修复指南。核心是通过services.msc服务管理器检查并修复Windows Firewall服务,包括设置启动类型、检查依赖服务等关键步骤。同时介绍了当基础方法失效时,如何使用命令行工具、系统文件检查器(SFC/DISM)以及排查组策略与第三方软件冲突等深度解决方案,帮助用户彻底解决防火墙服务无法启动或访问的问题。

m9n0o的博客 542

GNSS接收机性能测试指标详解:TTFF、位置精度、灵敏度等关键参数如何评估

本文详细解析了GNSS接收机性能测试的关键指标,包括首次定位时间(TTFF)、位置精度、灵敏度等,帮助工程师系统评估接收机性能。通过多频段协同定位和载波相位测试等技术,提升定位精度至亚米级。同时,介绍了灵敏度测试的极限挑战和授时精度的专业测试方案,为GNSS接收机的性能优化提供实用指导。

cuda7parallel的博客 962

别再让IP冲突了!用OpenWrt的DHCP功能,给你的智能家居设备做个‘户口本’

本文详细介绍了如何利用OpenWrt的DHCP静态地址分配功能,为智能家居设备打造稳定的IP管理体系。通过MAC地址绑定实现'一机一IP',有效解决IP冲突、服务中断等问题,提升网络管理效率。文章包含Web界面和SSH命令行两种配置方法,以及批量管理技巧和故障排除方案。

weixin_33744854的博客 427

EMC辐射发射测试:垂直与水平极化测试原理与实战指南

电磁兼容(EMC)测试是确保电子设备在复杂电磁环境中稳定运行的关键环节,其核心在于评估设备产生的电磁干扰(EMI)强度。辐射发射测试作为EMC测试的重要组成部分,通过测量设备向空间辐射的电磁噪声,判断其是否符合国际标准限值。测试原理基于电磁波的极化特性,即电场矢量的振动方向,主要分为垂直极化和水平极化。理解极化特性对于精准定位辐射源、高效进行EMC整改具有重要技术价值。在工程实践中,垂直极化噪声通常源于线缆辐射等垂直结构,而水平极化噪声多来自PCB走线等水平结构。通过分别测量两种极化方向的辐射最大值,可以全

weixin_32770423的博客 351

.net sql防注入通用代码

<br />web.config文件调用<br />放在<system.web>块中<br />     <httpHandlers> <br />      <add verb="*" path="*.aspx" validate="false" type="SqlIn.SqlInPost"/><br />    </httpHandlers>SqlInPost.cs 放到app_code 目录下:SqlInPost.csusing System;<br />using System.Data;<br /

423

nRF52382低功耗蓝牙应用开发之入门教程-软件烧录

准备工作在上一篇文章讲过了,这里就讲讲nRFgo studio的使用 硬件准备: J-link:2线 供电:3.3V 如下图打开nRFgo studio界面介绍, 2、如果J-link正常,如下图 3、如果蓝牙芯片正常 4、烧录过程,如果蓝牙芯片之前有烧录过程序,需先点擦除,再点烧录 5、烧录代码路劲,例如 F:\nRF\SDK\nRF5_SDK_15.2.0_...

LinQiPing233的博客 1945

containerd镜像加速配置全解析:从host.toml到config.toml的演进与实践

本文全面解析了containerd镜像加速的配置方法,重点对比了传统的config.toml集中式配置与现代的host.toml模块化配置的演进与优劣。文章通过实战演示,详细指导如何为docker.io、registry.k8s.io等常见仓库配置host.toml加速,并提供了生产环境下的最佳实践、故障排查与性能优化建议,帮助用户显著提升镜像拉取效率与系统稳定性。

jenkins8butler的博客 698

360_safe3通用XSS/SQL防注入源代码集成说明

360_safe3通用XSS/SQL防注入源代码集成说明 【下载地址】360_safe3通用XSSSQL防注入源代码集成说明 这是一套专为ASP、PHP、C#ASP.NET开发者设计的360_safe3通用XSS/SQL防注入源代码,旨在有效防御跨站脚本攻击(XSS)和SQL注入攻击,保障网站安全。项目提供了针对三种语言...

gitblog_06773的博客 337

Linux安装Oracle sqlplus客户端工具

Linux安装Oracle sqlplus客户端工具

优快云_Nan_Jiang_Li的博客 2776

sql 批量update_[基础篇] 手写ORM—Update

今天把通用更新的方法封装一下,整理一下思路,先写出一条 Update 的语句:UPDATE [{type.Name}] SET {updateString} WHERE Id = @Id同样,括号里面的内容是可变部分,我们用反射动态获取。Typetype=typeof(T);varupdateString=string.Join(",",type.GetPr...

weixin_40000999的博客 514

液态神经网络(Liquid Neural Networks)从线虫大脑到下一代 AI

液态神经网络(Liquid Neural Networks,LNN)是一类具有动态内部结构的神经网络,其灵感来源于生物神经系统,尤其是大脑中神经元如何以复杂、非线性的方式响应外部刺激。与传统神经网络不同,液态神经网络的每个神经元在处理输入时,不再是静态线性或非线性变换,而是基于一个微分方程模型进行响应。这种建模方式使神经元的行为具有时间连续性和动态适应性。换句话说,它不仅“记住”过去的信息,还能根据当前环境实时调整自身的动态特性,这对于感知、决策、预测等任务都非常关键。

hello.reader 7408

STM32CubeMX之定时器输入捕获

上一章介绍了STM32定时器的PWM输出功能,定时器的几个通道除了有输出功能外,还可以做输入用,可捕获信号的上升沿或下降沿,可以用于测量信号的频率、周期、占空比等。本篇文章将介绍用STM3...

zhang062061的专栏 1338

.net sql防注入代码

web.config文件调用                 SqlInPost.cs 放到app_code 目录下: SqlInPost.csusing System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.W

lyjaiyu的专栏 542

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

求助.net防注入代码

<br />网站经常被注入,请问谁有实用点的防注入代码呢?.NET和SQLSERVER数据库的,本人不懂,望哪位朋友指点下我啊,万分感谢啊,我都愁死了 在线等<br /><br /> 没人帮我啊??<br /><br /> 帮你顶<br />我也遇到过<br />等待解决<br /><br />我目前的改版是<br />所有的数据库操作都使用 存储过程 或者 参数传递<br />再就是基本的字符过滤<br /><br /> 在进行数据库操作的时候,比如像这样做就不容易被注入了:<br /><br

657

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ASP.NET 防注入的两个通用函数

asp.net防注入 一.如果参数全为数字: //检查字符串是否全为数字 publicstaticboolIsNum(stringStr) { boolblResult=true; ...

weixin_30642267的博客 75

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

net 防注入

对于网站的安全性,是每个网站开发者和运营者最关心的问题。网站一旦出现漏洞,那势必将造成很大的损失。为了提高网站的安全性,首先网站要防注入,最重要的是服务器的安全设施要做到位。下面说下网站防注入的几点要素。一:丢弃SQL语句直接拼接,虽然这个写起来很快很方便。二:如果用SQL语句,那就使用参数化,添加Param三:尽可能的使用存储过程,安全性能高而且处理速度也快四:屏蔽SQL,javascript等

随风的专栏 292
上一篇: .Net 常用工具类--苏飞收集
下一篇: Js和Jquery获取父级元素、子级元素、兄弟元素的方法
双鱼达摩
博客等级 码龄18年 8粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值