Реконструкция криптографических протоколов. Часть 12.
Май,03
at1:41
отadmin
Когда определены адреса точек входа в каждую функцию, относящуюся к реализации того или иного криптографического примитива, необходимо проанализировать все обращения к таким функциям. Разумеется, можно попытаться выполнить эту работу при помощи отладчика, но, скорее всего, число обращений к криптографическим функциям будет настолько велико, что удержать полную картину в памяти не сможет ни один человек.
Поэтому лучше сохранить всю информацию об аргументах, передаваемых на вход криптографических функций, а также о возвращаемых ими значениях, в файле протокола. Если исследуемая программа содержит несколько потоков, разумно запоминать и идентификатор потока, внутри которого происходит обращение к функции. Также можно сохранять адрес, откуда производился вызов той или иной функции.
Чтобы получить возможность протоколирования, необходимо перехватить все обращения к криптографическим функциям. Это может быть выполнено разными способами, например при помощи запуска программы под своим отладчиком, реализованным средствами Microsoft Debugging API.
Leave a Reply