Как понять, что подрядчик разработает безопасный продукт без утечек данных?
Здравствуйте! Уважаемые специалисты и начинающие. Подскажите.
Мы - коммерческое медицинское учреждение. Нам предлагают разработать информационную систему в виде сайта, где будет личный кабинет пациента, откуда он будет получать свои медицинские данные, ну а мы, собственно говоря - будем вносить. Оставим за скобками аспекты типа "пациент передал кому-то пароль, сотрудник кому-то передал пароль, и персональные данные утекли".
Волнует иной аспект сохранности персональных данных. По закону, ВСЮ ответственность за утечку перс.данных несет мед.учреждение.
В том числе, если вдруг мы добросовестно соблюдая меры охраны перс.данных, внесем данные в информационную систему-сайт, а они оттуда куда-то утекут.
Мы же не программисты, чтобы оценить надежность конечного продукта-сайта.
Когда мы спрашиваем потенциальных разработчиков (и не одну компанию), то нам отвечают: "мы разрабатываем качественно, и никуда ваши данные не денутся, все будет работать нормально, мы много лет на рынке и сделали много проектов, еще никто не жаловался". Получается, любому подрядчику мы просто должны поверить на слово?
Внимание, вопрос! Действительно ли нет никаких стандартов, спецификаций, требований к коду программного продукта (сайта, медицинской системы), сертификатов, регламентированных проверок, тестов, перечня угроз и устойчивостей и пр., или же требований к компании-разрабочику? Для того, чтобы оценить, что то продукт, который мы у них закажем, не будет "дырявым" и не "подставит" нас, как мед.учреждение, за утерю персональных данных?
Как оценить подрядчика?
Слово "аудит" вам знакомо? Предупредите подрядчика, что по окончанию работ будет проведен аудит безопасности. Ну и наймите хорошего аудитора.
На счет стандартов могу припомнить разве что ISO 9001, который хоть и не заточен конкретно под медицинские, но используется некоторыми фарм-компаниями, например.
Спасибо! И. То есть получается, все равно - подрядчик не может предоставить каких-либо подтверждающих документов, что он делает безопасный продукт, нам просто поверить ему, а потом провести аудит, уже затратив деньги на разработку сайта? Критериев способности подрядчика создать безопасный продукт - нет?
Что касается разработки и аудита, то это в любом случае должны быть 2 независимых действия, иначе аудит честным считать будет тяжело.
Чтобы и разработчики были в курсе Ваших ожиданий в плане безопасности, и Вам не приходилось надеяться на "авось сделают безопасно", этот момент нужно четко закрепить как условие задачи в договоре. Можно прям так и сформулировать, мол разработанная система на выходе должна соответствовать PCI стандартам. Если после разработки, система не проходит аудит на соответствие стандартам, значит разработчики не выполнили свою часть договора.
Irina Bubley: Подрядчик может показать вам какой-нибудь сертификат или почетную грамоту, но если у него нет какой-то серьезной репутации - аудит будет рулить. Если вы сами не разбираетесь, а подрядчику выгодно вас обмануть, выход один - нанять того, кто разбирается. Аудитора.
Документы есть, а как же без них. Есть международные сертификаты, например. Вы при поиске подрядчика сможете самостоятельно проверить достоверность этого документа? Если вам покажут красивую бумажку на которой написано IEC 27000, это о чем-то вам скажет? Как вариант, можно нанять консультанта по ИБ, который будет в теме, и сможет помочь при поиске.
А гос. сертификаты, насколько я помню, выдают в основном на системы и устройства, а не на компании разработчиков. Ну и на криптографию еще.
Stalker_RED: Спасибо большое за ответ! Конечно, сертификат я проверить не смогу. А может, подрядчик должен владеть какими-то технологиями разработки, по которым косвенно можно предположить, что родят нам безопасный продукт?
если хотите без запар - нанимаете хорошего программиста, который в будущем будет заниматься поддержкой вашего сайта. главное слово тут - хорошего. ну и собственно на начальном этапе его задачей будет написание и согласование тз с веб студией, которая вам будет разрабатывать сайт.
тобишь разработка сайта будет под надзором вашего программиста - это раз.
в дальнейшем тоже безопасность будет под контролем. потому что им будет заниматься этот программист.
iBird Rose: Не в деньгах дело. Он должен быть не настолько хорош, чтобы делать продукт, при этом он способен потянуть аудит чужого. Звучит как-то взаимоисключающе.
в дальнейшем тоже безопасность будет под контролем. потому что им будет заниматься этот программист.
О какой безопасности можно говорить если безопасностью будет заниматься программист, а не специалист по ИБ?
Это все равно что электрика заставить системным администрированием заняться.
АртемЪ: вы бесспорно правы, но в малом и среднем сегменте бизнеса безопасностью организации занимается сисадмин. безопасностью в сфере веба - бекендер. одним словом бекендр по дефолту является специалистом по ИБ. у ТС просто мед заведение. вы серьезно считаете, что им стоит нанять отдельно специалиста по ИБ и бекендера? (с таким сайтом бекендер им будет нужен полюбому.)
iBird Rose: Думаю что заведению на этапе разработки проще доверитсья разработчику.
А после разработки провести аудит.
Насчет бэкэндера в штате не уверен, хотя и не исключаю.
iBird Rose: Я к тому, что вероятность найти хорошего, способного на аудит бэка на поддержку чьего-то кастомного продукта будет экстримально сложно. Ибо не будет такой умелец перебиваться подобной работой. И вы считаете, что фронт поддерживать не нужно?
Толстый Лорри: вопрос был про безопасность. я ответил исключительно по нему. я бы и бекендера в штат не посоветовал, если бы вопроса про безопасность не было. щас хорошие веб студии нормально поддержкой занимаются. в том числе и фронт-енд поддержкой
Irina Bubley: тут дело не в критериях, а в уязвимости. не существует такого списка пунктов выполнив которые вы получили бы 100% безопасный продукт. но как выше посоветовали - аудит сможет вам поможет закрыть популярные виды уязвимости.
iBird Rose: ну хоть какие-то критерии отбора подрядчика должны быть? А то у меня пока из критериев "мы много лет на рынке и никто не жаловался". По годам присутствия на рынке выбирать мне компанию-подрядчика? С уважением к Вам, с надеждой на ответ.
Irina Bubley: По портфолио можно в какой-то мере судить. Если там среди работ не только сайты-визитки и пачка опенкартов, но есть серьезные проекты с большой посещаемостью, то скорее всего этот разработчик умеет делать без дыр.
Если тянете по бюджету - наймите консультанта по ИБ для поиска подрядчика и первичных переговоров. Или даже на все время разработки проекта. Аудит, при этом, должен проводить кто-то другой.
Существуют инструменты (программное обеспечение), которые специально разработаны для проверки исходного кода на наличие слабых мест (уязвимостей и ошибок). В рамках договора с подрядчиком можно включить проверку исходного кода на уязвимости, результатом которого будет отчет, полученый из системы. Но в целом это не решит проблему, так как ежедневно появляются ранее неизвестные уязвимости, то есть если сейчас их нет, это не означает, что завтра их не будет. Для этого существует отдельный класс решений - WAF (Web Application Firewall), который с помощью сигнатурного метода (знаний о существующих угрозах) и машинного обучения смогут повысить уровень киберустойчивости Вашего ресурса.
Программист - это человек который пишет код системы, специалист по безопасности - человек, который постарается построить защищенную систему. Не нужно путать.