我正在尝试使用ZAP的python API使用OWASP ZAP的基于表单的身份验证功能。
我注意到在使用HTTP应用程序时(例如 - http://demo.testfire.net/),它可以在登录后进行蜘蛛并提供其他URL。但是,当我为HTTPS应用程序尝试相同时,它不会获取额外的URL登录后的网址。
我的问题是 - ZAP是否仅支持与HTTP相关的Web应用程序的基于表单的身份验证?
答案 0 :(得分:0)
是的,我们有一个常见问题解答:https://github.com/zaproxy/zaproxy/wiki/FAQformauth
在使用API时难以调试问题,所以我建议首先使用UI,一旦你完成了工作,然后将你所做的事情转换为API。
通过用户界面:
通过API,过程是相同的,但使用API调用:
context/includeInContext
authentication/setAuthenticationMethod
authMethodName : formBasedAuthentication
authMethodConfigParams : loginUrl=http://example.com/login.html&loginRequestData=username%3D%7B%25username%25%7D%26password%3D%7B%25password%25%7D
authentication/setLoginIndicator or setLogoutIndicator
forcedUser/setForcedUserModeEnabled
authMethodConfigParams参数的值必须是URL编码的,在这种情况下,loginRequestData是username = {%username%}& password = {%password%}