ASP安全配置不完全手册

ASP.NET Core新手必看:IIS和Kestrel到底选哪个?从零开始的部署避坑指南 本文深入探讨ASP.NET Core部署中IIS与Kestrel的选型策略,提供实战指南与避坑建议。针对不同场景分析两种服务器的性能、安全及运维差异,涵盖Windows/Linux环境部署流程、混合架构配置及性能优化技巧,帮助开发者做出明智选择。 阅读详情

——从asp程序编写到服务器配置
ASP全称Active Server Pages,是微软推出的用来取代CGI(Common Gateway Interface)的动态服务器网页技术。由于ASP比较简单易学,又有微软这个强大后台的支持,所以应用比较广泛,相对来说发现的缺陷和针对各程序的漏洞也比较多。ASP可运行的服务器端平台包括:WinNT、Win2k、WinXP和Win2003,在Win98环境下装上PWS4.0也可以运行。现在我们就针对Win2k和Win2003这两个系统来谈谈ASP的安全配置。
 
ASP程序安全篇:
在做安全配置前,我们先了解一下入侵者的攻击手法。现在很流行注入攻击,所谓注入攻击,就是利用提交特殊地址将ASP中引用的正常SQL语句和入侵者所需要的SQL语句一并执行,使入侵者达到入侵的目的。现在更是有一些脚本注入工具发布,使菜鸟也可以轻松完成对ASP的注入攻击。那么我们先来了解一下这些工具是怎样注入的。
首先,入侵者会对一个网站确定可不可以进行注入,假设一篇文章的地址为:http://www.scccn.com/news.asp?id=1一般会以提交两个地址来测试,如:
http://www.scccn.com/news.asp?id=1 and 1=1
http://www.scccn.com/news.asp?id=1 and 1=2
第一个地址后面加了 and 1=1,构成的SQL语句也就变为了:Select * from 表单名 where id=1 and 1=1这句话要成立就必须and前后语句都成立。那么前面的文章地址是可以访问的,后面的1=1也是客观成立的,那么第一个地址就可以正常显示;相反1=2是显然不成立的,关键就看这步了,如果提交and 1=2页面还是正常显示说明他并没有将and 1=2写入SQL语句,此站也就不存在注入漏洞;但如果提交and 1=2之后返回了错误页面则说明此站点将后面的语句带入了SQL语句并执行了,也就说明他可以进行SQL注入。(注:如果地址后面跟的是news.asp?id='1'就得变为news.asp?id=1' and '1'='1来补全引号了)
 那么,知道可以注入后入侵者可以做什么呢?
 这里就简单的说一下,比如提交这样的地址:
