Anatoly Vorobey (avva) wrote,
Anatoly Vorobey
avva

про компьютерную безопасность и мышление о рисках

Эта ссылка для программистов и сочувствующих.

Persuasive Language for Language Security: Making the case for software safety

Одно из самых интересных и содержательных эссе, которые я читал в последнее время. Это выступление на конференции LangSec - области компьютерной безопасности, с которой я почти не знаком (они работают над специальными языками для описания передачи информации, чтобы код для обработки входящих/выходящих пакетов мог быть полностью верифицируемым и свободным от дырок). Но автор (его зовут Майк Уокер) говорит не об этом, а о его впечатлениях от общения с бюрократами и политиками, которые не понимают секьюрити.

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

Уокер рассказывает, например, как он нашел тысячи подключенных к интернету без пароля серверов VNC (программы, к-я позволяет контролировать компьютер издалека) и для того, чтобы показать проблему особо наглядно, нашел сервер на компьютере, который управлял свинофермой. Кто угодно мог подключиться к компьютеру и скажем выпустить всех свиней, или перекрыть им кормежку. Он повесил скриншоты этого сервера у себя на двери офиса (он работал в DARPA, агентства внутри Пентагона). И вот, говорит он, когда другие специалисты по безопасности видели эти скриншоты, они понимали, какой это ужас, и хватались за голову. А когда мимо проходили высокое начальство или политики, они не понимали вообще, что тут такого. Он пытался объяснить, но они быстро теряли интерес. "Зачем кому-то нужно нападать на свиноферму?" Что они не понимали, а специалистам было ясно автоматически - это что если есть один такой сервер, наверняка есть тысяча и десяток тысяч; и что где-то ферма, а где-то больница или завод; и что злоумышленники могут написать скрипты, которые будут автоматически находить такие серверы в интернете и автоматически нажимать на всякие кнопки и двигать мышкой, просто так, чтобы побаловаться, не для того даже, чтобы атаковать конкретное место; и что это может натворить огромную кучу вреда. Но у начальства воображение туда просто не шло; даже если попытаться им подробно все это объяснить, это казалось нереальным и малоосмысленным сценарием.

Другой отличный пример я процитирую по-английски:
...policy thinking within the conflict domain of computer security is dominated by thinking about planned, intentional malice rather than considerations of the collective risk of randomized disaster. This is a real divide; you will find it again and again. What it creates are Rorshach Tests: both sides stare at the inkblot, one side sees a butterfly and the other side sees a butterfly that has been stepped on. Let me give you an example.

V2V is a technology that allows cars to communicate, digitally exchanging position and vector information; when two cars are on a collision course they can compute the collision without seeing each other and either alert the driver or autonomously take avoidance action. This digital exchange of vectors will take place through constant vehicle-to-vehicle exchange of vector information signed and secured by the X.509 certificate industry standard.

Now as I look around the room, and I gauge your reaction, what I see is people who see a butterfly that has been stepped on. Because what we all heard is that the cars of the future are going to be part of a peer-to-peer digital mesh network that transmits, receives, and parses X.509 certificates. We don't think a lot about the safety history of cars, but we think quite a bit about the safety history of X.509 certs, and what we know scares us. Now if you believe that parsing complex, nested binary formats is dangerous, that the uncomputable complexity of ASN.1 Basic Encoding Rules creates unnecessary danger, that peer-to-peer communications without central inspection or forwarding is a basic requirement for self-replicating code, and you intuitively understand that the worst teleporting robots can clone themselves, then you can in one breath summon to mind the sum of all fears: a widely used implementation, memory corruption, a worm, and a nation of vehicles afflicted with a control systems virus.

What the other side heard was that thousands of automotive collisions could be wiped out by a single technology based on a tried-and-true industry standard, defended by best practices that work every day to keep the Internet safe. Our concerns are theoretical; theirs are governed by real lives being lost right now. And if you speak only to the perceived technological weakness, the other side of the table will immediately want to know who perceives this weakness, what their effort to act is, what their motivation to act is, and what deters them. When you possess a threat model dominated by intentional malice, you think about people, not bugs. And if you push on this divide, you end up having what is essentially a deadlocked conversation.


И последнее, ну это просто забавная цитата: "I had the chance to talk to a lot of smart people; one of them was a young roboticist from MIT [...] and I asked this young man what the word Cyber meant. He told me that cyber was a word used exclusively by people in government to let everyone know that they didn't understand how computers worked. I think maybe he was on to something. I think this definition is still universally accepted in the hacker community."
Tags: интернет, программирование
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 53 comments