Цифровая пустошь - стр. 48
– Твой прошлый опыт нужен. Я вот год уже работаю над «методичкой» для IPv6 и тут подумал ее проверить на безопасность.
– Ну и… Проверил?
– Проверил. Нет в ней нихрена опасного. Прога48 чистая, как альпийский снег.
– А с чего бы ты полез ее на безопасность проверять. IAB – серьезная контора. Считай, самая вершина иерархии интернета. С какой стати им гробить свою репутацию? Это ж положит конец единой сети.
– Хрен его знает. Мне через неделю в Москву работу сдавать. Не хотелось бы облажаться. И на душе как-то неспокойно. Новостей, наверное, насмотрелся.
– Вот что я тебе скажу, бро. Не парься. В Москве не идиоты сидят. Там такие киберпсы. Не нам с тобой чета, – Костя принял у официантки два стакана с виски и аккуратно поставил на стол. – Если в твоей проге и есть что, они вычислят это на раз-два.
– Так-то да. Но тогда я сам попаду под удар. Программа ведь в общем доступе для моей группы, в нее любой может влезть. Сейчас вот мне двух индусов дали.
– А… Ты задницу свою прикрыть хочешь. Я думал, безопасностью страны озаботился.
– Ты же видел мою «методичку», – Стэн поднял свой стакан, чокнулся с другом и сделал небольшой глоток. – Скажи, где бы ты в ней запрятал жучка49.
– Ну, судя по тому, что ты не последний лох, ты, наверное, уже самые очевидные места проверил. Значит, если и есть что, то запрятано очень глубоко. Тут есть две методики. Исключение и синтез. Исключение – это когда ты тупо выводишь кусок программы на экран и начинаешь блокировать отдельные командные строки. Одну за другой. По очереди. Если прога перестает работать, значит строка аутентичная, то есть является неотъемлемой частью программы и не несет опасности. Если ты заблокировал строку, а программа продолжает нормально работать, значит к ней могут быть вопросы. Она либо не несет нагрузки в рамках общей задачи, либо это строка отложенного действия. Ну, типа таймер там к ней привязан или еще что. Как только нашел такую строку, смотри историю и копай, откуда она, когда появилась и нахрен вообще нужна. Но скажу сразу – большинство программ забито такими мертвыми строками. Это могут быть остатки от прошлых редактирований кода и вообще все, что угодно.
– Круто, спасибо за подсказку. Буду ковыряться. Только времени нет. Мне скоро работу в Москву сдавать.
Стэн чокнулся с другом еще раз. Тот посмотрел на него, поморщился, словно кто-то наступил ему на ногу, и, вздохнув, продолжил:
– Ладно… Не могу видеть твою кислую физиономию. Помогу старому дружбану. Есть у меня одна программка, собственность компании, на которую я работаю. Она может на твоей «методичке» всю работу сделать за полчаса. Я тебе ее завтра передам. Но, блин, прошу… Я кучу всяких подписок давал о неразглашении. Так что не копировать, работать с моего носителя. И никому… После использования удалить все следы и саму программу тоже.
– Блин, Кос, спасибо, – Стэн приобнял и тряхнул друга за плечо.
– Спасибом не отделаешься. С тебя простава. Но слушай дальше… Есть еще одна методика, как можно клопов погонять50 – синтез. Здесь все сложнее. Элементы вируса могут быть хорошо замаскированы, разнесены по разным блокам и даже выполнять некоторые функции в материнской программе. Это высший пилотаж. В нужный момент такие разнесенные элементы должны собраться в боевую программу для выполнения основной задачи. Поскольку они являются частью базовой программы, вычислить их очень сложно. Здесь есть два варианта. Либо в самой программе есть спусковой механизм, дающий команду на сборку вируса. Скорее всего, это таймер или триггер