Я начинаю выполнять автоматизированные тесты API в проекте, Я хотел бы провести проверки безопасности, подобные тем, которые выполняются с помощью сканера owasp zap, но с погружением в мою автоматизацию каратэ. То есть при использовании API owasp выполняет автоматические проверки. Знаете ли вы, можно ли это сделать? Если у вас есть руководство, которое вы можете мне предоставить, я буду очень признателен!
public class ActiveScan {
private static final int ZAP_PORT = 8080;
private static final String ZAP_API_KEY = null;
private static final String ZAP_ADDRESS = "localhost";
private static final String TARGET = "https://public-firing-range.appspot.com";
public static void main(String[] args) {
ClientApi api = new ClientApi(ZAP_ADDRESS, ZAP_PORT, ZAP_API_KEY);
try {
// TODO : explore the app (Spider, etc) before using the Active Scan API, Refer the explore section
System.out.println("Active Scanning target : " + TARGET);
ApiResponse resp = api.ascan.scan(TARGET, "True", "False", null, null, null);
String scanid;
int progress;
// The scan now returns a scan id to support concurrent scanning
scanid = ((ApiResponseElement) resp).getValue();
// Poll the status until it completes
while (true) {
Thread.sleep(5000);
progress =
Integer.parseInt(
((ApiResponseElement) api.ascan.status(scanid)).getValue());
System.out.println("Active Scan progress : " + progress + "%");
if (progress >= 100) {
break;
}
}
System.out.println("Active Scan complete");
// Print vulnerabilities found by the scanning
System.out.println("Alerts:");
System.out.println(new String(api.core.xmlreport(), StandardCharsets.UTF_8));
} catch (Exception e) {
System.out.println("Exception : " + e.getMessage());
e.printStackTrace();
}
}
}
Вы можете написать утилиту Java и вызвать ее в файле функций. Приведенный выше код выполняет активное сканирование, взятое из документации. Просто попробуйте. Ссылка на документацию: https://www.zaproxy.org/docs/api/?java#using-active-scan
Стоит отметить, что этот код сам по себе ничего не сделает, если только вы уже не проксировали запросы через ZAP. Вы также можете изучить свое приложение с помощью двух пауков ZAP или импортировав определения API. Еще больше документации здесь: zaproxy.org/docs