如何验证任意URL的列表?

时间:2016-10-11 23:46:44

标签: ios security app-transport-security

所以我有一个可以在我的应用程序中访问的数千个URL的列表,其中许多是不安全的(ATS当前已关闭),其中一些还重定向到其他几个URL。我需要做的是找到一些方法来自动化这个过程来吐出一个不安全的链接列表。有人有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您可以编写nscurl调用脚本来运行URL。基本上,使用txt文件中的URL列表如下:

<强> urls.txt

https://www.apple.com
https://www.reddit.com
http://snopes.com
http://www.yahoo.com
https://www.google.com

你可以创建一个脚本

<强> ats_check.sh

#!/bin/sh 

while read URL
do
    nscurl --ats-diagnostics ${URL} 2>/dev/null > ats_results.txt

    if  grep -q "Result : FAIL" ats_results.txt; then
        echo "${URL} failed ATS checks. run 'nscurl --ats-diagnostics ${URL}' for more details."
    else
        # echo "${URL} passed ATS checks."
        echo "."
    fi
done < urls.txt

rm ats_results.txt

基本上,如果nscurl调用中的任何测试失败,它将显示URL。

请注意,nscurl需要Mac OS 10.11或更高版本。

答案 1 :(得分:0)

结束编写一个CLI应用程序,该应用程序使用WebView加载我的数据文件中的所有URL,并将该错误的所有URL转储到文本文件中。