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

网站开发语言有几种优化设计电子版在哪找

网站开发语言有几种,优化设计电子版在哪找,如何建网站挣钱,茂名网站开发问题背景:由于公司需要整改的老系统的漏洞检查,而系统就是没有使用参数化SQL即拼接查询语句开发的程序,导致漏洞扫描出现大量SQL注入问题。 解决方法:最好的办法就是不写拼接SQL,改用参数化SQL,推荐新项目…

问题背景:由于公司需要整改的老系统的漏洞检查,而系统就是没有使用参数化SQL即拼接查询语句开发的程序,导致漏洞扫描出现大量SQL注入问题。

解决方法:最好的办法就是不写拼接SQL,改用参数化SQL,推荐新项目使用,老项目改起来比较麻烦,花费的时间也多,最后选择用全局SQL过滤器过滤前端发送的请求内容。

代码:

/// <summary>/// 防止输入参数sql注入:Post Get Cookies/// </summary>public class SqlFilter : ActionFilterAttribute{private const string FilterSql = "execute,exec,select,insert,update,delete,create,drop,alter,exists,table,sysobjects,truncate,union,and,order,xor,or,mid,cast,where,asc,desc,xp_cmdshell,join,declare,nvarchar,varchar,char,sp_oacreate,wscript.shell,xp_regwrite,',%,;,--";public override void OnActionExecuting(ActionExecutingContext filterContext){// -----------------------防 Post 注入-----------------------if (filterContext.HttpContext.Request.Form != null){var isReadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);//把 Form 属性改为可读写isReadonly?.SetValue(filterContext.HttpContext.Request.Form, false, null);for (var k = 0; k < filterContext.HttpContext.Request.Form.Count; k++){var inputKey = filterContext.HttpContext.Request.Form.Keys[k];var inputValue = filterContext.HttpContext.Request.Form[inputKey];var filters = FilterSql.Split(',');inputValue = filters.Aggregate(inputValue, (current, filterSql) => Regex.Replace(current, filterSql, "", RegexOptions.IgnoreCase));filterContext.HttpContext.Request.Form[inputKey] = inputValue;}}// -----------------------防 GET 注入-----------------------if (filterContext.HttpContext.Request.QueryString != null){var isReadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);//把 QueryString 属性改为可读写isReadonly?.SetValue(filterContext.HttpContext.Request.QueryString, false, null);for (var k = 0; k < filterContext.HttpContext.Request.QueryString.Count; k++){var inputKey = filterContext.HttpContext.Request.QueryString.Keys[k];var inputValue = filterContext.HttpContext.Request.QueryString[inputKey];var filters = FilterSql.Split(',');inputValue = filters.Aggregate(inputValue, (current, filterSql) => Regex.Replace(current, filterSql, "", RegexOptions.IgnoreCase));filterContext.HttpContext.Request.QueryString[inputKey] = inputValue;}}// -----------------------防 Cookies 注入-----------------------if (filterContext.HttpContext.Request.Cookies.Count > 0){var isReadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);//把 Cookies 属性改为可读写isReadonly?.SetValue(filterContext.HttpContext.Request.Cookies, false, null);for (var k = 0; k < filterContext.HttpContext.Request.Cookies.Count; k++){var inputKey = filterContext.HttpContext.Request.Cookies.Keys[k];var inputValue = filterContext.HttpContext.Request.Cookies[inputKey]?.Value;var filters = FilterSql.Split(',');inputValue = filters.Aggregate(inputValue, (current, filterSql) => Regex.Replace(current, filterSql, "", RegexOptions.IgnoreCase));if (!(filterContext.HttpContext.Request.Cookies[inputKey] is null)){filterContext.HttpContext.Request.Cookies[inputKey].Value = inputValue;}}}base.OnActionExecuting(filterContext);}}

http://www.ds6.com.cn/news/67426.html

相关文章:

  • 电脑主机做网站服务器自己建网站的详细步骤
  • 政府网站建设栏目内容爱站网seo工具
  • 铜煤建设网站武汉seo和网络推广
  • 山东金城建设网站太原网站seo
  • 受欢迎自适应网站建设地址临沂google推广
  • 百度怎么建立网站2022年最火的电商平台
  • 南通网站seo报价福州关键词排名软件
  • 在线网站制作百度网站怎么提升排名
  • 学做川菜最好的网站朝阳区seo
  • 旅游网站建设分析 需求青岛seo网络推广
  • 重庆专业做网站的公司网站关键词排名
  • wordpress的方法seo网络营销公司
  • 制作网站的手机软件中文域名注册官网入口
  • wordpress百度结构化数据插件众志seo
  • 网站怎么做关键词库绍兴百度seo排名
  • 湖南网站建站系统平台百度搜索热词查询
  • 银行网站建设方案汉中网络推广
  • 做纺织都有那些好网站企业营销推广策划
  • php电商网站开发流程图长春网站建设策划方案
  • 网站开发图片多打开速度慢微信社群营销怎么做
  • 望野王绩朗诵旺道seo优化
  • 购物网站开发问题seo自学教程推荐
  • 外贸网站建设价格武汉疫情最新情况
  • 网站建设学习心得江苏seo排名
  • dw是做网站的软件吗上海seo服务
  • 网络推广途径和推广要点临沂seo优化
  • 软件发布流程湘潭网站seo
  • 百度知道山东网站建设辽宁好的百度seo公司
  • 韩国优秀网站查询关键词网站
  • html5 社团网站模板 代码下载个人主页网页设计