http://www.scccn.com/news.asp?id=1 and exists (select * from 表名 where 列名=数据)
根据返回的正确或错误页面来判断猜的表名和列名是否正确,具体实现时是先猜表名再猜列名。当猜出表名和列名之后还可以用ASC和MID函数来猜出各列的数据。MID函数的格式为:mid(变量名,第几个字符开始读取,读取几个字符),比如:mid(pwd,1,2)就可以从变量pwd中的第一位开始读取两位的字符。ASC函数的格式为:ASC("字符串"),如:asc("a")就可以读出字母a的ASCII码了。那么实际应用的时候就可以写为:asc(mid(pwd,1,1))这样读取的就是pwd列的第一个字符的ASCII码,提交: asc(mid(pwd,1,1))>97以返回的页面是否为正确页面来判断pwd列的第一个字符的ASCII码是否大于97(a的ASCII码),如果正确就再试是否小于122(z的ASCII码)……这样慢慢缩小字符的ASCII码的范围,猜到真实的ASCII码也只是时间的问题。一位一位的猜就可以得到数据库中的用户名和密码了。还有一种ASP验证缺陷——就是用户名和密码都输'or '1'='1,构造SQL语句Select * form 表单名 where username='' or '1'='1' and pwd='' or '1'='1'就可以达到绕过密码验证的目的。
 说了那么多,其实防范的方法很简单,我们把特殊字符(如and、or、'、")都禁止提交就可以防止注入了。ASP传输数据分为get和post两种, get是通过将数据添加到URL后提交的方式,post则是利用邮寄信息数据字段将数据传送到服务器。
那么,我们先来看看如何将get方式提交数据中的特殊字符过滤。首先要知道,IIS是以字符串的形式将get请求传给asp.dll的,在将数据传递给Request.QueryString之后,asp解析器会解析出Request.QueryString的信息,然后跟据"&"来分出各个数组内的数据。现在我们要让get方式不能提交以下字符:
'、and、exec、insert、select、delete、update、count、*、%、chr、mid、master、truncate、char、declare
那么,防止get方式注入的代码就如下:
<%
dim sql_leach,sql_leach_0,Sql_DATA
sql_leach = "',and,exec,insert,select,delete,update,count,*,%,chr,mid,master,truncate,char,declare"
sql_leach_0 = split(sql_leach,",")

If Request.QueryString<>"" Then
For Each SQL_Get In Request.QueryString
For SQL_Data=0 To Ubound(sql_leach_0)
if instr(Request.QueryString(SQL_Get),sql_leach_0(Sql_DATA))>0 Then
Response.Write "请不要尝试进行SQL注入!"
Response.end
end if
next
Next
End If
%>
其中,变量sql_leach中的字符串就是指定过滤的字符,以","隔开。
 接着过滤post提交方式的注入,我们可以看到,request.form也是以数组形式存在的,只要对它再进行一次循环判断就可以了。防止以post方式注入的ASP代码如下:
<%
If Request.Form<>"" Then
For Each Sql_Post In Request.Form
For SQL_Data=0 To Ubound(sql_leach_0)
if instr(Request.Form(Sql_Post),sql_leach_0(Sql_DATA))>0 Then
Response.Write "请不要尝试进行SQL注入!"
Response.end
end if
next
next
end if
%>
 这样,get和post注入都被禁止了。
 另外就是数据库的问题,首先现在很流行的用*.asp命名数据库已经没什么意义了,因为可以用下载软件来下载;在数据库名前加#的作用也不大,虽然访问时浏览器只访问#前面的内容,但是如果将#用其unicode表达法(%23)替换掉就可以访问了。既然这样,那么我们禁止入侵者暴库就可以了。一般暴数据库的方法,是将读取数据库的文件名(如conn.asp)前的"/"替换为"%5c"("/"的unicode表达法)这样就可以使ASP将%5c解释为访问网站根目录,而实际是数据库不在指定位置,找不到数据库,再将IE设置为"显示友好的HTTP错误信息"的情况下自然就暴出了数据库的路径。
 防范的方法也比较简单,就是让ASP程序即使在出错的情况下也不报错直接执行下一步就可以了。在ASP文件中加这么一句:on error resume next就OK了。
还有几点要注意的:
1.数据库命名长些并尽量放在网站根目录下,数据库的表名和字段名尽量不合常规;2.保存敏感信息(如用户和密码)的数据库尽量和在前台页面引用的数据库分开(如果用新的暴库方法由前台页面暴出了数据库,那么入侵者也得不到有价值的信息);3.后台的目录名和登陆页面的名字要改的不寻常些,千万不可出现admin或者login之类的字符,以免被注入软件扫描到后台。4.如果前台或后台有上传文件的功能,切记不能有任何其他功能直接的或间接的拥有更改文件名的权限。这样的多重保障就更加安全些了。
 

ASP服务器安全配置篇(针对win2k和win2003):
 我们从裸机说起——
 首先,拔掉网线,按需求分区之后将所有盘格式化为NTFS,在D盘安装系统。系统装完之后立刻做一个裸系统的ghost备份,以防后面配置的过程中出意外。
 先把驱动都装上是必要的。之后先装防火墙,选择一款好的防火墙是很重要的。能买硬件防火墙最好,推荐的选择:cisco pix系列、天融信 NGFW系列、冰之眼(入侵检测系统)。没有硬件防火墙的情况下,使用软件防火墙,推荐:Blackice(我个人的最爱)、Checkpoint(以色列国家级防火墙)、ZoneAlarm(不太熟悉,但口碑不错),虽然比较喜欢天网防火墙,但是不推荐服务器用天网。
装完防火墙装杀毒软件,推荐:KV江民杀毒软件(好东西)、诺顿(虽然好,但比较霸道)、卡巴斯基(听说比较耗内存,但对病毒疗效狂好)。
开始安装各种需要的软件,如果是2003系统,别忘了装IIS。以上所有软件都装在一个非系统盘的指定盘里。
下面开始给系统打补丁,首先用手头有的光盘给2k打上SP4或给2003打上SP1。在本地操作的情况下将能打系统和软件的补丁都打上。之后,在确认防火墙和杀毒软件都设置好的情况下插上网线,开始window update,并升级杀毒软件至最新病毒库。打完所有的系统和软件的补丁之后,将网线拔掉,把所有临时文件和系统补丁留下的卸载文件全部删除,如果觉得占用空间太多还可以把%systemroot%/System32/dllcache/下的所有文件删除(系统备份文件),这将使最后的ghost备份文件体积比较小。然后再次用ghost备份系统。
之后删除不安全的组件,需要将WScript.Shell, WScript.Network, Shell.application删除掉。在cmd下分别输入(以2k为例,2003路经为D:/windows):
regsvr32/u D:/WINNT/System32/wshom.ocx
del D:/WINNT/System32/wshom.ocx
重新启动,就OK了。另外入侵者可以利用getobject("WINNT")获得用户和进程的列表,可以将Workstation服务禁用作为防范措施。
设置权限是必要的。首先,确定IIS里要建立几个站点,之后为每个站点建立一个用户。在IIS站点的目录安全性里选择让这个用户作为匿名访问的帐户。再设置所有分区都禁止这个用户访问,而在站点对应的文件夹设置允许此用户访问。这样即使站点被入侵,入侵者也拿不到服务器的shell。
一切做好之后用ghost再次备份,并将做好的备份文件放在与服务器不在同一局域网的机器上或相对安全的地方。插上网线,服务器就可以安全的正常工作了。之后可以在每次服务器重起时还原一次系统,这都是后话了。


好了,基本上就这么多了,以上说的可能不太完全,仅作参考之用,不足之处还请高手多多补充。欢迎各位来中国网络安全中心交流:http://www.scccn.com。

Bluephantom作于2005年

STM32控制舵机SG-5010转动,HAL库 首先设置时钟为72Mhz,预分频系数为72-1,自动重装载计数器的值为5000-1,这样的话就可以得到一个5ms的脉冲宽度,5000的计数值可以让舵机的旋转角度变得更加易控且相对精准,计算旋转角度的时候也可以更加精确。所以我们5ms脉宽,period是5000脉宽-------------角度----------pulse0.5ms-------------0度----------500;1.0ms------------45度---------1000; 阅读详情

相关推荐

如何降低 Claude Code 封号风险:实用指南

本文针对 Claude Code 用户频繁遭遇账号封禁的问题,提供了一套经过实战验证的解决方案。通过分析封号的根本原因——共享VPN导致的IP异常标记,文章详细介绍了如何通过"独立服务器+中转服务+环境配置"三步走策略,显著降低封号风险。

goodparty的专栏 2120

ASP服务器安全权限配置清单

好高兴啊~~ 研究了估计有4天,把asp程序运行,最安全的服务器权限配置出来了. 这里所说的是只能为asp程序运行的权限配置,php,jsp还没有研究,不过估计大同小异罢了。 关于运行asp服务器安全权限配置清单: 所有的盘都先设为administrators组,如果你害怕有别的人提升管理员了,你就设成自己的管理员吧,比如administrator...

weixin_33845881的博客 310

libopus 实现pcm 编码到opus

opus 是一种音频格式,常用于语音通话、视频会议中。最近做了个pcm 到opus 的编码,踩了不少坑,特此记录一下。

sinat_27720649的博客 9464

asp配置不完全手册

--引自安全焦点,对自己有用,暂时保留-2006/2/25  ASP程序安全篇:在做安全配置前,我们先了解一下入侵者的攻击手法。现在很流行注入攻击,所谓注入攻击,就是利用提交特殊地址将ASP中引用的正常SQL语句和入侵者所需要的SQL语句一并执行,使入侵者达到入侵的目的。现在更是有一些脚本注入工具发布,使菜鸟也可以轻松完成对ASP的注入攻击。那么我们先来了解一下这些工具是怎样注入的。首

苦言的专栏 1066

后向投影算法(BPA)-SAR成像算法系列(二)

SAR成像算法:后向投影算法(BPA)原理介绍及实现步骤解析。

yjh_2019的博客 1万+

WPS JS宏智能识别代码段并设置样式(完整可用版)

之前,我们已经经历了多次迭代,解决了许多问题,比如识别代码块、处理多行导入、调整样式等。现在他们需要一份全面的文档来解释整个代码的结构和工作原理。(5)智能行分析(含URL和注解检测优化)function analyzeLineEnhanced(rawText,trimmedText,codeSymbols,codePatterns, singleLinePatterns)该解决方案在保持高性能的同时,提供了良好的可扩展性,能够适应不同组织的代码规范需求,是WPS生态中专业文档处理的创新实践。

搏博的专栏 1822

SimplCommerce安全配置完全手册:保护电商数据的关键步骤

SimplCommerce是一款基于.NET构建的跨平台模块化电商系统,为在线商家提供安全可靠的交易环境。本文将详细介绍如何通过关键配置步骤全面提升SimplCommerce的安全性,保护用户数据和支付信息。 ## 1. 配置HTTPS加密通信 HTTPS是保护电商网站通信安全的基础。SimplCommerce默认已启用HTTPS重定向功能,确保所有HTTP请求自动转换为HTTPS连接。 [

gitblog_00007的博客 402

EEVDF调度算法核心实现解析(一)

本文深入解析Linux kernel 6.6引入的EEVDF调度算法核心实现,详细讲解其基于虚拟截止时间(virtual deadline)的进程挑选机制和红黑树优化设计。通过代码实例展示算法如何平衡系统响应速度与公平性,特别适合需要优化Linux系统性能的开发者参考。

weixin_42522953的博客 477

ZKEACMS安全配置完全手册:保护你的网站免受攻击

ZKEACMS是基于.Net 8构建的可视化内容管理系统,为网站管理员提供直观的内容编辑和管理功能。本手册将详细介绍如何通过安全配置保护你的ZKEACMS网站,防范常见的网络攻击,确保网站数据安全和稳定运行。 ## 一、用户认证与授权管理 ### 1.1 密码安全策略 ZKEACMS提供了完善的用户密码管理机制,默认情况下系统会强制要求管理员设置强密码。在安装完成后,应立即修改默认管理员密码

gitblog_00902的博客 785

从机械到数字:EC11旋转编码器与ESP32的PWM控制艺术

本文详细解析了EC11旋转编码器与ESP32的PWM控制技术,探讨了如何将机械旋转动作转换为精确的数字信号控制。通过硬件连接、信号处理和软件优化等实践技巧,开发者可以构建高效的人机交互系统,适用于智能照明、电机控制等多种应用场景。

android的专栏 782

最新2026年《网络数据安全风险评估办法》条款解读

大型企业集团IT变革下的零信任安全体系建设方案(55页).pptx。以数据安全为核心的安全立体防御体系解决方案(41页).pptx。让数据安全合规地创造价值(15页 PPT).pptx。大型集团数据安全应急预案(57页).docx。数据安全治理与评估服务业务介绍.pptx。数据安全管理实践(17页).pptx。大数据安全架构设计方案.pptx。大数据安全规划总体方案.pptx。数据库安全综合治理方案.pptx。医疗数据安全建设方案.pptx。数据安全框架规划图.pptx。数据安全治理方案.pptx。

cdfunlove的博客 47

WIN2000 SERVER安全配置服务器手册(1)(转)

本文搜集整理了58条针对WIN2000 SERVER进行安全配置的注意事项或技巧。 1.NTFS比FAT分区多了安全控制功能,可以对不同的文件夹设置不同的访问权限,安全性增强。 2.建议最好一次性全部安装成NTFS分区,而不要先...

csdn785029689的博客 258

《用 R 探索医药数据科学》目录(持续更新,已超 250 万字)|订阅前说明

我们重磅推出《用 R 探索医药数据科学》专栏!本文作为专栏【订阅后首读】的核心内容,堪称开启学习之旅的 “入门钥匙”,也是整个专栏最关键的一篇指引文。文中不仅完整呈现了专栏 9 大核心篇章 + 问答板块的详细目录,更囊括了订阅后必知的核心要点 —— 从阅读设备、实操工具的使用建议,到学习路径、更新规则的清晰说明,再到问题反馈、感悟记录的实用方法,一站式帮你摸清专栏框架、找准学习方向。建议各位订阅者务必认真阅读、吃透内容,这能让你后续的学习更高效、少走弯!

MD Code 1万+

Windows服务器安全配置指南

1)、系统安全基本设置 2)、关闭不需要的服务 Computer Browser:维护网络计算机更新,禁用   Distributed File System: 局域网管理共享文件,不需要禁用   Distributed linktracking client:用于局域网更新连接信息,不需要禁用   Error reporting service:禁止发送错误报告   Mic...

