apk_analyzer 1.0.1 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/apk_analyzer/analyzer.rb +12 -8
- data/lib/apk_analyzer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c9a78dc35d71f81551f39123658300a1b79d18dd
|
4
|
+
data.tar.gz: f16422da7e2bccaaf082c12a83580f9041cceafa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 900e109f394f8e1caedca681c1916bc0124828aaf6f520a13e359a652f15d210d542d696b6277b8b100b819c5f03f345d28d721fbfde2dab316f8cf49987b890
|
7
|
+
data.tar.gz: 0951645dc29a00dece264930df2c37026a91bee1b9e882f022941e11a819ada1191cc68df389114661e572c524f4e236f140ca34a59513db475f78650267d370
|
@@ -68,7 +68,8 @@ module ApkAnalyzer
|
|
68
68
|
|
69
69
|
# Certificate info. Issuer and dates
|
70
70
|
def collect_cert_info
|
71
|
-
|
71
|
+
# Redirect keytool check error to /dev/null
|
72
|
+
os_has_keytool = system('keytool 2>/dev/null')
|
72
73
|
raise 'keytool dependency not satisfied. Make sure that JAVA keytool utility is installed' unless os_has_keytool
|
73
74
|
cert_info = {}
|
74
75
|
certificate_raw = `keytool -printcert -rfc -jarfile #{@apk_path.shellescape}`
|
@@ -190,13 +191,16 @@ module ApkAnalyzer
|
|
190
191
|
|
191
192
|
def cert_extract_issuer(certificate_content, result)
|
192
193
|
subject = `echo "#{certificate_content}" | openssl x509 -noout -in /dev/stdin -subject -nameopt -esc_msb,utf8`
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
result[:
|
197
|
-
result[:
|
198
|
-
result[:
|
199
|
-
result[:
|
194
|
+
# All APK certificate fields are not manadatory. At least one is needed.So to remove trailing carrier return
|
195
|
+
# character, we apply gsub method on the raw subject, and we use it after.
|
196
|
+
raw = subject.gsub(/\n/,'')
|
197
|
+
result[:issuer_raw] = raw
|
198
|
+
result[:cn] = cert_extract_issuer_parameterized(raw, 'CN')
|
199
|
+
result[:ou] = cert_extract_issuer_parameterized(raw, 'OU')
|
200
|
+
result[:o] = cert_extract_issuer_parameterized(raw, 'O')
|
201
|
+
result[:st] = cert_extract_issuer_parameterized(raw, 'ST')
|
202
|
+
result[:l] = cert_extract_issuer_parameterized(raw, 'L')
|
203
|
+
result[:c] = cert_extract_issuer_parameterized(raw, 'C')
|
200
204
|
end
|
201
205
|
|
202
206
|
def cert_extract_issuer_parameterized(subject, param)
|
data/lib/apk_analyzer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: apk_analyzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- BACKELITE
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-04-
|
11
|
+
date: 2017-04-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: apktools
|