ΠŸΠΎΠ²Ρ–Π΄ΠΎΠΌΠ»Π΅Π½Π½Ρ ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ

Π— Ρ‚ΠΎΡ‡ΠΊΠΈ Π·ΠΎΡ€Ρƒ Π±Π΅Π·ΠΏΠ΅ΠΊΠΈ висновок ΠΏΠΎΠ²Ρ–Π΄ΠΎΠΌΠ»Π΅Π½ΡŒ ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ нСсС як плюси, Ρ‚Π°ΠΊ Ρ– мінуси.

Одна Ρ–Π· стандартних ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ, які Π·Π°ΡΡ‚ΠΎΡΠΎΠ²ΡƒΡŽΡ‚ΡŒΡΡ Π² Π°Ρ‚Π°ΠΊΠ°Ρ… - ввСдСння Π½Π΅ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΈΡ… Π΄Π°Π½ΠΈΡ… Π· подальшим Π°Π½Π°Π»Ρ–Π·ΠΎΠΌ змісту Ρ‚Π° Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Ρƒ ΠΏΠΎΠ²Ρ–Π΄ΠΎΠΌΠ»Π΅Π½ΡŒ ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ. Π¦Π΅ Π΄Π°Ρ” Π·Π»ΠΎΠΌΡ‰ΠΈΠΊΡƒ ΠΌΠΎΠΆΠ»ΠΈΠ²Ρ–ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Ρ–Ρ€ΠΈΡ‚ΠΈ скрипти Ρ‚Π° Π΄Π°Π½Ρ– сСрвСра Π½Π° Π½Π°ΡΠ²Π½Ρ–ΡΡ‚ΡŒ ΠΏΠΎΡ‚Π΅Π½Ρ†Ρ–ΠΉΠ½ΠΈΡ… Π΄Ρ–Ρ€ΠΎΠΊ. Наприклад, якщо Π·Π»ΠΎΠΌΡ‰ΠΈΠΊ ΠΎΡ‚Ρ€ΠΈΠΌΠ°Π² дСяку Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–ΡŽ ΠΏΡ€ΠΎ сторінку Π½Π° підставі Π²Ρ–Π΄ΠΏΡ€Π°Π²ΠΊΠΈ Ρ„ΠΎΡ€ΠΌΠΈ, Π²Ρ–Π½ спробує Π²ΠΈΠ·Π½Π°Ρ‡ΠΈΡ‚ΠΈ дСякі ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ– значСння Π°Π±ΠΎ ΠΌΠΎΠ΄ΠΈΡ„Ρ–ΠΊΡƒΠ²Π°Ρ‚ΠΈ Ρ—Ρ…:

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ #1 Атака Π½Π° Π·ΠΌΡ–Π½Π½Ρ– Π² HTML-сторінці

