[freebsd] mismatched checksums

Eugene Grosbein eugen at grosbein.net
Fri Jun 12 16:59:58 EEST 2020


12.06.2020 12:05, Valentin Nechayev пишет:

>  Fri, Jun 12, 2020 at 10:27:46, eugen wrote about "Re: [freebsd] mismatched checksums": 
> 
>> Слово __pycache__ намекает на то, что там лежит некий "кеш", то есть изменяемые файлы,
>> проверить это можно через ls -l для сравнения даты создания/модификации этого файла
>> с датой создания других файлов того же пакета вне кеша.
>>
>> Суть контрольных сумм - обнаружить взлом, подмену файлов, поэтому изменяемым файлам не место
>> в списке защищаемых котрольной суммой, такие кеши согласно принятой на фре иерархии
>> должны жить внутри /var/db.
> 
> Дело в том, что этот кэш должен быть идентичным для комбинации
> конкретного исходного файла и версии Питона.

Дата модификации на 11 секунд позднее других файлов пакета намекает на такой сценарий:
порт или пакет установлены по зависимости, затем 11 секунд на загрузку/установку пакета
или сборку зависящего порта порта, при которой вызывается код из свежепоставленного
pycparser, который перегенерирует файл в кеше, при этом файл таки меняется,
раз уж контрольная сумма поменялась.

> Поэтому его и можно учитывать в пакете.

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



More information about the freebsd mailing list