exec/s: 603 Test: ./privacy_crypto_fuzzer Bug: 265234582 Change-Id: I6b922ba288742229749419c35fd71fded6125859
4.8 KiB
4.8 KiB
Fuzzers for libcdm
Table of contents
- policy_engine_fuzzer
- content_decryption_fuzzer
- system_id_extractor_fuzzer
- service_certificate_fuzzer
- policy_timers_fuzzer
- privacy_crypto_fuzzer
Fuzzer for PolicyEngine
PolicyEngine supports the following parameters:
- SigningKeyId (parameter name: "kSigningKeyId")
- RenewalServerUrl (parameter name: "kRenewalServerUrl")
- EntitlementKeyId (parameter name: "kEntitlementKeyId")
| Parameter | Valid Values | Configured Value |
|---|---|---|
kSigningKeyId |
String |
Value obtained from FuzzedDataProvider |
kRenewalServerUrl |
String |
Value obtained from FuzzedDataProvider |
kEntitlementKeyId |
String |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) policy_engine_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/policy_engine_fuzzer/vendor/policy_engine_fuzzer
Fuzzer for ContentDecryption
ContentDecryption supports the following parameters:
- Cert Authority (parameter name: "certAuthority")
- Server Url (parameter name: "serverUrl")
- Service Certificate (parameter name: "serviceCertificate")
| Parameter | Valid Values | Configured Value |
|---|---|---|
certAuthority |
String |
Value obtained from FuzzedDataProvider |
serverUrl |
String |
Value obtained from FuzzedDataProvider |
serviceCertificate |
String |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) content_decryption_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/content_decryption_fuzzer/vendor/content_decryption_fuzzer
Fuzzer for SystemIdExtractor
SystemIdExtractor supports the following parameters:
- OEM Cert (parameter name: "oemCert")
- Key Data (parameter name: "keyData")
- System Id (parameter name: "mSystemId")
| Parameter | Valid Values | Configured Value |
|---|---|---|
oemCert |
String |
Value obtained from FuzzedDataProvider |
keyData |
String |
Value obtained from FuzzedDataProvider |
mSystemId |
Integer in range 0 to 256 |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) system_id_extractor_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/system_id_extractor_fuzzer/vendor/system_id_extractor_fuzzer
Fuzzer for ServiceCertificate
ServiceCertificate supports the following parameters:
- Message (parameter name: "message")
- Signature (parameter name: "signature")
- Request (parameter name: "request")
| Parameter | Valid Values | Configured Value |
|---|---|---|
message |
String |
Value obtained from FuzzedDataProvider |
signature |
String |
Value obtained from FuzzedDataProvider |
request |
String |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) service_certificate_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/service_certificate_fuzzer/vendor/service_certificate_fuzzer
Fuzzer for PolicyTimers
PolicyTimers supports the following parameters:
- Seconds Since Last Played (parameter name: "secondsSinceLastPlayed")
- Expiry Time (parameter name: "expiryTime")
| Parameter | Valid Values | Configured Value |
|---|---|---|
secondsSinceLastPlayed |
Integer |
Value obtained from FuzzedDataProvider |
expiryTime |
Interger |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) policy_timers_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/policy_timers_fuzzer/vendor/policy_timers_fuzzer
Fuzzer for PrivacyCrypto
PrivacyCrypto supports the following parameters:
- Message (parameter name: "message")
- Key (parameter name: "key")
- Iv (parameter name: "iv")
- Data (parameter name: 'data')
- CertIndex (parameter name: 'certIndex')
| Parameter | Valid Values | Configured Value |
|---|---|---|
message |
String |
Value obtained from FuzzedDataProvider |
key |
String |
Value obtained from FuzzedDataProvider |
iv |
String |
Value obtained from FuzzedDataProvider |
data |
String |
Value obtained from FuzzedDataProvider |
certIndex |
Integer |
Value obtained from FuzzedDataProvider |
Steps to run
- Build the fuzzer
$ mm -j$(nproc) privacy_crypto_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/privacy_crypto_fuzzer/vendor/privacy_crypto_fuzzer