2022-01-18 15:00:03 +00:00
|
|
|
# Mobile Verification Toolkit (MVT)
|
2023-09-09 15:55:27 +00:00
|
|
|
# Copyright (c) 2021-2023 The MVT Authors.
|
2022-01-18 15:00:03 +00:00
|
|
|
# Use of this software is governed by the MVT License 1.1 that can be found at
|
|
|
|
# https://license.mvt.re/1.1/
|
|
|
|
|
2021-12-16 11:50:12 +00:00
|
|
|
import logging
|
2022-01-07 16:03:53 +00:00
|
|
|
|
|
|
|
from mvt.common.indicators import Indicators
|
2021-12-16 11:50:12 +00:00
|
|
|
from mvt.common.module import run_module
|
2022-01-18 15:00:03 +00:00
|
|
|
from mvt.ios.modules.backup.manifest import Manifest
|
2021-12-16 11:50:12 +00:00
|
|
|
|
2022-02-23 14:07:13 +00:00
|
|
|
from ..utils import get_ios_backup_folder
|
2021-12-16 11:50:12 +00:00
|
|
|
|
|
|
|
|
2022-01-07 16:51:21 +00:00
|
|
|
class TestManifestModule:
|
2021-12-16 11:50:12 +00:00
|
|
|
def test_manifest(self):
|
2022-08-13 00:14:24 +00:00
|
|
|
m = Manifest(target_path=get_ios_backup_folder())
|
2021-12-16 11:50:12 +00:00
|
|
|
run_module(m)
|
|
|
|
assert len(m.results) == 3721
|
|
|
|
assert len(m.timeline) == 5881
|
|
|
|
assert len(m.detected) == 0
|
|
|
|
|
2022-01-07 16:51:21 +00:00
|
|
|
def test_detection(self, indicator_file):
|
2022-08-13 00:14:24 +00:00
|
|
|
m = Manifest(target_path=get_ios_backup_folder())
|
|
|
|
ind = Indicators(log=logging.getLogger())
|
2022-01-07 16:51:21 +00:00
|
|
|
ind.parse_stix2(indicator_file)
|
2022-02-02 17:14:10 +00:00
|
|
|
ind.ioc_collections[0]["file_names"].append("com.apple.CoreBrightness.plist")
|
2021-12-16 11:50:12 +00:00
|
|
|
m.indicators = ind
|
|
|
|
run_module(m)
|
2022-01-07 17:24:24 +00:00
|
|
|
assert len(m.detected) == 1
|