Что может быть источником / логикой за хеш-значениями, используемыми системой «Unified Logging» в macOS?

497
JakeGould

Этот вопрос был вдохновлен другим потоком вопросов и ответов относительно ложных срабатываний на Mac для вируса / вредоносного ПО, по-видимому, только для ПК.

Мой ответ тамBC8EE8D09234D99DD8B85A99E46C64 состоит в том, что хеш, который является именем файла для файла в системном каталоге «Unified Logging», /private/var/db/uuidtext/7B/является просто ложным срабатыванием. Я твердо верю, что этот ложноположительный диагноз верен ... Но все же мне кажется странным, что хэш на Mac будет соответствовать хешу на ПК. Каковы шансы, верно?

В любом случае, пытаясь понять, почему это может произойти, я открыл Терминал на Mac Pro на работе, который запускает macOS High Sierra 10.13.1, и заглянул в собственный /private/var/db/uuidtext/7Bкаталог этой системы ; ls -laвывод ниже:

total 128 drwxr-xr-x 9 root wheel 306 Nov 8 09:33 . drwxr-xr-x 259 root wheel 8806 Sep 27 11:50 .. -rw-r--r-- 1 root wheel 5732 Nov 1 09:27 122DC675FC3FC6A8184614F1ECBB99 -rw-r--r-- 1 root wheel 35 Nov 27 09:31 3AAA6D1D0C3D65A50B1B111ABEB6F3 -rw-r--r-- 1 root wheel 103 Nov 27 09:18 7F80A4BACE396A9BC2DA7E3C619493 -rw-r--r-- 1 root wheel 6605 Nov 27 09:21 96F54B98023EB49676A83C6A0E7A57 -rw-r--r-- 1 root wheel 32766 Nov 27 10:21 AE6788A12B367EA7442F303846B58D -rw-r--r-- 1 root wheel 1310 Nov 27 14:26 E6B6AA12DD365CA5C5C8C8A2293D0B -rw-r--r-- 1 root wheel 344 Nov 1 10:26 ECFE2546EB32328AF616F3154B2ABA 

И я заглянул в тот же каталог на Mac Mini, который я использую дома, где также работает macOS High Sierra 10.13.1, и обнаружил следующее:

total 48 drwxr-xr-x 7 root wheel 238 Nov 27 18:12 . drwxr-xr-x 259 root wheel 8806 Sep 26 20:12 .. -rw-r--r-- 1 root wheel 5732 Oct 29 13:59 122DC675FC3FC6A8184614F1ECBB99 -rw-r--r-- 1 root wheel 35 Nov 27 18:09 3AAA6D1D0C3D65A50B1B111ABEB6F3 -rw-r--r-- 1 root wheel 103 Nov 27 18:08 7F80A4BACE396A9BC2DA7E3C619493 -rw-r--r-- 1 root wheel 1310 Nov 27 18:20 E6B6AA12DD365CA5C5C8C8A2293D0B -rw-r--r-- 1 root wheel 344 Nov 1 20:01 ECFE2546EB32328AF616F3154B2ABA 

Хорошо, похоже на скучную кучу хешей, верно? Что ж, посмотрим ближе: обе системы показывают хэши для E6B6AA12DD365CA5C5C8C8A2293D0Bи 7F80A4BACE396A9BC2DA7E3C619493. И я сделал быстрый поиск в Google по хешам, и, хотя большинство элементов не дало результатов, я обнаружил, что один из хэшей, о котором я упоминал выше, E6B6AA12DD365CA5C5C8C8A2293D0B- отображается в списке файловых каталогов на этой странице :

/private/var/db/diagnostics/Special/0000000000000024.tracev3 /private/var/db/diagnostics/timesync/0000000000000002.timesync /private/var/db/diagnostics/Persist/0000000000000011.tracev3 /private/var/db/uuidtext/58/CC0E0317B43D7A84C47DA1275642C0 /private/var/db/uuidtext/BB/88FC65AC78308A82030DAD82CCAC19 /private/var/db/uuidtext/FE/F349208E223E709FE2552800B9A460 /private/var/db/uuidtext/7B/E6B6AA12DD365CA5C5C8C8A2293D0B /private/var/db/uuidtext/9A/CA0127E687388594751D5E4DD83168 /private/var/db/uuidtext/9A/79C2510A7335848F421652E5BAB381 /private/var/db/uuidtext/6C/791AD6426B34A495CC9B8B049A5489 /private/var/db/uuidtext/A7/A58DC0EEB3352CAAF1851A24A8ACF0 /private/var/db/uuidtext/B7/3EB177938B3A989405789F729A0C3B /private/var/db/uuidtext/F0/24C78020883E28A8DA1D7DB12E39CB /private/var/db/uuidtext/F7/1B60DC303734C3ABB4B011CDF19866 /private/var/db/uuidtext/F8/8F8299441C3E1AAEBEAFBB858AE1EA /private/var/db/uuidtext/40/75E44E5F45386DB289C1E320CB1709 

Ладно, это слишком странно. Если это системные хеши, которые должны быть на 100% случайными (насколько мне известно), то почему мой Mac на работе, мой Mac дома и чужой Mac - где бы они ни находились - имеют точно такое же хешированное имя файла в аналогичном каталоге?

Что может быть источником / логикой за хеш-значениями, используемыми системой «Unified Logging»? Почему, основываясь на этих случайных наблюдениях, они кажутся неслучайными?

4

1 ответ на вопрос

2
harrymc

Я думаю, что здесь есть некоторое недопонимание: хэш-функции никогда не бывают случайными:

Хеш-функция - это любая функция, которую можно использовать для сопоставления данных произвольного размера с данными фиксированного размера. Значения, возвращаемые хэш-функцией, называются хэш-значениями, хэш-кодами, дайджестами или просто хэшами.

Хеш-функция принимает данные и выводит строку, которая является хеш-значением. Хорошая хеш-функция измеряется количеством конфликтов, что означает, сколько разных потоков данных может генерировать одно и то же хеш-значение. Современные алгоритмы хэширования очень хорошо зарекомендовали себя и используются для идентификации файлов / отпечатков пальцев по многим причинам, например, для поиска вирусов.

Два файла, которые вы обнаружили, имеют одинаковое хеш-значение, также имеют одинаковый точный размер, поэтому я думаю, что они также имеют общее содержимое.

Таким образом, вы, вероятно, доказали, что ваш Mac Pro на работе использует ту же хэш-функцию, что и ваш Mac Mini дома.

Таким образом, в основном вы говорите, что этот формат «Унифицированная регистрация» имеет заданное количество, скажем, «Thing A», «Thing B» и «Thing C», и это буквально идентификаторы для всех систем, а затем хеш ли буквальные имена «Thing A», «Thing B» и «Thing C» могут приравниваться к одному и тому же хэшу в разных системах? JakeGould 6 лет назад 0
Да, если используется одна и та же хеш-функция (нельзя сказать, что разные функции не могут получить одно и то же хеш-значение, хотя, надеюсь, это довольно редко). harrymc 6 лет назад 1