asp网页源码网站设计安全性(5篇)
网站设计平安性(5篇)
 
  网站设计平安性范文第1篇
  2021年1月至6月期间,半年时间内,CNCERT/CC接收的网络仿冒大事和网页恶意代码大事,已分别超出去年全年总数的14.6%和12.5%。
  从CNCERT/CC把握的半年状况来看,攻击者的攻击目标明确,针对不同网站和用户采纳不同的攻击手段,且攻击行为趋利化特点表现明显。对政府类和平安管理相关类网站主要采纳篡改网页的攻击形式,也不排解放置恶意代码的可能。对中小企业,尤其是以网络为核心业务的企业,采纳有组织的分布式拒绝服务攻击(DDoS)等手段进行,影响企业正常业务的开展。对于个人用户,攻击者更多的是通过用户身份窃取等手段,偷取该用户嬉戏账号、银行账号、密码等,窃取用户的私有财产。
  2用IIS+ASP建网站的平安性分析
  微软推出的IIS+ASP的解决方案作为一种典型的服务器端网页设计技术,被广泛应用在网上银行、电子商务、网上调查、网上查询、BBS、搜寻引擎等各种互联网应用中。但是,该解决方案在为我们带来便捷的同时,也带来了严峻的平安问题。本文从ASP程序设计角度对WEB信息平安及防范进行分析争论。
  3SP平安漏洞和防范
  3.1程序设计与脚本信息泄漏隐患
  bak文件。攻击原理:在有些编辑ASP程序的工具中,当创建或者修改一个ASP文件时,编辑器自动创建一个备份文件,假如你没有删除这个bak文件,攻击者可以直接下载,这样源程序就会被下载。
  防范技巧:上传程序之前要认真检查,删除不必要的文档。对以BAK为后缀的文件要特殊当心。
  inc文件泄露问题。攻击原理:当存在ASP的主页正在制作且没有进行最终调试完成以前,可以被某些搜寻引擎机动追加为搜寻对象。假如这时候有人利用搜寻引擎对这些网页
进行查,会得到有关文件的定位,并能在扫瞄器中查看到数据库地点和结构的细节,并以此揭示完整的源代码。
  防范技巧:程序员应当在网页前对它进行彻底的调试。首先对.inc文件内容进行加密,其次也可以使用.asp文件代替.inc文件,使用户无法从扫瞄器直接观看文件的源代码。
  3.2对ASP页面进行加密。为有效地防止ASP源代码泄露,可以对ASP页面进行加密。我们曾采纳两种方法对ASP页面进行加密。一是使用组件技术将编程规律封装入DLL之中;二是使用微软的ScriptEncoder对ASP页面进行加密。3.3程序设计与验证不全漏洞
  验证码。普遍的客户端交互如留言本、会员注册等仅是根据要求输入内容,但网上有许多攻击软件,如注册机,可以通过扫瞄WEB,扫描表单,然后在系统上频繁注册,频繁发送不良信息,造成不良的影响,或者通过软件不断的尝试,盗取你的密码。而我们使用通过使用验证码技术,使客户端输入的信息都必需经过验证,从而可以解决这个问题。
  登陆验证。对于许多网页,特殊是网站后台管理部分,是要求有相应权限的用户才能进入操作的。但是,假如这些页面没有对用户身份进行验证,黑客就可以直接在地址栏输入收
集到的相应的URL路径,避开用户登录验证页面,从而获得合法用户的权限。所以,登陆验证是特别必要的。
  SQL注入。SQL注入是从正常的端口访问,而且表面看起来跟一般的Web页面访问没什么区分,所以目前市面的防火墙都不会对SQL注入发出警报,假如管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。
  SQL注入攻击是最为常见的程序漏洞攻击方式,引起攻击的根本缘由就是盲目信任用户,将用户输入用来直接构造SQL语句或存储过程的参数。以下列出三种攻击的形式:
  A.用户登录:假设登录页面有两个文本框,分别用来供用户输入帐号和密码,利用执行SQL语句来推断用户是否为合法用户。试想,假如黑客在密码文本框中输入''''OR0=0,即不管前面输入的用户帐号和密码是什么,OR后面的0=0总是成立的,最终结果就是该黑客成为了合法的用户。
  B.用户输入:假设网页中有个搜寻功能,只要用户输入搜寻关键字,系统就列出符合条件的全部记录,可是,假如黑客在关键字文本框中输入''''GODROPTABLE用户表,后果是用户表被彻底删除。
  C.参数传递:假设我们有个网页链接地址是HTTP://……asp?id=22,然后ASP在页面中利用Request.QueryString[''''id'''']取得该id值,构成某SQL语句,这种状况很常见。可是,假如黑客将地址变为HTTP://……asp?id=22anduser=0,结果会怎样?假如程序员有没有对系统的出错提示进行屏蔽处理的话,黑客就获得了数据库的用户名,这为他们的进一步攻击供应了很好的条件。
  解决方法:以上几个例子只是为了起到抛砖引玉的作用,其实,黑客利用“猜想+精通的sql语言+反复尝试”的方式,可以构造出各种各样的sql入侵。作为程序员,如何来防备或者降低受攻击的几率呢?在实际中是按以下方法做的:
  第一:在用户输入页面加以友好备注,告知用户只能输入哪些字符;
  其次:在客户端利用ASP自带的校验控件和正则表达式对用户输入进行校验,发觉非法字符,提示用户且终止程序进行;
  第三:为了防止黑客避开客户端校验直接进入后台,在后台程序中利用一个公用函数再次对用户输入进行检查,一旦发觉可疑输入,马上终止程序,但不进行提示,同时,将黑客IP、动作、日期等信息保存到日志数据表中以备核查。
  第四:对于参数的状况,页面利用QueryString或者Quest取得参数后,要对每个参数进行推断处理,发觉特别字符,要利用replace函数将特别字符过滤掉,然后再做下一步操作。
  第五:只给出一种错误提示信息,服务器都只提示HTTP500错误。
  第六:在IIS中为每个网站设置好执行权限。千万别给静态网站以“脚本和可执行”权限。一般状况下给个“纯脚本”权限就够了,对于那些通过网站后台管理中心上传的文件存放的名目,就更吝啬一点吧,执行权限设为“无”好了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。