如何为 OpenSSL grep 或搜索 .jar 文件?
How to grep or search .jar files for OpenSSL?
我有一个 Android 应用程序正在使用一些 .jar 文件(库)。我的应用程序因 OpenSSL 漏洞而被拒绝,但找不到包含 OpenSSL 的 .jar 文件。
如何在我的 MAC 上搜索 Openssl 的 .jar 文件?
grep Openssl.class /Users/joon/work/androidApp/*.jar
更新===
这是我的依赖项和 Jars。当我 运行 下面提到的 grep 命令时,它并没有告诉我哪个 jar 是问题,只是我有一个旧版本的 OpenSSL。此外,下面的一些 jar,比如 Bouncy Castle,无论它们是否有 OpenSSL,自 2013 年以来都没有更新过,那是在 OpenSSL 安全修复之前。我们尝试一个一个地删除每个 jar,然后重新编译 + 清理(注释掉代码以便编译),但它仍然说旧的 OpenSSL 正在使用中。谁能指出下面的罪魁祸首?
JARS:
httpmime-4.1.3.jar
libGoogleAnalyticsServices.jar
opentok-android-sdk-2.3.1.jar
sc-light-jdk15on-1.47.0.2.jar
scpkix-jdk15on-1.47.0.2.jar
scprov-jdk15on-1.47.0.2.jar
socketio.jar
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.+'
compile 'com.google.android.gms:play-services-maps:6.5.+'
compile 'com.crashlytics.android:crashlytics:1.+'
}
How do I search the .jar files for Openssl on my MAC?
您可以使用以下脚本检查 JAR 文件:
#!/usr/bin/env bash
JAR_FILES=("httpmime-4.1.3.jar"
"libGoogleAnalyticsServices.jar"
"opentok-android-sdk-2.3.1.jar"
"sc-light-jdk15on-1.47.0.2.jar"
"scpkix-jdk15on-1.47.0.2.jar"
"scprov-jdk15on-1.47.0.2.jar"
"socketio.jar")
for jar_file in "${JAR_FILES[@]}"
do
echo "************ $jar_file ************"
grep '1.0.1h' "$jar_file"
done
您应该将字符串 '1.0.1h'
替换为报告给您的易受攻击的 OpenSSL 版本。请务必保留单引号,因为句点是 1.0.1h
.
中的文字
另一种方法是:
find /Users/joon/work/androidApp/ -name '*.jar' -exec grep 'Openssl.class' {} \;
或:
find /Users/joon/work/androidApp/ -name '*.jar' -exec grep '1.0.1h' {} \;
在 OS X 上,这也很有帮助:
find "$HOME" -name '.DS_Store' -exec rm -f {} \;
它会删除在每个目录中创建并随后添加到 ZIP 文件等存档中的 .DS_Store
文件。
我有一个 Android 应用程序正在使用一些 .jar 文件(库)。我的应用程序因 OpenSSL 漏洞而被拒绝,但找不到包含 OpenSSL 的 .jar 文件。
如何在我的 MAC 上搜索 Openssl 的 .jar 文件?
grep Openssl.class /Users/joon/work/androidApp/*.jar
更新===
这是我的依赖项和 Jars。当我 运行 下面提到的 grep 命令时,它并没有告诉我哪个 jar 是问题,只是我有一个旧版本的 OpenSSL。此外,下面的一些 jar,比如 Bouncy Castle,无论它们是否有 OpenSSL,自 2013 年以来都没有更新过,那是在 OpenSSL 安全修复之前。我们尝试一个一个地删除每个 jar,然后重新编译 + 清理(注释掉代码以便编译),但它仍然说旧的 OpenSSL 正在使用中。谁能指出下面的罪魁祸首?
JARS:
httpmime-4.1.3.jar
libGoogleAnalyticsServices.jar
opentok-android-sdk-2.3.1.jar
sc-light-jdk15on-1.47.0.2.jar
scpkix-jdk15on-1.47.0.2.jar
scprov-jdk15on-1.47.0.2.jar
socketio.jar
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.+'
compile 'com.google.android.gms:play-services-maps:6.5.+'
compile 'com.crashlytics.android:crashlytics:1.+'
}
How do I search the .jar files for Openssl on my MAC?
您可以使用以下脚本检查 JAR 文件:
#!/usr/bin/env bash
JAR_FILES=("httpmime-4.1.3.jar"
"libGoogleAnalyticsServices.jar"
"opentok-android-sdk-2.3.1.jar"
"sc-light-jdk15on-1.47.0.2.jar"
"scpkix-jdk15on-1.47.0.2.jar"
"scprov-jdk15on-1.47.0.2.jar"
"socketio.jar")
for jar_file in "${JAR_FILES[@]}"
do
echo "************ $jar_file ************"
grep '1.0.1h' "$jar_file"
done
您应该将字符串 '1.0.1h'
替换为报告给您的易受攻击的 OpenSSL 版本。请务必保留单引号,因为句点是 1.0.1h
.
另一种方法是:
find /Users/joon/work/androidApp/ -name '*.jar' -exec grep 'Openssl.class' {} \;
或:
find /Users/joon/work/androidApp/ -name '*.jar' -exec grep '1.0.1h' {} \;
在 OS X 上,这也很有帮助:
find "$HOME" -name '.DS_Store' -exec rm -f {} \;
它会删除在每个目录中创建并随后添加到 ZIP 文件等存档中的 .DS_Store
文件。