Вразливі місця Microsoft SQL Server

При аналізі та пошуку вразливих місць у програмах використовується кілька підходів. В даному випадку я наведу найпростіший. Схема роботи буде проста як двері. Компанія Rational створила програму Purify для динамічного дослідження програмного забезпечення. Ось її і будемо використовувати. За допомогою програми Hailstorm запускаємо процес внесення помилок у SQL Server 7 і за допомогою Purify будемо відслідковувати стан програми. Враховуючи, що у даному СУБД більше помилок, ніж стрічок з програмним кодом, використаємо хоча б одну з них. Наприклад, при внесенні некоректних даних в пакет протоколу SQL Server виникає проблема затирання даних в пам’яті. Збій проходить в результаті неправильної обробки даних. SQL сервер приймає запити по 1443 порту. Для цього порту жодних специфікацій не існує. Направимо на цей порт випадкові дані( нехай це будуть згенеровані цифри) з інтенсивністю 20 пакетів в секунду. SQL Server буде сприймати ці пакети без жодних проблем. Вхідні дані обробляються різними фрагментами коду. Фактично ці фрагменти виконують читання заголовків протоколу. Через деякий час Purify вкаже на виникнення помилки і на зміну даних у пам’яті. Такого роду помилка призводить до відмови в роботі сервера. І як результат нашої роботи ми отримаємо звіт програми Heilstorm, а програма Purify вкаже на точне місце в програмному коді, де міститься помилка. Як використовувати цю помилку вже залежить не від мене. Якби мені довелось б піти іншим шляхом ( наприклад, вводяться в програму дані і досліджується фрагмент коду, що відповідає за обробку цих даних) напевне це зайняло б у мене кілька днів. Наведений метод є ефективний хіба для продуктів мікрософту, де помилка помилку поганяє. Для нормального програмного забезпечення існують складніші методи та підходи до взламування.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <h1> <h2> <h3> <h4> <h5> <h6> <address> <em> <strong> <code> <del> <cite> <acronym> <blockquote> <q> <sub> <p> <br> <pre> <ul> <ol> <li> <dl> <dt> <dd> <a> <b> <u> <i> <table> <tr> <td> <th> <div> <sup><hr> <img>
  • Glossary terms will be automatically marked with links to their descriptions.
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
        d8888                      888    d8P                       888     8888888b.  
d88888 888 d8P 888 888 Y88b
d88P888 888 d8P 888 888 888
d88P 888 .d88b. 888 888 888d88K 88888888 88888b. 888888 888 d88P
d88P 888 d8P Y8b `Y8bd8P' 8888888b d88P 888 "88b 888 8888888P"
d88P 888 88888888 X88K 888 Y88b d88P 888 888 888 888 T88b
d8888888888 Y8b. .d8""8b. 888 Y88b d88P 888 d88P Y88b. 888 T88b
d88P 888 "Y8888 888 888 888 Y88b 88888888 88888P" "Y888 888 T88b
888
888
888
Enter the code depicted in ASCII art style.

© Інформаційні технології. Аналітика , Рідна Мережа