题目:安全测试练习

一、回答下述问题:

  1. 阐述常见的Web安全测试有几种类型?
1.跨站脚本(XSS)
  XSS又叫CSS(CROSS SET SCRIPT),跨站脚本攻击。它指的是恶意攻击者往WEB页面里插入恶意的html代码,当用户浏览该页面时,嵌入其中的html代码会被执行,从而达到恶意用户的特殊目的;(钓鱼、盗取cookie、操纵受害者的浏览器、蠕虫攻击)

2.反射型跨站(Reflected XSS)
  服务器端获取http请求中的参数,未经过滤直接输出到客户端。如果这些参数是脚本,它将在客户端执行(钓鱼常见)。

3.存储型跨站(Stored XSS)
  用户输入的数据存在服务器端(一般存在数据库中),其他用户访问某个页面时,这些数据未经过滤直接输出。这些数据可能是恶意的脚本,对其他用户造成危害。(挂马
常见)
  在允许上传文件的应用中,攻击者上传一个包含恶意代码的html或者txt文件,用户浏览这些文件执行恶意代码;
  一般的应用中上传图片最普遍,如果图片中包含恶意代码的html或者txt文件,,低版的IE直接请求这个图片时,将忽略Content-Type执行图片中的代码。

4.DOM跨站(DOM-Based XSS)
  攻击者构造一个包含恶意Javascript的URL,然后引诱用户请求这个URL。服务器收到请求后没有返回恶意的Javascript。
  浏览器在处理URL中的数据时,执行恶意代码。

5.跨站请求伪造(CSRF)
  强迫受害者的浏览器向一个易受攻击的Web应用程序发送请求,最后达到攻击者所需要的操作行为。
  恶意请求会带上浏览器的Cookie。受攻击的Web应用信任浏览器的Cookie。

6.SQL注入
  用户输入的数据未经验证就用来构造SQL
  查询语句,查询数据库中的敏感内容,绕过认证添加、删除、修改数据、拒绝服务。

7.XML注入
  和SQL注入原理一样,XML是存储数据的地方,如果在查询或修改时,如果没有做转义,直接输入或输出数据,都将导致XML注入漏洞。攻击者可以修改XML数据格式,增加新的XML节点,对数据处理流程产生影响。
 

二、安全测试工具调研

1. 概述

列出常见的安全测试工具,画一张表,加以说明。格式如下:

序号安全测试工具商用 OR 免费检测对象(二进制代码/源代码)简介
1  Metasploit 免费  二进制代码   
2  Nessus  商用  源代码  
3  W3AF  免费  源代码  
4  Paros proxy  免费  源代码  
5  WebScarab  免费  二进制代码  
6  Nikto  免费  二进制代码  
7  Wapiti  免费  源代码  
...        
...        

2. 安全测试工具试用

 

 我选择的是Metasploit安全测试工具

(一)安装Metasploit

 

 

(二)进行环境变量配置

 

 

三、在命令行打开软件

 

四、(1)启动

 

 

 (2)通过show命令我们可以查看这些模块

 

 

(3)对于具体的参数设置可以使用options命令来查看
)

 

(4)用到set命令


(5)

生成了一个  URL,复制并在靶机中explorer浏览器打开,打开时会出现错误报告或者闪退同时kali linux中会出现下图的回显.

 五、总结

一开始的时候不知道下载哪个安全测试工具,本来按照书上顺序下载的是metasploit,一开始没有启动好,我就选择把剩下几个都下载了,发现剩下几个都不好下载,我又返回第一个metadploit下载了。本来五一假期的时候,是已经下载了软件,但是环境变量一直没有配置,中间一直忙别的事,今天终于把它启动好,一开始没有启动好,是因为我的环境变量配置错了,而且我还没有发现。然后我去请教了一个做安卓的大神,他告诉我我的变量应该是配置在环境变量里面,但是我一开始改的时候改成了系统变量,我就懵逼,一直都没有好,最好还是弄好啦!