Сто і один спосіб злому електронної пошти
Перш ніж заглибитися в обговорення конкретних видів атак, важливо зрозуміти, як можна відправити електронне повідомлення із злим наміром. Насправді зробити це складніше, ніж може показатися на перший погляд. Більшість сучасних графічних клієнтських додатків електронної пошти не дозволяють виконувати операції безпосередньо з блоком заголовка повідомлень SMTP. Іронія полягає в тому. що, не дивлячись на незадоволеність, яку викликають вади програмних продуктів компанії Microsoft, які виявляються під час прийому повідомлень, відправити створений зломщиком код HTML за допомогою таких програм, як Outlook або Outlook Express, украй важко. Звичайно ж, користувачі UNIX для подібних маніпуляцій можуть скористатися традиційними поштовими клієнтами, яких можна використовувати з командного рядка.
У системі Windows авторам подобається відправляти повідомлення уручну з командного рядка прямо на сервер SMTP. Краще всього для цього скористатися конвеєром, в якому текстовий файл з відповідними командами SMTP і даними передається через утиліту netcat. От як це робиться.
По-перше, необхідно створити файл з потрібними командами SMTP і даними повідомлення (назвемо його malicia.txt). При цьому, щоб електронний лист правильно відформатував, важливо дотримуватися правильного синтаксису MIME (Multipurpose Internet Mail Extensions). Зазвичай такі повідомлення відправляють у форматі HTML, так що само тілом повідомлення є частина реалізації підступного задуму. У наступному прикладі головною частиною, в якій важливо дотримувати синтаксис, є три рядки, що починаються з рядка Mlme-version: 1. 0.
helo
mail from: <mallory@malweary.com>
rcpt to: <hapless@victim.net>
data
subject: Read this!
Importance: high
Mime-versicn: 1.0
Content-type: text/html; charset=us-ascii
Content-transfer-encoding: 7bit
<HTML>
<h2>hello' World!</h2>
</html>
quit
Потім
в командному рядку потрібно ввести ім'я цього файлу і передати його через конвеєр утиліті netcat, для якої слід вказати відповідний поштовий сервер з SMTP-портом 25. type malicious, що прослуховується.txt | nc -w mail.openrelay.net 25
Напевно, зрозуміло
і без слів, що хакери, швидше за все, виберуть непримітний поштовий сервер, який допускає необмежену передачу повідомлень SMTP, і постараються приховати свою власну IP-адрес, щоб його не можна було вислідити за допомогою журналів поштових серверів.
Такі "відкриті канали пересилки SMTP" часто використовуються "спемерамі". Їх можна легко відшукати в новинах Usenet або знайти на Web-узле http://mail-abuse.org.
Якщо
разом з повідомленням у форматі HTML потрібно відправити атоженіє, то зробити це дещо складніше. Для цього в повідомлення необхідно додати іншу частину у форматі MIME і закодувати це вкладення за допомогою специфікації MIME у формат Base64 (див. RFC 2045-49). Краще всього скористатися для цієї мети утилітою Джона Майерса (John
G. Myers) mpack. Програма mpack витончено додає відповідні заголовки MIME, так що результат, що вийшов, можна відразу отруювати прямо на сервер SMTP. Нижче приведений приклад того, як за допомогою утиліти mpack зашифрувати файл plant.txt і записати отримані дані у файл plant.mim. Параметр -s задає вміст поля з темою повідомлення і не є обов'язковим.
mpack -s Nasty-gram -о plant.mim plant.txt
Тепер починається складніша частина. Цей фрагмент у форматі MIME потрібно вставити у вже існуюче повідомлення HTML. Скористаємося вже знайомим прикладом, malicia.txt і розділимо це повідомлення за допомогою звичайних роздільників MIME відповідно до того, як визначено в рядках Content-type:. Перед роздільниками MIME ставиться два символи -, а в закриваючих роздільниках два цих символу вводиться ще і після роздільників. Крім того, постарайтеся не забути помістити частину повідомлення MIME multipart/alternative (boundary:), щоб адресати змогли розшифрувати тіло повідомлення HTML з помошью програми Outlook. Слід звертати увагу на розміщення символів переведення каретки, оскільки від цього залежить інтерпретація повідомлення. Відмітимо, що параметру цього повідомлення importance привласнено значення high. Це ще один прийом, направлений на заманювання жертви.
helo somedomain.com
mail from: <mallory@malweary.com>
rcpt to: <hapless@victim.net>
data
subject: Read this!
Importance: high
Mime-version: 1.0
Content-type: multipart/mixed;
boundary="_boundaryl_" --_boundaryl_--
Content-type: multipart/alternative;
boundary="_boundary2_" --_boundary2_--
Content-type: text/html; charset=us-ascii
<HTML>
<h2>hello World!</h2>
</html>
~-_boundary2_-- --_boundaryl_--
Content-type: application/octet-stream;
name="plant.txt"
CONTENT-ID: <5551212>
Content-transfer-encoding: base64
Content-disposition: inline;
filename="plant.txt"
Content-md5: Psn+mcjevofpwoec40xyta==
Ssbjb3vszgegagfja2vkihlhigjhzcancg== --_boundaryl_-- quit
Після
передачі цього файлу за допомогою утиліти netcat на доступний сервер SMTP повідомлення у форматі HTML і з вкладеним файлом plant.txt буде доставлено за адресою hapless@victim.net. Щоб краще зрозуміти застосування роздільників MIME в повідомленнях, що складаються з декількох частин, див. розділ 5.1.1 документа
RFC 2046. Крім того, як корисна вправа можна відправити тестове повідомлення на свою адресу, і проглянути його за допомогою додатку Outlook Express. Потім потрібно клацнути правою кнопкою на даному повідомленні і в контекстному меню вибрати команду
Properties>details>message Source і проглянути повідомлення в необробленому вигляді.
У даному розділі автори посилатимуться на цей метод як на "капсулу для злому пошти". Тепер, щоб уявити собі ступінь риски, яким насправді є атака через електронну пошту, подивимося, як цей загальний метод застосовується в деяких реальних атаках.
Контрзаходи проти злому електронної пошти
Очевидною мірою є відключення можливості отримання поштовим клієнтом повідомлень у форматі HTML. На жаль, для сучасних поштових програм зробити це або складно, або неможливо. Крім того, слід відключити і можливість використання технологій мобільної коди. У розділі, присвяченому опису зон безпеки, вже згадувалося, як це зробити, але для надійності автори вирішили ще раз повторити цю раду. У додатках Outlook і Outlook Express виберіть команду
Tools>options, перейдіть у вкладку Security і в списку групи Secure, що розкривається, content виберіть зону Restricted Sites, як це показано на мал. 16.2. (Не забувайте, що цей параметр не застосовуватиметься при прогляданні Web-страниц в броузере Internet Explorer, в якому використовуються свої власні параметри.) Одін тільки цей прийом допоможе уникнути багатьох перерахованих нижче проблем, тому настійно рекомендуємо скористатися цією можливістю.
Безумовно, важливо також дотримуватися обережності при роботі з вкладеннями електронних повідомлень. Першою інстинктивною реакцією більшості людей на виникнення проблем, подібних до появи вірусу 1loveyou (див. нижчий), — звинуватити у всьому розробника програмного забезпечення. Проте насправді поштові програми вимагають певних навиків і з боку користувача. Модуль оновлення Outlook, який можна отримати за адресою
http://officeupdate.microsoft.com/ 2000/downloaddetails/out2ksec.htm ускладнює користувачам процес запуску вкладень, примушуючи їх перед цим принаймні двічі клацати в діалогових вікнах, що з'являються (до речі, цей модуль встановлює еше і зону безпеки Restricted Sites). Як ви побачите трохи нижче, це не просто зашита від дурнів. Така міра значно піднімає бар'єрну планку для можливих зломщиків. Звичайний здоровий глузд теж допоможе в цьому: не відкривайте повідомлення і не завантажуйте вкладення, які прийшли від незнайомих людей!
|