человек надеется, что проверка целостности будет более надежна, чем если передавать блоб. а то кто-то может сохранить старую версию метаданых, изменить, а потом передавать старую версию в UDF, которая будет говорить - "да, все четко, наша система".

Именно так.

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

Смотря для чего эта UDF-ка нужна; если в ней содержится код который критичен для работы системы - то без ее вызова никак не обойтись.

Хотя это так, баловство, чисто теоретический экзерсис на тему "запереться изнутри и ключ в окошко выбросить". Как показывает практика, от умного хакера все равно не спасешься - даже хранение паролей не в isc4.gdb а в самой базе (что, насколько я знаю, планируется) - не очень поможет. В SQLAnywhere люди уже научились хэш пароля в базе менять hex-редактором на заранее подсчитанный и получать DBA; так что от умельца с тюнингованной головой и прямыми руками защититься все равно будет проблематично...




Ответить