refactor dumpsys package activity code

This commit is contained in:
tek
2023-07-31 18:38:41 +02:00
parent ae0e470c56
commit f96f2fe34a
10 changed files with 182 additions and 146 deletions
@@ -0,0 +1,42 @@
# Mobile Verification Toolkit (MVT)
# Copyright (c) 2021-2023 Claudio Guarnieri.
# Use of this software is governed by the MVT License 1.1 that can be found at
# https://license.mvt.re/1.1/
import logging
from mvt.android.artifacts.dumpsys_package_activities import DumpsysPackageActivities
from mvt.common.indicators import Indicators
from ..utils import get_artifact
class TestDumpsysPackageActivitiesArtifact:
def test_parsing(self):
dpa = DumpsysPackageActivities()
file = get_artifact("android_data/dumpsys_packages.txt")
with open(file) as f:
data = f.read()
assert len(dpa.results) == 0
dpa.parse(data)
assert len(dpa.results) == 4
assert dpa.results[0]["package_name"] == "com.samsung.android.app.social"
assert (
dpa.results[0]["activity"]
== "com.samsung.android.app.social/.feed.FeedsActivity"
)
def test_ioc_check(self, indicator_file):
dpa = DumpsysPackageActivities()
file = get_artifact("android_data/dumpsys_packages.txt")
with open(file) as f:
data = f.read()
dpa.parse(data)
ind = Indicators(log=logging.getLogger())
ind.parse_stix2(indicator_file)
ind.ioc_collections[0]["app_ids"].append("com.google.android.gms")
dpa.indicators = ind
assert len(dpa.detected) == 0
dpa.check_indicators()
assert len(dpa.detected) == 1