agt30483的博客 314

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

中文版SPPS 2003安装手册

 中文版SPPS 2003安装手册 文/黄昀 终稿日期:2006-3-20 一、 安装步骤概述.........................................................2 二、 安装步骤详述.........................................................2 1、 安装和配置Windows Serv

htyy521的专栏 3175

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

MongoDB Memory Server 完全配置手册:从基础选项到高级定制终极指南

MongoDB Memory Server 是一个强大的 Node.js 库,专门用于在内存中快速启动 MongoDB 服务器,为测试提供零配置的专用数据库环境。这个终极指南将带你从基础配置到高级定制,让你完全掌握这个工具的使用方法。 ## 🚀 快速入门:5分钟搭建内存数据库 开始使用 MongoDB Memory Server 非常简单,只需几行代码即可启动一个完整的内存数据库实例。无论你

gitblog_01176的博客 817

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

网站渗透测试完全手册:零基础到进阶,系统学习网络安全攻防

渗透测试就是模拟攻击者入侵系统,对系统进行一步步地渗透,发现系统地脆弱环节和隐藏风险。最后形成测试报告提供给系统所有者。系统所有者可根据该测试报告对系统进行加固,提升系统的安全性,防止真正的攻击者入侵。渗透测试的前提一定是得经过系统所有者的授权!未经过授权的渗透测试,就是违法行为!

