web安全测试-AppScan使用分享

这里主要分享如何使用AppScan对一大项目的部分功能进行安全扫描。

------------------------------------------------------------------------ 

  其实,对于安全方面的测试知道的甚少。因为那公司每个月要求对产品进行安全扫描。掌握了一人点使用技巧,所以拿来与大家分享。

  因为产品比较大,功能模块也非常之多,我们不可能对整个产品进行扫描。再一个每个测试员负责测试的模块不同。我们只需要对自己负责测试的模块扫描即可。

  扫描工具自然是IBM AppScan  ,功能强大,使用简单。略懂安全测试的都使用或听说过这个工具。这里就不过多介绍了。

 

抽取被扫描功能的链接                                                             

  

  首先要抽取扫描的链接。fiddler工具来抽取。打开系统,找到你需要做扫描的功能模块,开启fiddler拦截功能,然后对你所要测试的功能做各种操作,fiddler就会记录的所有访问的链接,因为涉及到隐私,所以下图会比较模糊。

其实,请求中有非常多的链接,但许多是一样,我们只要把不一样的全找出来就可以了。这里你需要知道每个连接的情况。也有一些外部链接是不需要抽取的。

 

复制代码
aaa.bbb.cn
g2.aaa.bbb.cn
g1.aaa.bbb.cn
webapp.aaa.bbb.cn
uec.aaa.bbb.cn
addrapi.aaa.bbb.cn
smsrebuild1.aaa.bbb.cn
disk2.aaa.bbb.cn
mw.aaa.bbb.cn
scriptlog.aaa.bbb.cn
images.139cm.com
appmail.aaa.bbb.cn
gfile5-disk.aaa.bbb.cn
gfile8-disk.aaa.bbb.cn
gfile7-disk.aaa.bbb.cn
复制代码

把所有链接抽取出来之后就没几个了。去掉重复的就没多少了。

 

 

 完成配置向导                                                                          

 

  下面打开appscan创建扫描。(关于appascan的下载安装与破解、介绍,我在另一篇博文已讲)

选择常规扫描,进入配置向导。点击下一步,进入配置

 

上面这一步是重点,起始URL填写你要扫描的网址。其它服务器和域:这里把抽取的所有链接都添加进去。包括后网站的首页链接。点击下一步。

 

这里提供三种方式来记录帐号,不多介绍。第一种和第三种最常用。

 

然后点击几个下一步后出现后面的选项,选择第三个或第四项完成扫描的配置。

 

 

 录制扫描脚本                                                                        

 

  完成配置后,下面就要开始录制脚本了呢。

  点击工具栏上的探索按钮,appscan会打开自带浏览器,输入系统用户名密码登录系统,对你要扫描的模块功能进行操作。

上图为我打开的appscan自带浏览器(因为我输入的网址有误,所以无法访问)。操作完成之后,点击暂停按钮,关闭浏览器窗口即可。

 

  关闭浏览器后,上面的窗口中会记录所有你访问的连接,点击确定。所有的信息就会记录下来了,下面要做的点击点击工具栏上的扫描按钮开始扫描。我们一般晚上下班进行,第二天早上来看扫描结果就可以了。

 ------------------------------------

  本来到这里就可以结束了,我再多说个设置。呵呵!在手动探索的时候,因为打开的浏览器是appscan自带的,可能会存在兼容性问题,有些页面无法正常打开。那么是否可以用我们电脑上的浏览器(IE 、火狐、谷歌)来进行录制呢了。当然是可以的。

菜单栏--工具---选项----高级

 

这个一定要大图,我们只需要修改openExternalBrowser 选项“值”的参数就可以了(1=IE、2=firefox、3=chrome)。

 -----------------

 

安全测试挺有前途的,国内起步很晚,这两年才逐渐受到重视。公司也越来越重视安全。

转载于:https://www.cnblogs.com/myc618/p/4585292.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/459271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试题:找两个有序数组所有数第K小的数

给定两个有序数组arr1和arr2,再给定一个整数k,返回两个数组中所有数中第k小的数。要求:如果arr1的长度为N,arr2的长度为M,时间复杂度请达到O(log(min{M, N}) ) 例如: arr1 {1,2,3,4,5} arr2 {3,4,5} k 1; 因为1为所…

ros 开源物体检测_ROS kinetic + Realsens D435i + ORK + LINEMOD 物体识别

1. ORKORK (Object Recognition Kitchen) 是 ROS 集成的物体识别库,当前 Kinetic 版本的 ROS 只集成了部分功能包的二进制安装文件,所以需通过源码编译安装。安装依赖库sudo apt-get installmeshlabsudo apt-get install libosmesa6-devsudo apt-get ins…

雪碧图sprity 合并多图使用心得

介绍 sprity 是一个模块化的雪碧图生成工具会根据目录中的图片生成相应的雪碧图和样式文件,支持retina图,可以内嵌base64 编码格式的图,支持不同的图片格式和有不同的图片引擎可以选择。sprity 的前身是css-sprite,sprity的 git地址 sprity的…

团队项目第二次冲刺(4)