Помилки, Ρ‰ΠΎ Π²ΠΈΠ½ΠΈΠΊΠ°ΡŽΡ‚ΡŒ ΠΏΡ–Π΄ час Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ скриптів, Ρ” Π΄ΠΎΡΠΈΡ‚ΡŒ Ρ†Ρ–Π½Π½ΠΎΡŽ Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–Ρ”ΡŽ для Ρ€ΠΎΠ·Ρ€ΠΎΠ±Π½ΠΈΠΊΠ°, Ρ‰ΠΎ ΠΌΡ–ΡΡ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΡ– Π΄Π°Π½Ρ–, як функція Π°Π±ΠΎ Ρ„Π°ΠΉΠ», Π° Ρ‚Π°ΠΊΠΎΠΆ Π½ΠΎΠΌΠ΅Ρ€ рядка, Π² якому Π²ΠΈΠ½ΠΈΠΊΠ»Π° ΠΏΠΎΠΌΠΈΠ»ΠΊΠ°. Вся ця інформація ΠΌΠΎΠΆΠ΅ Π±ΡƒΡ‚ΠΈ використана для Π·Π»ΠΎΠΌΡƒ. Для PHP-Ρ€ΠΎΠ·Ρ€ΠΎΠ±Π½ΠΈΠΊΠ° Π΄ΠΎΡΠΈΡ‚ΡŒ Π·Π²ΠΈΡ‡Π½ΠΎ скористатися Ρ‚Π°ΠΊΠΈΠΌΠΈ функціями, як show_source() highlight_string() Π°Π±ΠΎ highlight_file() Π· ΠΌΠ΅Ρ‚ΠΎΡŽ налагодТСння, Π°Π»Π΅ Π½Π° ΠΏΡ€Π°Ρ†ΡŽΡŽΡ‡ΠΈΡ… сайтах Ρ†Π΅ ΠΌΠΎΠΆΠ΅ Π²Ρ–Π΄ΠΊΡ€ΠΈΡ‚ΠΈ Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–ΡŽ ΠΏΡ€ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ²Π°Π½Ρ– Π·ΠΌΡ–Π½Π½Ρ–, Π½Π΅ΠΏΠ΅Ρ€Π΅Π²Ρ–Ρ€Π΅Π½ΠΈΠΉ синтаксис Ρ‚Π° Ρ–Π½ΡˆΡ– ΠΏΠΎΡ‚Π΅Π½Ρ†Ρ–ΠΉΠ½ΠΎ Π½Π΅Π±Π΅Π·ΠΏΠ΅Ρ‡Π½Ρ– ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΈ. Особливо Π½Π΅Π±Π΅Π·ΠΏΠ΅Ρ‡Π½ΠΎΡŽ Ρ” Π½Π°ΡΠ²Π½Ρ–ΡΡ‚ΡŒ ΠΊΠΎΠ΄Ρƒ Π· Π²Π±ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΌ ΠΌΠ΅Ρ…Π°Π½Ρ–Π·ΠΌΠΎΠΌ налагодТСння Π² ΠΏΡƒΠ±Π»Ρ–Ρ‡Π½ΠΈΡ… частинах сайту. Π—Π»ΠΎΠΌΡ‰ΠΈΠΊ ΠΌΠΎΠΆΠ΅ спробувати запустити Π½Π°Π»Π°Π³ΠΎΠ΄ΠΆΡƒΠ²Π°Π»ΡŒΠ½ΠΈΠΉ ΠΌΠ΅Ρ…Π°Π½Ρ–Π·ΠΌ, ΠΏΡ–Π΄Π±ΠΈΡ€Π°ΡŽΡ‡ΠΈ основні ΠΎΠ·Π½Π°ΠΊΠΈ налагодТСння:

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ #2 Використання стандартних Π·ΠΌΡ–Π½Π½ΠΈΡ… Π½Π°Π»Π°Π³ΠΎΠ΄ΠΆΡƒΠ²Π°Π»ΡŒΠ½ΠΈΡ…

НСзалСТно Π²Ρ–Π΄ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΎΠ±Ρ€ΠΎΠ±ΠΊΠΈ ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ, ΠΌΠΎΠΆΠ»ΠΈΠ²Ρ–ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Ρ–Ρ€ΠΊΠΈ систСми Π½Π° Π½Π°ΡΠ²Π½Ρ–ΡΡ‚ΡŒ ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ Π·Π°Π±Π΅Π·ΠΏΠ΅Ρ‡ΡƒΡ” Π·Π»ΠΎΠΌΡ‰ΠΈΠΊΠ° Π΄ΠΎΠ΄Π°Ρ‚ΠΊΠΎΠ²ΠΎΡŽ Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–Ρ”ΡŽ.

Наприклад, стандартний висновок ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΡƒ Π²ΠΊΠ°Π·ΡƒΡ” Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†Ρ–ΠΉΠ½Ρƒ систСму, Π² якій Π²ΠΈΠΊΠΎΠ½ΡƒΡŽΡ‚ΡŒΡΡ PHP-скрипти. Π―ΠΊΡ‰ΠΎ Π·Π»ΠΎΠΌΡ‰ΠΈΠΊ Π°Π½Π°Π»Ρ–Π·ΡƒΡ” Π·Π²ΠΈΡ‡Π°ΠΉΠ½Ρƒ сторінку сайту Π· Ρ€ΠΎΠ·ΡˆΠΈΡ€Π΅Π½Π½ΡΠΌ.