m0_71745484的博客 1054

OwaspHeaders.Core 使用手册

OwaspHeaders.Core 使用手册 1. 项目目录结构及介绍 OwaspHeaders.Core 是一个用于增强ASP.NET Core应用安全性的中间件,通过注入OWASP推荐的HTTP头来实现。以下是典型的项目目录结构概述: src: 包含核心源代码,主要逻辑实现。 OwaspHeaders.Core: 中间件的主体实现,定义了SecureHeadersMiddleware等关键...

gitblog_01051的博客 537

KestrelHttpServer配置完全手册:从基础设置到高级调优的50个技巧

KestrelHttpServer是ASP.NET Core的跨平台高性能Web服务器,为现代Web应用提供强大的HTTP/2、HTTPS和连接管理功能。这个终极配置指南将带你从基础设置到高级调优,掌握50个实用技巧,让你的应用性能提升到新高度!🚀 ## 一、基础配置入门:快速启动你的第一个Kestrel服务器 ### 1. 项目结构与核心文件概览 KestrelHttpServer采用模

gitblog_01121的博客 502

Squid安全加固完全手册:10个关键步骤防范代理服务攻击

Squid作为一款强大的开源Web代理缓存服务器,在企业网络架构中扮演着重要角色。然而,如果配置不当,Squid代理服务器可能成为网络攻击的入口点。本指南将为您提供10个关键步骤,帮助您全面加固Squid代理服务,有效防范各种安全威胁。💪 ## 🛡️ 为什么需要加固Squid代理? Squid代理服务器处理着大量的网络流量,如果未经过适当的安全配置,可能面临以下风险: - 未授权访问和代理