已经做到两个界面的链接。 今天对用到的数据进行定义及对程序进行完善。 遇到的问题:在进行页面之间的连接时用到的intent语句运用不好。出现了很多次的bug。转载于:https://www.cnblogs.com/cuipengbo/p/4586519.html

itil v4和v3的区别_ITIL从v3到v4 - 这是新的ITIL

ITIL 4即将发布(原计划2019年1月到3月),v4的领域要大得多,重点放在业务和技术领域,比如我们要如何运作,以及如何通过敏捷,DevOps和数字化转型在未来发挥作用?十年前,比特币推出,詹姆斯卡梅隆发…

面试题:根据Unix时间戳计算时间

根据Unix时间戳计算时间,不分年月大小,每月三十天,每年按360天计算。开始时间1970/01/01 00:00:00,输入秒数,显示时间 思路一:进位,60秒进1分钟,60分进1小时,24小时进1天&#xff0…

华为荣耀6 H60-L02/L12(联通版)救砖包【适用于无限重启】

本帖最后由 HOT米粒 于 2014-11-16 20:43 编辑 华为荣耀6 H60-L02/L12(联通版)救砖包【适用于无限重启】说明: 1、本工具包用于华为荣耀6 H60-L02(联通版); 2、本工具适用于在Honor Logo 无限重启的童鞋恢复…

linux常用命令技巧--更新中

cp –a ojects objects.ori 复制备份目录cp –r 123 123 如果含有子目录一并复制 cp –p 保留文件属性转载于:https://blog.51cto.com/beautifual/1733232

找出无序数组最小的K个数(基于快排,效率高)

快排: void QuickSort(int array[], int low, int high) { if (low > high) //为了防止无限递归下去,导致栈溢出,设置此条件 { return; } int pivotkey array[low]; //设置一个对照元素,把这个元素先暂时拿出来&…

php mysql 存储过程_php调用MySQL存储过程方法

php与mysql是天生的一对,下面我来介绍在php中怎么调用mysql存储过程并执行返回结果,下面我总结了一些常用的php调用MySQL存储过程的方法,有需要了解的同学可参考.MySQL从5.0开始才引入存储过程,反正以前做应用的时候从没碰过,不过现在因为主要作内部系统,所以很多应…

Mysql存储引擎中InnoDB与Myisam的区别

为什么80%的码农都做不了架构师?>>> 1. 事务处理 innodb 支持事务功能,myisam 不支持。 Myisam 的执行速度更快,性能更好。 2. select ,update ,insert ,delete 操作 MyISAM:如果执行大量的SELECT,MyISA…

Android AsyncTask 详解

在Android中实现异步任务机制有两种方式,Handler和AsyncTask。 Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是…

mysql的rows大小超过8126_mysql大字段(Row size too large8126)

使用mysql并写入数据时发生错误:Row size too large (> 8126).Changing some columns to TEXT or BLOB or using ROW_FORMATDYNAMIC or ROW_FORMATCOMPRESSED may help. In current row format,BLOB prefix of 768 bytes is stored inline.因为表中有多个text字段…

一步步学习javascript基础篇(8):细说事件

终于学到事件了,不知道为何听到“事件”就有一种莫名的兴奋。可能是之前的那些知识点过于枯燥无味吧,说起事件感觉顿时高大上了。今天我们就来好好分析下这个高大上的东西。 可以说,如果没有事件我们的页面就只能阅读了。有了事件&#xff0c…

剑指offer:二叉树中和为某一值的路径

题目描述:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 分析:路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。…

android mysql 数据库文件_android mysql数据库文件

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云数据库专家保驾护航,为用户…

js常用DOM操作

在博客园看到了苏夏写的常用DOM整理文章&#xff0c;地址&#xff1a;http://www.cnblogs.com/cabbagen/p/4579412.html&#xff0c;然后抽时间都试了一下这些常用的DOM操作。在这里记录一下。 1 <!DOCTYPE html>2 <html lang"en">3 <head>4 &…

android传递数据bundle封装传递map对象

android开发默认情况下&#xff0c;通过Bundle bundlenew Bundle();传递值是不能直接传递map对象的&#xff0c;解决办法&#xff1a; 第一步&#xff1a;封装自己的map,实现序列化即可 ?12345678910111213141516/*** 序列化map供Bundle传递map使用* Created on 13-12-9.*/pu…

求1到n ,这n个整数的二进制表示比特1的个数(时间复杂度:O(n))

题目描述&#xff1a; 给定一个数字n&#xff0c;统计1&#xff5e;n之间的n个数字的二进制的1的个数 int Nums_Of_Bit_1(int num) { int* number new int[num]; int pow 1,before 1; int count 0; for(int i1; i<num; i){ if (i pow){ …

mysql支持cube_mysql聚合函数rollup和cube

一、with rollup&#xff1a;with rollup通常和group by语句一起使用&#xff0c;是根据维度在分组的结果集中进行聚合操作。——对group by的分组进行汇总。假设用户需要对N个纬度进行聚合查询操作&#xff0c;普通的groupby语句需要N个查询和N次group by操作。而rollup的有点…