使用appscan实现多站扫描简单自动化

因为appscan在新建扫描任务的时候只能输入一个target,并且没有awvs/nessus那样提供web接口,导致我以前一直以为appscan不能像awvs那样批量建立任务自动扫描。

不过,今天要分享的一点经验只是实现简单的appscan自动化扫描。

其实很简单,appscan的GUI界面新建扫描任务时虽然只能指定一个target,并且也没有提供类似awvs/nessus的web接口,但是它提供的有一个“AppScanCMD.exe”。

厂商把这个小工具提供出来的意思可能就是方便用户在命令行下调用appscan实现自动化扫描的。它的功能分为:执行扫描任务和生成扫描报告两块。

那接下来介绍一下工具的语法就好了。

先看下工具自身提供的help信息:

说一下这些参数的含义吧。

参数
简写


简写2


含义


参数值说明


参数类型

exec
ex


e


执行扫描任务

   
report
rep


r


执行报告生成任务

   
/base_scan
/base


/b


指定格式为.scan的基础文件


必须为.scan文件的绝对路径


必填

/dest_scan
/dest


/d


指定格式为.scan的文件名


必须为.scan文件的绝对路径,可以与base_scan是同一个文件,也可以新指定一个文件,简单意思就是说扫描结果保存的位置和文件名


必填

/report_file
/rf

  指定报告保存的位置和文件名(文件名不带扩展名)
报告要保存到哪里


可选

/report_type
/rt

  指定报告类型
(可选xml|pdf|rtf|txt|html)

默认值是xml


可选

/min_severity
/ms

  指定报告中要体现的漏洞级别,不到级别的漏洞不写入报告
(可选low|medium|high|informational)

默认值是informational,也就是提示信息及以上级别的漏洞都写入报告,相当于写入扫描出来的全部漏洞内容


可选

/verbose
/v

  详细模式
若选择了该参数,则会在扫描时动态显示扫描状态
默认值为false,即不显示扫描状态


可选

/test_only
/to

   
默认值为false


可选

/explore_only
/eo

   
默认值为false


可选

/multi-step
/ms

   
默认值为false


可选

           
/test_type
/tt

  可选all|application|infrastructure
默认值为all


可选

这里解释的不是很详细,但基本上够用了。

明白了参数的含义和用法,那么接下来就可以在DOS下执行扫描了,因为要实现批量扫描,所以我一般都会写一个bat脚本来执行。

在真正的开始扫描之前,我们需要知道一点:

appscancmd无法跟wvs_console一样直接用命令行选项来设置扫描参数,appscancmd的扫描必须基于一个base_scan,目的就是为了读取扫描参数。

所以在使用appscancmd之前我们必须通过GUI来创建一个base_scan。创建base_scan跟在GUI下新建一个扫描任务是一样的,唯一区别在“扫描配置向导”的最一步选择“我将稍后启动扫描”,然后保存扫描到文件。

完成配置,保存结果文件,最后退出appscan的GUI。

然后,执行DOS命令或写个批处理脚本来执行扫描吧:

@echo off
appscancmd /e /b D:\merchant.scan /d D:\1.scan /v
appscancmd /e /b D:\3.scan /d D:\2.scan /v
appscancmd /e /b D:\4.scan /d D:\3.scan /v
appscancmd /e /b D:\5.scan /d D:\4.scan /v
appscancmd /e /b D:\6.scan /d D:\5.scan /v
pause

按照DOS命令的执行机制,当上一条命令执行结束后才会继续执行下一条命令,这样写一个批处理,就实现了顺序扫描多个目标的目的。

按照上边对参数的解释,我们这个批处理中的命令的完整解释就是:

执行扫描任务,从文件D:\2.scan中读取扫描配置信息,然后将扫描的结果保存到同一个文件,同时,在扫描的过程中显示扫描细节。

如果你不想把扫描结果保存到同一个文件中,那么通过/d参数直接指定新的文件名即可。

OK,就这么简单

时间: 2024-11-10 19:45:08

使用appscan实现多站扫描简单自动化的相关文章

asp.net mvc 之旅—— 第一站 从简单的razor入手