Π’Π°ΠΊΠΎΠΆ повідомлСння ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΡƒ ΠΌΠΎΠΆΠ΅ Π΄Π°Ρ‚ΠΈ Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–ΡŽ ΠΏΡ€ΠΎ Π±Π°Π·Ρƒ Π΄Π°Π½ΠΈΡ…, Ρ‰ΠΎ Π²ΠΈΠΊΠΎΡ€ΠΈΡΡ‚ΠΎΠ²ΡƒΡ”Ρ‚ΡŒΡΡ, Π°Π±ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΊΠ»Π°Π΄, як ΠΏΠΎΠ±ΡƒΠ΄ΠΎΠ²Π°Π½Π° Π»ΠΎΠ³Ρ–ΠΊΠ° Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ скриптів. Π¦Π΅, Ρƒ свою Ρ‡Π΅Ρ€Π³Ρƒ, ΠΌΠΎΠΆΠ΅ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΠΈ Π·Π»ΠΎΠΌΡ‰ΠΈΠΊΡƒ ΠΏΡ–Π΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΠΈΡΡ Π΄ΠΎ Π²Ρ–Π΄ΠΊΡ€ΠΈΡ‚ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Ρƒ Π±Π°Π·ΠΈ Π΄Π°Π½ΠΈΡ… Π°Π±ΠΎ Π·Π½Π°ΠΉΡ‚ΠΈ ΠΏΠ΅Π²Π½Ρ– ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ Π² ΠΊΠΎΠ΄Ρ–. Π‘ΠΏΡ€ΠΎΠ±ΡƒΡŽΡ‡ΠΈ ΠΏΠΎΡ‡Π΅Ρ€Π³ΠΎΠ²ΠΎ Ρ€Ρ–Π·Π½Ρ– Π½Π΅Π²Ρ–Ρ€Π½Ρ– Π±Π»ΠΎΠΊΠΈ Π΄Π°Π½ΠΈΡ…, зловмисник ΠΌΠΎΠΆΠ΅ Π²ΠΈΠ·Π½Π°Ρ‡ΠΈΡ‚ΠΈ порядок Π°Π²Ρ‚Π΅Π½Ρ‚ΠΈΡ„Ρ–ΠΊΠ°Ρ†Ρ–Ρ— Ρƒ скрипті (Π½Π°ΠΏΡ€ΠΈΠΊΠ»Π°Π΄, Π·Π° Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ рядків Π· ΠΏΠΎΠΌΠΈΠ»ΠΊΠ°ΠΌΠΈ) Ρ‡ΠΈ пСрСвіряти Π½Π°ΡΠ²Π½Ρ–ΡΡ‚ΡŒ Π΄Ρ–Ρ€ ​​різні ділянки ΠΊΠΎΠ΄Ρƒ.

ВивСдСння стандартних ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ Π°Π±ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ, ΠΏΠΎΠ²'язаних Ρ–Π· Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΡŽ ΡΠΈΡΡ‚Π΅ΠΌΠΎΡŽ, ΠΌΠΎΠΆΠ΅ Π²ΠΊΠ°Π·Π°Ρ‚ΠΈ, Π· якими привілСями Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ Π²Π΅Π±-сСрвСр, Ρ‚Π° як ΠΎΡ€Π³Π°Π½Ρ–Π·ΠΎΠ²Π°Π½Ρ– ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ сайту. ΠžΠ±Ρ€ΠΎΠ±ΠΊΠ° ΠΏΠΎΠ΄Ρ–Π±Π½ΠΈΡ… ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ, написана Ρ€ΠΎΠ·Ρ€ΠΎΠ±Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, ΠΌΠΎΠΆΠ΅ лишС ΠΏΠΎΠ³Ρ–Ρ€ΡˆΠΈΡ‚ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, якщо Π·Π»ΠΎΠΌΡ‰ΠΈΠΊΠΎΠΌ Π±ΡƒΠ΄Π΅ Π·Π½Π°ΠΉΠ΄Π΅Π½ΠΎ спосіб виявити "ΠΏΡ€ΠΈΡ…ΠΎΠ²Π°Π½Ρƒ" Π½Π°Π»Π°Π³ΠΎΠ΄ΠΆΡƒΠ²Π°Π»ΡŒΠ½Ρƒ Ρ–Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–ΡŽ.

Існує Ρ‚Ρ€ΠΈ основні способи Π²ΠΈΡ€Ρ–ΡˆΠ΅Π½Π½Ρ Ρ†Ρ–Ρ”Ρ— ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ. ΠŸΠ΅Ρ€ΡˆΠΈΠΉ полягає Π² Ρ‚ΠΎΠΌΡƒ, Ρ‰ΠΎΠ± структурувати всі Ρ„ΡƒΠ½ΠΊΡ†Ρ–Ρ— Ρ– спробувати компСнсувати обсяг ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ, Ρ‰ΠΎ Π²ΠΈΠ΄Π°ΡŽΡ‚ΡŒΡΡ. Π”Ρ€ΡƒΠ³ΠΈΠΉ спосіб - ΠΏΠΎΠ²Π½Ρ–ΡΡ‚ΡŽ Π²Ρ–Π΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΠΈ Ρƒ Π΄Ρ–ΡŽΡ‡ΠΎΠΌΡƒ ΠΊΠΎΠ΄Ρ– вивСдСння ΠΏΠΎΠ²Ρ–Π΄ΠΎΠΌΠ»Π΅Π½ΡŒ ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ. Π†, Π½Π°Ρ€Π΅ΡˆΡ‚Ρ–, Ρ‚Ρ€Π΅Ρ‚Ρ–ΠΉ спосіб – використовувати ΡΠΏΠ΅Ρ†Ρ–Π°Π»ΡŒΠ½Ρ– засоби PHP для створСння власного ΠΎΠ±Ρ€ΠΎΠ±Π½ΠΈΠΊΠ° ΠΏΠΎΠΌΠΈΠ»ΠΎΠΊ. Π—Π°Π»Π΅ΠΆΠ½ΠΎ Π²Ρ–Π΄ ΠΏΠΎΠ»Ρ–Ρ‚ΠΈΠΊΠΈ Π±Π΅Π·ΠΏΠ΅ΠΊΠΈ, яку Π²ΠΈ використовуєтС, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ застосувати Ρƒ Π²Π°ΡˆΡ–ΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ–ΠΉ ситуації всі Ρ‚Ρ€ΠΈ способи.

