Web安全测试知多少

1. 数据验证流程:一个好的web系统应该在IE端,server端,DB端都应该进行验证。但有不少程序偷工减料,script验证完了,就不管了;app server对数据长度和类型的验证与db server的不一样,这些都会引发问题。有兴趣的可参看一下script代码,设计一些case,这可是你作为一个高级测试人员的优秀之处哦。我曾修改 了页面端的script代码,然后提交了一个form,引发了一个系统的重大漏洞后门。

  2. 数据验证类型: 如果web server端提交sql语句时,不对提交的sql语句验证,那么一个黑客就 可暗喜了。他可将提交的sql语句分割,后面加一个delete all或drop database的之类语句,能将你的数据库内容删个精光!我这一招还没实验在internet网站上,不知这样的网站有没有,有多少个。反正我负责的那 个web系统曾经发现这样的问题。

  3. 网络加密,数据库加密不用说了吧。

  WEB软件最常碰到的BUG为:

  1、SQL INJETION

  2、对文件操作相关的模块的漏洞

  3、COOKIES的欺骗

  4、本地提交的漏洞

  SQL INJETION的测试方法

  原理:

  如有一新闻管理系统用文件news.asp再用参数读取数据库里的新闻譬如

http://www.xxx.com/news.asp?id=1这一类网站程序

  如果直接用

  rs.open "select * from news where id=" &

  cstr(request("id")),conn,1,1

  数据库进行查询的话即上面的URL所读取的文章是这样读取的

  select * from news where id=1

  懂得SQL语言的就知道这条语言的意思是在news读取id为1的文章内容。

  但是在SQL SERVER里select是支持子查询和多句执行的。如果这样提交URL的话

http://www.xxx.com/news.asp?id=1and 1=(select count(*) from admin

  where left(name,1)=a)

  SQL语句就变成了

  select * news where id=1 and 1=(select count(*)

  from admin where left(name,1)=a)

  意思是admin表里如果存在字段字为name里左边第一个字符是a的就查询news表里id为1的内容,news表里id为1是有内容的,从 逻辑上的角度来说就是1&P。只要P为真,表达式就为真,页面会返回一个正确的页面。如果为假页面就会报错或者会提示该id的文章不存在。黑客利 用这点就可以慢慢得试用后台管理员的用户和密码。

  测试:

  测试存不存在SQL INJETION很简单如果参数为整数型的就在URL上分别提交http://www.xxx.com/news.asp?id=1and 1=1 和http://www.xxx.com/news.asp?id=1and 1=2

  如果第一次返回正确内容,第二次返回不同页面或者不同容内的话表明news.asp文件存在SQL INJETION。如何利用就不多说了,毕竟我们都不是为了入侵。

   对文件操作相关的模块的漏洞在测试

  原理:

  如一上传文件功能的程序upload.asp如果程序员只注重其功能上的需求没有考虑到用户不按常规操作的问题。如上传一个网页木马程序上去,整个网站甚至整个服务器的架构和源码都暴露而且还有一定的权限。

  测试:

  试上传asp,php,jsp,cgi等网页的文件看是否成功。

  补充:

  还有像 http://www.xxx.com/download/filespath.asp?path=../abc.zip

  下载功能的软件如果

http://www.xxx.com/download/filespath.asp?path=../conn.asp

  很可能下载到这些asp的源码数据库位置及用户密码都可能暴露。

  其它还有很多,就不一一举例了。

   COOKIES的欺骗

  原理:

  COOKIES是WEB程序的重要部分,COOKIES有利有弊。利在于不太占用服务器的资源,弊在于放在客户端非常容易被人修改加以利用。所以一般论坛前 台登陆用COOKIES后台是用SESSION,因为前台登陆比较频繁,用SESSION效率很低。但如论坛程序管理员用户在前台也有一定的权限,如果对 COOKIES验证不严的话,严重影响了WEB程序的正常工作。如前期的LEADBBS,只有后台对COOKIES验证严格,前台的位置只是从 COOKIES读取用户的ID,对用户是否合法根本没有验证。

  测试:

  推荐使用MYBROWER浏览器,可即时显示及修改COOKIES。尝试一下修改里面的对应位置。

   本地提交表单的漏洞

  原理:

  Action只接爱表单的提交,所以表单是客户WEB程序的接口。先举一个例子,一个投票系统,分A,B,C,D各项的VALUE是100,80,60,40。

  但是如果先把些页面以HTML形式保存在本地硬盘里。然后修改其VALUE,再向其ACTION提交,ACTION会不会接受呢?

  测试:

  如一投票系统,把投票的页面保存在本地硬盘,用记事本打开,找到对应项的VALUE值,对其修改,然后提交。

  强制后台浏览:绕过登陆页面,直接提交系统文件夹或文件页面。不完善的系统如果缺少index.html就可能被绕过登陆验证页面。在系统文件夹中保留一些公司机密内容也会造成不可估计的损失。

  跨站脚本攻击:基本上这个我只是在论坛——各种形式的论坛里看到过,具体的一个例子,比如这段代码可以被填在任何输入框里 “”,如果未对一些字符,如 “<”、">"进行转换,就会自动执行这个脚本。百度快照所提供的网页都自动将代码执行了。不信大家搜一点JS的代码,看看你能不能看到。

  堆栈溢出攻击:完全的不了解,只是在某个网站上看到,可以对现在的2000、XP、2003进行攻击,非常恐怖,MS应该打了补丁了吧?

