因为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,就这么简单

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

  1. [原创]K8Cscan插件之C段旁站扫描\子域名扫描

    [原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...

  2. 对比AppScan Source和Fortify扫描AltoroJ的结果

    对比AppScan Source和Fortify扫描AltoroJ的结果: http://blog.csdn.net/testing_is_believing/article/details/1963 ...

  3. CentOS下Docker与.netcore(四)之 三剑客之一Docker-machine+jenkins简单自动化部署

    CentOS下Docker与.netcore(一) 之 安装 CentOS下Docker与.netcore(二) 之 Dockerfile CentOS下Docker与.netcore(三)之 三剑客 ...

  4. Jenkins之自动部署、代码安全扫描、自动化接口测试

    搭建Jenkins wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.reporpm --i ...

  5. 玩转 .NET Core 3.0:逐浪CMS新版发布,建站更简单、网站更安全

    2019年11月11日,在大家都忙于网上体会“双11 ”的热闹气氛的时候,逐浪CMS开发者团队正在做着新版本发布的最后工作.此次更新是基本于 .NET Core 3.0开发,也是全国首个基于 .NET ...

  6. Swift 二维码扫描 简单实现

    3.30看视频  学到了二维码简单的实现 还有一些动画的实现  今天就先记录一下二维码扫描的简单实现  不太好记手写一遍 学习的基础在于模仿嘛 创建一个实现二维码扫描的步骤 1.首先是懒加载创建 会话 ...

  7. AWVS和AppScan使用代理进行扫描教程

    一.说明 扫描网站时,一是可能某些网站网络不能直接访问,二是可能不想曝露本机IP.这时要进行处理. 第一个方法是如果有vpn直接登vpn,vpn的话由于是直接修改操作系统层次的网络,扫描器不需要额外做 ...

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

    注:该脚本根据网站的cms类型来扫描,所以推荐用来扫外国的站 运行脚本 ┌─[root@sch01ar]─[/sch01ar/XAttacker] └──╼ #perl XAttacker.pl 询问 ...

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

    记得2011年mvc3刚出来的时候,我们就有幸将 mvc3 用在我们团购项目上,当时老大让我们用一个星期时间来熟悉mvc,幸好园子里面的老朋友DR 正在写mvc3系列,也恭喜这个系列文章被整理成专题供 ...

随机推荐

  1. eclipse优化与标准化记录

    1.文件使用UTF-8格式: 2.取消js验证: 3.设置java文件模板

  2. j2ee log4j集中式日志解决方案logpool v0.3

    V0.3相对于v0.2的更新如下:

  3. 滴滴DSRC抢楼大赛,十一快车券飞起来

    十一马上就要到了 不管你想要去哪里 总少不了滴滴打车 DSRC为你准备了30份快车券 现在开始参与抢楼,就有机会得到 活动时间: 本帖发布之时起-9月30日12:00 参与方式: 关注微信公众号“滴滴 ...

  4. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q22-Q24)

    Question22You create a Feature.You need to remove the link to the Site Content Type page from the Si ...

  5. Android SDK Manager无法下载的问题

    Android SDK Manager 你无法更新了. 现在这里有一个解决方案,如下. 1.启动 Android SDK Manager ,打开主界面,依次选择「Tools」.「Options...」 ...

  6. 【原】ios下比较完美的单例模式,已验证

    网上关于ios单例模式实现的帖子已经很多了,有很多版本,里面有对的也有不对的.我在使用过程中很难找到一个比较完美的方法,索性自己写一个吧,经过项目验证是比较合理的一个版本. static PRAuto ...

  7. jQuery点击事件绑定onClick和on()

    一.静态绑定 (1)onclick方法 jsp代码 <button href="javascript:;" class="weui_btn weui_btn_min ...

  8. Java 实现多线程的三种方式

    import java.util.concurrent.Callable; import java.util.concurrent.FutureTask; public class Main { pu ...

  9. Win7下:编译器错误信息: CS0016: 未能写入输出文件

    错误如下: "/"应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS ...

  10. Cron 表达式详解和案例

    1. cron表达式格式: {秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)} 2. cron表达式各占位符解释: {秒数} ==> 允许值范围: 0~59 ,不允许 ...