Один Ρ–Π· ΠΌΠΎΠΆΠ»ΠΈΠ²ΠΈΡ… способів ΡƒΠ±Π΅Π·ΠΏΠ΅Ρ‡ΠΈΡ‚ΠΈ ваш ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ ΠΉΠΎΠ³ΠΎ ΠΏΡƒΠ±Π»Ρ–ΠΊΠ°Ρ†Ρ–Ρ”ΡŽ Ρƒ ΡΠΏΡ–Π»ΡŒΠ½ΠΈΠΉ доступ – Ρ†Π΅ використання Ρ„ΡƒΠ½ΠΊΡ†Ρ–Ρ— PHP error_reporting()Ρ‰ΠΎ ΠΌΠΎΠΆΠ΅ Π΄ΠΎΠΏΠΎΠΌΠΎΠ³Ρ‚ΠΈ виявити ΠΏΠΎΡ‚Π΅Π½Ρ†Ρ–ΠΉΠ½ΠΎ Π½Π΅Π±Π΅Π·ΠΏΠ΅Ρ‡Π½Ρ– Π·ΠΌΡ–Π½Π½Ρ–. Π’Π΅ΡΡ‚ΡƒΡŽΡ‡ΠΈ ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ випуском Ρ€Π΅Π»Ρ–Π·Ρƒ Π·Π° допомогою значСння **E_ALL**Π’ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ Π·Π½Π°ΠΉΡ‚ΠΈ ділянки ΠΊΠΎΠ΄Ρƒ, Π² яких Π·ΠΌΡ–Π½Π½Ρ– ΠΌΠΎΠΆΡƒΡ‚ΡŒ Π±ΡƒΡ‚ΠΈ Π·Π°ΠΌΡ–Π½Π΅Π½Ρ– Π°Π±ΠΎ ΠΌΠΎΠ΄ΠΈΡ„Ρ–ΠΊΠΎΠ²Π°Π½Ρ–. ΠŸΡ–ΡΠ»Ρ закінчСння тСстування, Π²ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π°Π±ΠΎ ΠΏΠΎΠ²Π½Ρ–ΡΡ‚ΡŽ Π²Ρ–Π΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΠΈ всі повідомлСння ΠΏΡ€ΠΎ ΠΏΠΎΠΌΠΈΠ»ΠΊΠΈ Π²ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ²ΡˆΠΈ error_reporting() Π² 0, Π°Π±ΠΎ Π²ΠΈΠΌΠΊΠ½ΡƒΡ‚ΠΈ Ρ—Ρ… вивСдСння Π·Π° допомогою Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΈ php.ini display_errors, Ρ–Π·ΠΎΠ»ΡŽΠ²Π°Π²ΡˆΠΈ Ρ‚Π°ΠΊΠΈΠΌ Ρ‡ΠΈΠ½ΠΎΠΌ ваш ΠΊΠΎΠ΄ Π²Ρ–Π΄ промацування. Π―ΠΊΡ‰ΠΎ Π²ΠΈ Π²ΠΈΡ€Ρ–ΡˆΠΈΠ»ΠΈ використовувати останній спосіб, Π½Π΅ΠΎΠ±Ρ…Ρ–Π΄Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΆ Π²ΠΊΠ°Π·Π°Ρ‚ΠΈ ΡˆΠ»ΡΡ… Π΄ΠΎ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ»Ρƒ Π·Π° допомогою Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΈ error_log Ρ‚Π° Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ log_errors

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ #3 ΠŸΠΎΡˆΡƒΠΊ ΠΏΠΎΡ‚Π΅Π½Ρ†Ρ–ΠΉΠ½ΠΎ Π½Π΅Π±Π΅Π·ΠΏΠ΅Ρ‡Π½ΠΈΡ… Π·ΠΌΡ–Π½Π½ΠΈΡ… Π·Π° допомогою E_ALL

Loading...