时间: 2024-11-10 17:31:45

Web安全测试知多少的相关文章

WEB前端测试浏览器兼容性的娃有福了!

今天调试前端的一个js效果,在其它浏览器上都正常,本人的IE11也正常,但是同事的IE8下就不正常,于是楼主只能去找第三方软件了.先用的微软的Microsoft Expression SuperPreview4,但是它只能看静态页面,运行不了JS,于是只能去用IETester(楼主以前用过IETester,不太好用,经常崩溃).在IETester下试了,居然还是正常的,楼主瞬间凌乱了,不只如何下手了,只能再去找度娘了.在一篇帖子中看到一个好办法,真心好啊,楼主以前居然都没发现,贴图如下: 在IE

web开发者需知的45种Javascript技巧大全

web开发者需知的45种Javascript技巧大全 JavaScript是一个绝冠全球的编程语言,可用于Web开发.移动应用开发(PhoneGap.Appcelerator).服务器端开发(Node.js和Wakanda)等等.JavaScript还是很多新手踏入编程世界的第一个语言.既可以用来显示浏览器中的简单提示框,也可以通过nodebot或nodruino来控制机器人.能够编写结构清晰.性能高效的JavaScript代码的开发人员,现如今已成了招聘市场最受追捧的人. 在这篇文章里,我将分

burp-suite(Web安全测试工具)教程

Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程.所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架.本文介绍它的主要特点下: 1.Target(目标)--显示目标目录结构的的一个功能2.Proxy(代理)--拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流.3.Spider(蜘蛛)--应

Kali Linux Web 渗透测试秘籍 第二章 侦查

第二章 侦查 作者:Gilberto Najera-Gutierrez 译者:飞龙 协议:CC BY-NC-SA 4.0 简介 在每个渗透测试中,无论对于网络还是 Web 应用,都有一套流程.其中需要完成一些步骤,来增加我们发现和利用每个影响我们目标的可能的漏洞的机会.例如: 侦查 枚举 利用 维持访问 清理踪迹 在 Web测试场景中,侦查是一个层面,其中测试者必须识别网络.防火墙和入侵检测系统中所有可能组件.它们也会收集关于公司.网络和雇员的最大信息.在我们的例子中,对于 Web 应用渗透测试

web安全测试---跨站点脚本测试

1.1      跨站脚本测试 1.1.1        GET方式跨站脚本测试 编号 SEC_Web_XSS_01 测试用例名称 GET方式跨站脚本测试 测试目的 由于跨站脚本会导致会话被劫持.敏感信息泄漏.账户被盗,严重时甚至造成数据修改.删除,从而导致业务中断,因此需检测跨站脚本是否存在 用例级别 1 测试条件 1.  Web业务运行正常 2.  已知待测目标URL,假设为http://www.exmaple.com/page.xxx 3.  待测目标存在参数输入,假设为name=valu

小白入坑 Web 渗透测试必备指南

本文来自作者 肖志华 在 GitChat 上分享「Web 渗透测试入坑必备指南」,「阅读原文」查看交流实录 「文末高能」 编辑 | 黑石 小白如何快速入门 由于本人技术性受限制,可能部分内容显得不那么清晰,如有疑问请读者圈联系我.再者,内容不会完全讲清楚,因为本身话题的原因,部分会一笔带过. 小白该如何踏入 Web 安全这个坑呢?我的经历是,兴趣所在.我是野路子,全靠兴趣来自学. 现 Web 安全如果要讲入门,要求并不高,两三天就能入门,而我也仅在入门级别. 我接触这个比较早,最初是在10年还是

12个强大的Web服务测试工具

在过去的几年中,web服务或API的普及和使用有所增加. web服务或API是程序或软件组件的集合,可以帮助应用程序进行交互或通过形成其他应用程序或服务器之间的连接执行一些进程/事务处理.基本上有两种类型的web服务——基于互联网协议,REST和SOAP推动数据和信息的通讯. 由于这些web服务暴露于网络并且分布于不同的网络,所以它们很容易受到风险和安全威胁,从而影响基于它们的进程.因此,web服务或API测试非常有必要,可以确保它们执行正确并正确地响应查询. 市场上有不少商业和开源的测试工具可

《Web渗透测试使用kali linux》pdf

下载地址:网盘下载 内容简介 <Web渗透测试:使用Kali Linux>是一本Web渗透测试实践指南,全面讲解如何使用Kali Linux对Web应用进行渗透测试.两位安全领域的专家站在攻击者的角度,一步步介绍了渗透测试基本概念.Kali Linux配置方式,带大家了解如何收集信息并发现攻击目标,然后利用各种漏洞发起攻击,并在此基础之上学会渗透测试,掌握补救易受攻击系统的具体技术.此外,书中还给出了撰写报告的最佳实践,其中一些范例可作为撰写可执行报告的模板. <Web渗透测试:使用Ka

Kali Linux Web 渗透测试— 第十二课-websploit

Kali Linux Web 渗透测试— 第十二课-websploit 文/玄魂 目录 Kali Linux Web 渗透测试— 第十二课-websploit............................................... 1 Websploit 简介........................................................................................... 2 主要功能...........