0

我是 ZAP 和 node.js 的新手,
我的目标是扫描任何 web 应用程序中的漏洞并生成报告 (JSON)。

我尝试使用下面的代码,它给了我错误

const ZapClient = require('zaproxy');
 
const zapOptions = {
  apiKey: 'myAPIKEY'
  proxy: 'http://localhost:8095',
};
 
const zaproxy = new ZapClient(zapOptions);

let target = 'http://localhost:3000/#/app/my-app'

let promiseObj = zaproxy.ascan.scan(target);
    promiseObj
        .then(resp => {
            console.log(JSON.stringify(resp))
        })
        .catch(error =>{
            console.log(error)
        })

 let promiseObj = zaproxy.core.alerts(target);
     promiseObj
         .then(resp => {
             console.log(JSON.stringify(resp))
         })
         .catch(error =>{
             console.log(error)
         })

我面临的错误:

StatusCodeError: 404 - "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>
Error</title>\n</head>\n<body>\n<pre>
Cannot GET /JSON/ascan/action/scan/</pre>\n</body>\n</html>\n"

另外,我将非常感谢:

  1. 有人可以用 node.js 分享与 Zap 相关的任何示例吗
  2. 每当我运行上面的示例时,是否有必要保持 ZAP 工具打开和运行。
4

1 回答 1

1

是的,您需要运行 ZAP 才能使用 API 与其通信。看起来你没有这样做:(

于 2021-07-23T13:15:10.127 回答