我正在尝试向我们的质量保证部门证明我们已经(或没有)修复了最近扫描中显示的漏洞。我想写一个简单的脚本,可以演示漏洞并显示修复实际修复它。但是,由于漏洞涉及无效(可能是故意的)HTTPS请求,因此我无法使用标准客户端轻松复制它。因为有几个要测试的服务器和几个不同的漏洞我想稍微自动化测试。
以下命令行复制测试但需要人工干预:
>openssl s_client -connect {server:ip} | grep Location
GET /images HTTP/1.0 <---- (user types this plus two Enter keys)
Location:{text here proves success/failure}
如何自动执行上述测试?
我正在使用openssl,因为它很方便。如果它可以接受任意HTTPS请求标头,我愿意使用另一种工具。
答案 0 :(得分:1)
在bash中,您可以将文本传输到OpenSSL命令行实用程序中:
printf 'GET /images HTTP/1.0\r\n\r\n' | openssl s_client -connect {server:ip} | grep Location