gitblog_00375的博客 802

FluentSecurity for ASP.NET MVC 使用指南

FluentSecurity for ASP.NET MVC 使用指南 项目目录结构及介绍 FluentSecurity是一个用于ASP.NET MVC的安全配置库,它采用了流利的API设计,简化了安全策略的定义过程。以下是该仓库的主要目录结构及其简介: [FluentSecurity] 目录包含核心项目源码,提供了用于定义安全策略的类和接口。 [FluentSecurity.TestHe...

gitblog_00020的博客 543

xxe-lab环境搭建完全手册:PHP、Java、Python、C一键部署指南

欢迎来到xxe-lab环境搭建完全手册!😊 本指南将为您详细介绍如何快速搭建xxe-lab安全测试环境,这是一个包含PHP、Java、Python、C#四种语言版本的XXE漏洞演示项目。无论您是网络安全初学者还是专业安全研究人员,这份完整的环境搭建指南都能帮助您快速部署多语言XXE漏洞测试平台。 ## 📋 什么是xxe-lab? xxe-lab是一个专门用于研究和测试XXE(XML Ext

gitblog_00731的博客 454

FckEditor配置手册中文教程详细说明 .

性能 首先,FCKEDITOR的性能是非常好的,用户只需很少的时间就可以载入FCKEDITOR所需文件.对于其他在线编辑器来说,这几乎是个很难解决的难题,因为在开启编辑器时需要装载太多的文件.比如CUTEEDITOR,虽然功能比FCKEDITOR还要强大,可是,它本身也够庞大了,至于FREETEXTBOX等,其易用性与FCKEDITOR相比,尚有差距,可以说,FCKEDITOR是一个别具匠心的在

ppdtts520的专栏 1374
上一篇: 关于网页源代码屏蔽
Bluephantom
博客等级 码龄21年 2粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值