原文:asp.net mvc 之旅-- 第一站 从简单的razor入手 记得2011年mvc3刚出来的时候,我们就有幸将 mvc3 用在我们团购项目上,当时老大让我们用一个星期时间来熟悉mvc,幸好园子里面的老朋友DR 正在写mvc3系列,也恭喜这个系列文章被整理成专题供后来者学习,详见:http://www.cnblogs.com/highend/archive/2011/08/04/aspnet_mvc3_ contents.html,2013年进携程的时候,也开心的看到公司正在将webfo

AppScan大型网站分割扫描

大型网站扫描到后边会出现扫不动,大型网站扫描时间过长等情况.但如果要在短时间内扫描完某个大型网站,这样就可以进行分割扫描,把一个大型站点分割为多个较小的再进行扫描分割. 有两种分割扫描的方法:(都可以较短时间内得到扫描结果,并且报告的可读性较强) Ps.需要先保存一份原始扫描文件(探索文件). 一.按测试类型 1.加载扫描文件. 2.打开扫描配置. 3.选择测试 → 测试策略. 4.进一步限制.定制测试策略 "类型". 5.只勾选"基础结构". 6.点击确定即可保存

简单自动化Ansible--安装及简单应用(一)

Ansible 是一款开源的自动化运维工具,它既不需要数据库,也不需要运行后台程序(daemons) 容易上手,相对其他同类工具(puppet等)比较简单 一.    控制机要求: Ansible控制机要求极其简单,需要安装python2.6 以上的版本 就可以了(windows除外),可以是Red Hat,Debian, CentOS, OS X, 和任何BSDs 系统 二.    节点要求(被控制端) 节点需要python2.4以上版本,如果你运行的版本小于python2.5 ,你必须安装

美女图片站的简单制作过程

这几天闲来无聊,想着是不是自己搞个美女图片站,一方面练练手,一方面方便自己看,也方便各位小狼看.很多美女站看图片要一张张翻过去,很不过瘾. 因为怕涉及敏感信息,所以先买了个国外的虚拟主机,域名当然有不能少,琢磨着申请了个youhuode.com  "诱惑的" 拼音,也可译成"有货的". 做图片的流量很费,而且要准备各种图片尺寸,这样得话虚拟主机要准备个大容量的,不过突然记起以前用过的七牛云存储好像有免费10个G的存储可以用,于是去看看,好家伙,免费的力度蛮大(算是给

Swift 二维码扫描 简单实现

3.30看视频  学到了二维码简单的实现 还有一些动画的实现  今天就先记录一下二维码扫描的简单实现  不太好记手写一遍 学习的基础在于模仿嘛 创建一个实现二维码扫描的步骤 1.首先是懒加载创建 会话 输入设备  输出设备 // 先倒入框架 AVFoundation import AVFoundation //通过懒加载 创建输入设备 private lazy var deviceInput: AVCaptureDeviceInput? = { //获取设备摄像头 let device = AV

优酷视频站外简单调用

最简单粗暴的方法,将下面代码直接粘贴到html代码中 <embed src="http://player.youku.com/player.php/sid/vid=/v.swf" quality="high" align="middle" width="70%" height="550" allowScriptAccess="sameDomain" type="appli

网站漏洞扫描并自动化工具-XAttacker

注:该脚本根据网站的cms类型来扫描,所以推荐用来扫外国的站 运行脚本 ┌─[[email protected]]─[/sch01ar/XAttacker] └──? #perl XAttacker.pl 询问是否已经有了目标网站,选择1,Yes 输入网站所在文件的路径,回车 首先识别网站的类型,然后根据所识别的特定地扫描 如果有扫出漏洞的话,程序将会自动利用漏洞 在询问是否有目标网站的时候,选择2,No 有4个选项 前两个都是根据关键字来找网站并加以扫描利用 3,4选项是根据ip或者网站来扫取

python实现利用nmap和爱站扫描开放80端口的IP并进行反向域名解析

#!/usr/bin/python # -*- coding: utf-8 -*- from libnmap.process import NmapProcess from libnmap.parser import NmapParser import requests x=90 while x < 255: print "\033[1;31mstart 118.192.%s.0/24\033[0m" %(str(x)) #调用nmap扫描段内开放80端口的IP mission

简单自动化运维

本机为Windows系统,上传到的服务器为linux系统 用到的第三库及模块 from fabric.api import * from fabric.colors import * from fabric.context_managers import * from fabric.contrib.console import confirm 全局属性设定 env对象的作用是定义fabfile的全局设定,支持多个属性,包含目标主机.用户名.密码.等角色,各属性说明如下: evn.host:定义目