Sql ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΡΡΠΎ ΡΡΠΎ: SQL injection Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . Π§Π°ΡΡΡ 1 / Π₯Π°Π±Ρ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ β ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π²Π·Π»ΠΎΠΌΠ° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΠ°ΠΉΡΠΎΠ²
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ β ΡΡΠΎΒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ·Β ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π²Π·Π»ΠΎΠΌΠ° ΡΠ°ΠΉΡΠΎΠ² ΠΈΒ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΡΒ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΎΡ ΡΠΏΠΎΡΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π°Β Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠΈ Π²Β Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡ ΠΊΒ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ SQL-ΠΊΠΎΠ΄Π°, ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ. SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ·Β ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠ΅ΠΉ Π°ΡΠ°ΠΊ ΡΠΈΠΏΠ° Β«ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΊΠΎΠ΄Π°Β».
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, Π²Β Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡΒ ΡΠΈΠΏΠ° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π°ΡΠ°ΠΊΡΡΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΊΒ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . Π’ΠΎΒ Π΅ΡΡΡ Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π»ΡΠ±ΡΡ ΡΠ°Π±Π»ΠΈΡ, ΡΠ΄Π°Π»ΠΈΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ»ΠΈΒ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅, Π°Β ΡΠ°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΡΒ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈΒ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π°Β Π°ΡΠ°ΠΊΡΠ΅ΠΌΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅.
ΠΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ:
- ΠΡΠ°ΠΆΠ° Π΄Π°Π½Π½ΡΡ
- ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ
- Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
- ΠΠΎΠ»Π½ΡΠΉ Π²Π·Π»ΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΡ
ΠΡΠ°ΠΊΠΈ ΡΠΈΠΏΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌΠΈ ΠΈΠ·-Π·Π°Β Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ . Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΠΉΡΠΎΠ² ΠΈΒ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΡΒ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ ΠΎΒ ΡΠ°ΠΊΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ ΠΈΒ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΌΠ΅ΡΡ ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π‘Β ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ°ΠΉΡΠ° ΠΈΠ»ΠΈΒ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ (ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Β ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π½Π΅Β Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π²Β ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΠΎ Π·Π°ΡΠ΅ΠΌ Π±ΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Ρ) ΠΈΒ ΠΏΡΠΎΠ΄ΡΠΌΠ°Π½Π½Π°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»ΡΒ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΊΒ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΠ»ΡΒ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ²Π»ΡΡΡΡΡ:
- ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π²Β ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ (ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±)
- ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊΒ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΏΡ (ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Β Π±ΡΠ»Π΅Π²ΠΎΠΌ ΡΠΈΠΏΠ΅ ΠΈΒ Π½Π°Β ΡΠΈΡΠ»Π°Ρ )
- Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈΒ ΠΎΡΠΈΡΡΠΊΠ° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠΌΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ (ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π°Β ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΒ ΡΠΈΠΏΡ, Π½ΠΎΒ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»ΡΒ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²)
- Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠΎΒ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠ°ΠΌ (ΡΠ°ΡΡΠΎ ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΈΒ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½)
- ΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² (Π΄Π»ΠΈΠ½Π° ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²Π΅Π»ΠΈΠΊΠ°)
- ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² (Π·Π°ΠΏΡΠΎΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΎΡΒ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²Β ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Β ΡΠΊΡΠ°Π½ΠΈΡΡΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ)
- ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈΒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ORM (Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»ΡΒ ΡΠ°Π±ΠΎΡΡ ΡΒ Π‘Π£ΠΠ ΠΈΒ ORM ΠΎΠ±ΡΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΡΒ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅)Β
- ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΠΏΠΎΒ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²Π°ΠΌ ΠΈΒ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±Π°Π½ Π°ΡΠ°ΠΊΡΡΡΠ΅Π³ΠΎ (ΠΌΠ΅ΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΡΡΠ»ΠΎΠΆΠ½ΠΈΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π°Β ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ)
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ SQL? — CodeRoad
ΠΠΎΠΆΠ΅Ρ ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ SQL ΠΈΠ½ΡΠ΅ΠΊΡΠΎΠ½?
SQL ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΠΈΡΡΠ΅ΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΡΡΡΠΎΠΊΡ Π·Π°ΠΏΡΠΎΡΠ° SQL, ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°Π»ΠΈΡΡ.
ΠΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΡΠ°ΡΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ. ΠΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½Π°Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ SQL Ρ Π±ΠΎΠ»ΡΡΠ΅ΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ΅, ΡΠ΅ΠΌ ΠΊ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.
ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠΎΠ½ΡΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ°ΠΌΠΎ Π² ΠΊΠΎΠ΄Π΅.
ΠΠ°ΠΊ ΡΡΠΎ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ?
ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π·Π½Π°ΡΡ, Π±ΡΠ΄ΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π² ΡΡΡΠΎΠΊΡ SQL. ΠΡΠ΄ΡΡΠΈ ΠΎΡΠ΅Π½Ρ ΡΠΌΠ½ΡΠΌΠΈ, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠΈΡΡΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, ΡΡΠΎ ΠΈΠΌ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΎ Π΄Π΅Π»Π°ΡΡ.
ΠΡΠΈΠΌΠ΅Ρ Π² PHP:
$password = $_POST['password'];
$id = $_POST['id'];
$sql = "UPDATE Accounts SET PASSWORD = '$password' WHERE account_id = $id";
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ° POST Π² » password=xyzzy
» ΠΈ «id=account_id
«, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ SQL:
UPDATE Accounts SET PASSWORD = 'xyzzy' WHERE account_id = account_id
Π₯ΠΎΡΡ Ρ ΠΎΠΆΠΈΠ΄Π°Π», ΡΡΠΎ $id
Π±ΡΠ΄Π΅Ρ ΡΠ΅Π»ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π²ΡΠ±ΡΠ°Π» ΡΡΡΠΎΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΡΠΎΠ»Π±ΡΠ°. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²Π΅ΡΠ½ΠΎ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠΉΡΠΈ Π² Π»ΡΠ±ΡΡ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΠ΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΡΠΊΠ°, Π² ΠΊΠΎΡΠΎΡΡΡ Π²Π²ΠΎΠ΄ΠΈΡΡΡ SQL?
ΠΡΠΎ Π½Π΅ SQL, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π²ΠΎΠ΄ΠΈΡΡΡ, ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΠΈΡΡΠ΅ΡΡΡ («injected») Π² ΡΡΡΠΎΠΊΡ SQL, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π΄ΡΡΠ³ΠΎΠΌΡ ΡΠΈΠΏΡ Π·Π°ΠΏΡΠΎΡΠ°, ΡΠ΅ΠΌ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π». Π― Π΄ΠΎΠ²Π΅ΡΡΠ» Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ, Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΡ Π΅Π³ΠΎ, ΠΈ ΡΠ»Π΅ΠΏΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ» ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ SQL. ΠΠΎΡ ΡΡΡ-ΡΠΎ ΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎΡΡΠΈ.
SQL ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ-ΡΡΠΎ ΠΎΡΠΈΠ±ΠΊΠ° Π² ΠΊΠΎΠ΄Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ΅.
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°. Π‘ΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ SQL Π² PHP? Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°.
Π‘ΡΡΠ°Π½ΠΈΡΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π° β Information Security Squad
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Kubernetes, ΡΠΎ ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΠΎΡΡΠ° Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π² Π²ΠΈΠ΄Π΅ ΡΠΎΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π΅ Π΄Π°Π²Π°ΡΡ Π²Π°ΠΌ ΡΠΏΠ°ΡΡ ΠΏΠΎ Π½ΠΎΡΠ°ΠΌ. ΠΠΎΠ·Π²ΠΎΠ»ΡΡΠ΅ ΠΌΠ½Π΅ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΠΏΠΎΡΠ΅ΠΌΡ. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ βvolumeβ (ΡΠΎΠΌ)? ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΠ΅ΠΌΠ΅ΡΠ½ΡΠΌΠΈ ΠΈ Π±Π΅Π· ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΈΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΈΠΌ Π΄Π°ΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ [β¦]
ΠΠΎΠΌΠ°Π½Π΄Π° passwd ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΠ°ΡΠΎΠ»Ρ. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ passwd ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ: $ passwd [username] ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root ΠΌΠΎΠΆΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π° Π»ΡΠ±ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, Π½Π΅ Π·Π½Π°Ρ Π΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠ°ΡΠΎΠ»Ρ. ΠΡ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΡΠΎΡΡΠΎ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² CLI. Π ΠΎΡΠ²Π΅Ρ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ: $ passwd Changing password [β¦]
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡ Π² Π½ΠΎΠ²ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅, Π²Π°Ρ ΡΡΠ°ΡΡΠΉ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π²ΡΡΠ΅Π» ΠΈΠ· ΡΡΡΠΎΡ, Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅, Π½ΠΎ Π²Π°Ρ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅Π½Π° ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΎΠΏΡΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ² (Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΎΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ), Π΅ΡΡΡ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ½ΠΎ Π²Π°ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΈ Π½Π΅ ΡΡΠ°ΡΠΈΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ Π΄Π΅Π½ΡΠ³ΠΈ, ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ Π±ΡΡΡ [β¦]
Π‘Π»Π΅Π΄ΠΈΡΡ Π·Π° ΡΠ²ΠΎΠΈΠΌΠΈ ΠΏΠ°ΡΠΎΠ»ΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ. Π§Π°ΡΡΠΎ Π²Ρ ΡΠΊΠ»ΠΎΠ½Π½Ρ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΈΡ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΡΠ»Π΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π±Π΅Π·Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΈΡ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π½Π° Π±ΡΠΌΠ°ΠΆΠΊ ΠΈΠ»ΠΈ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡΠ΅, ΡΡΠΎ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΡΠΈΡΠΊΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠΉ. Π’ΡΠ΅ΡΡΠΈ Π»ΠΈΡΠ° ΠΌΠΎΠ³ΡΡ Π·Π°Π²Π»Π°Π΄Π΅ΡΡ ΠΈΠΌΠΈ, ΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ Π΄Π°Π»ΡΡΠ΅, Π²Ρ Π΄ΠΎΠ³Π°Π΄ΡΠ²Π°Π΅ΡΠ΅ΡΡ Π½Π΅ Ρ ΡΠΆΠ΅ ΠΌΠ΅Π½Ρ. ΠΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ [β¦]
ΠΠΎΡΠΎΠ²Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠ² Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ βHead of sale teamβ. πΠΠΈΠ΅Π² ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΠ’-ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡ Π² ΡΠ²ΡΠ·ΠΈ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π²Π°ΠΊΠ°Π½ΡΠΈΡ Β«ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈΒ»! βΌοΈΠΠ°ΠΆΠ½ΠΎ: β’ Β ΠΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Π² ΠΏΡΠΎΠ΄Π°ΠΆΠ°Ρ ΠT ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ 2+ Π³ΠΎΠ΄Π° β’ Β Π£ΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 2 Π³ΠΎΠ΄Π° β’ Β ΠΠ½Π°Π½ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΏΡΠΎΠ΄Π°ΠΆ ΠΠ’ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ° ΡΡΠ½ΠΊΠ° [β¦]
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° Π²Π»ΠΈΡΠ΅Ρ Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ? ITIGIC
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ?
ΠΠΎΠ³Π΄Π° ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎΠ± Π°ΡΠ°ΠΊΠ°Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, ΠΌΡ ΡΡΡΠ»Π°Π΅ΠΌΡΡ Π½Π° ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π² Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ . Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΌΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π²Π½Π΅Π΄ΡΠΈΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ Π°ΡΠ°ΠΊ ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ΄ ΡΠ³ΡΠΎΠ·Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΡΠ°ΠΊΠ° SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π° ββΠ½Π° ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΡΡΡΠΈΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ»ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π₯Π°ΠΊΠ΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ, ΠΊΡΠ°ΡΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΡΠΈΡ ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°Ρ ΠΈΠ»ΠΈ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ, SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ , ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Π»ΡΠ±ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ ΡΡΠ΅ΡΡΠΈΠΌΠΈ ΡΡΠΎΡΠΎΠ½Π°ΠΌΠΈ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ Π°ΡΠ°ΠΊ. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ΅Π³Π΄Π° ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠΈ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΈΠ±Π΅ΡΠΏΡΠ΅ΡΡΡΠΏΠ½ΠΈΠΊ ΠΌΠΎΠ³ Π²Π²ΠΎΠ΄ΠΈΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ SQL Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΡΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±ΠΌΠ°Π½ΡΡΡ ΡΠ°ΠΉΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΅Π³ΠΎ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ Π°ΡΠ°ΠΊΠ° ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° Π½Π΅Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΡ, ΠΊΡΠ°Π΄Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΡΠ΄Π°Π»ΡΡ ΠΈΡ .
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΎΠ½ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΠΊ Π°ΡΠ°ΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΏΡΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ Π±Π΅Π· ΡΠ°Π·Π»ΠΈΡΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Π²Π°Π·ΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄ SQL Π²Π²ΠΎΠ΄ΠΈΡΡΡ Π² Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ. ΠΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΏΠΈΠΎΠ½ΡΠΊΠΈΠΉ Ρ Π°ΡΠ°ΠΊΡΠ΅Ρ.
ΠΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
ΠΡ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π°ΡΠ°ΠΊΠ° SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ Π΄Π°ΡΡ ΡΠ΅ΡΠΈΡ ΡΠΎΠ²Π΅ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΈΡ . ΠΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ°ΠΊΡΠΎΡΠΎΠΌ, ΠΈ ΠΌΡ Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΡΠΏΠΎΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΡ Π½Π°ΡΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΡΠΈΡΡΠ΅ΠΌ. ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ.
ΠΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ SQL ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠ°Ρ . ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ½ Π½Π΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΌΠ΅ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΡΠΈ ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΠ°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π»ΠΈΡΠ°, ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠ΅ Π·Π° Π²Π΅Π±-ΡΠ°ΠΉΡΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠΌΠ΅Π»ΠΈ ΡΠ²ΠΎΠΈ ΡΡΠ»ΡΠ³ΠΈ. ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ , ΠΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π΄ΠΎΡΡΡΠΏΠ° Ρ Π°ΠΊΠ΅ΡΠΎΠ² ΠΊ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ.
Π’Π°ΠΊΠΆΠ΅ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ , ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π·Π°ΡΠΈΡΠΈΡΡ Π½Π°Ρ ΠΎΡ ΡΠ°ΠΌΡΡ ΡΠ°Π·Π½ΡΡ Π°ΡΠ°ΠΊ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ. ΠΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π° Π½Π°Ρ ΡΠ°ΠΉΡ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠΎ ΡΡΡΠΈ, ΠΎΠ½ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π²Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΊΡΠ°ΠΆΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· Π½ΠΈΡ . Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ°ΡΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΌΡ ΠΌΠ°Π»ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ Π·Π°ΡΠΈΡΠΈΡΡ ΡΠ΅Π±Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ Π·Π°Π²ΠΈΡΠΈΡ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΡΠΈΡΠ°ΡΡ Π»ΠΈΡΠ°, ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΡΠ΅ Π·Π° Π½ΠΈΡ .
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΡ — ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΡΠ΅ ΡΠ°ΠΊΡΠΎΡΡ, ΠΈ Π²Ρ Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ Π½ΠΈΡ . ΠΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°Π»ΠΈΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΡΠ΅ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΈΠΏΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL Injection Π·Π°ΡΠΈΡΠ° [ΠΠΉΠ’ΠΈ Π±ΡΠ±Π΅Π½]
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SQL (SQL Injection). ΠΡΠΈ Π°ΡΠ°ΠΊΠΈ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Ρ Π½Π° Web- ΡΠ΅ΡΠ²Π΅ΡΡ, ΡΠΎΠ·Π΄Π°ΡΡΠΈΠ΅ SQL Π·Π°ΠΏΡΠΎΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌ Π‘Π£ΠΠ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π΄Π°Π½Π½ΡΡ , Π²Π²ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ.
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ·ΡΠΊ SQL Π² Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ , ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ISO ΠΈ ANSI. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π‘Π£ΠΠ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π΄ΠΈΠ°Π»Π΅ΠΊΡΠ° SQL, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ (PL/pgSQL Π² PostgreSQL, T-SQL Π² Microsoft SQL Server, PL SQL Π² Oracle ΠΈ Ρ.Π΄.). ΠΠ΅ΡΠΎΠ΄Ρ SQL Injection Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΡΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ Π‘Π£ΠΠ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, SQL- ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π½Π° Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Oracle ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²ΠΎ union, ΠΈ ΠΎΠ½Π° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΄Π½Π°, ΡΠ΅ΠΌ Π½Π° MS SQL- ΡΠ΅ΡΠ²Π΅ΡΠ΅, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, ΠΎΡΠ΄Π΅Π»ΡΡ ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΡΠΎΡΠΊΠΈ Ρ Π·Π°ΠΏΡΡΠΎΠΉ. Π Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ MS SQL- ΡΠ΅ΡΠ²Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Ρ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ Local System ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Β«xp_shellΒ», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ½ΠΎΠ³ΠΈΠ΅ Web- ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ Web- ΡΡΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½Π°Ρ ΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ Π²Π΅ΡΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡΡ, Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡ ΠΊ SQL- ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΏΡΠΎΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΡΡΠΎΠ²Π½Π΅ΠΌ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ, Ρ ΠΊΠ°ΠΊΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ (ΡΠ΅ΡΠ²Π΅Ρ Π‘Π£ΠΠ, Web-ΡΠ΅ΡΠ²Π΅Ρ ΠΈ Ρ.Π΄). Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π‘Π£ΠΠ ΠΈ Π΄Π°ΠΆΠ΅ Π΅Π³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ SQL Injection ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠ΄ΠΈΡ Π½Π° LDAP Injection.
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² Web- ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Web- ΡΠΎΡΠΌΡ, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ:
SQLQuery = "SELECT Username FROM Users WHERE Username = '" & strUsername & "' AND Password = '" & strPassword & "'" strAuthCheck = GetQueryResult(SQLQuery)
Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ strUsername ΠΈ strPassword Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ SQL- Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²:
Login: ' OR ''=' Password: ' OR ''='
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ SQL-Π·Π°ΠΏΡΠΎΡ:
SELECT Username FROM Users WHERE Username = '' OR ''='' AND Password = '' OR ''=''
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Ρ Π·Π°ΠΏΠΈΡΡΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Users, Π΄Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ ΠΏΡΡΡΡΡ ΡΡΡΠΎΠΊΡ Ρ ΠΏΡΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ. ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π΅Π½ True, ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π²ΠΎΠΉΠ΄Π΅Ρ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΠ±ΡΡΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΡΡΡ Π΄Π²Π° ΠΌΠ΅ΡΠΎΠ΄Π° ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SQL: ΠΎΠ±ΡΡΠ½Π°Ρ Π°ΡΠ°ΠΊΠ°, ΠΈ Π°ΡΠ°ΠΊΠ° Π²ΡΠ»Π΅ΠΏΡΡ (Blind SQL Injection). Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ΄Π±ΠΈΡΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ , Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΡΡ Web- ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π‘Π΅ΡΠ²Π΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC SQL Server Driver][SQL Server]All queries in an SQL statement containing a UNION operator must have an equal number of expressions in their target lists.
ΠΠ· ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ, ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ union Π±ΡΠ» ΠΏΠ΅ΡΠ΅Π΄Π°Π½ ΡΠ΅ΡΠ²Π΅ΡΡ, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π² ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΈ select ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ SQL ΠΊΠΎΠ΄Π° Π²ΡΠ»Π΅ΠΏΡΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ
ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Ρ, ΠΈ ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌ Π²Π²ΠΎΠ΄Π΅. ΠΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ SQL Injection ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½ΠΎ ΠΈ Π² ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΎ.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½Π°Π»ΠΈΡΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ β Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΡ
ΠΈΡΡΠΈΠ½Π½ΠΎΠ΅ ΠΈ Π»ΠΎΠΆΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ: http://example/article.asp?ID=2+and+1=1 Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡ ΡΡ ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ, ΡΡΠΎ ΠΈ Π·Π°ΠΏΡΠΎΡ: http://example/article.asp?ID=2 ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ‘and 1=1’ Π²ΡΠ΅Π³Π΄Π° ΠΈΡΡΠΈΠ½Π½ΠΎ.
ΠΡΠ»ΠΈ Π² Π·Π°ΠΏΡΠΎΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«Π»ΠΎΠΆΡΒ»: http://example/article.asp?ID=2+and+1=0 ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ
ΠΈΠ»ΠΈ ΡΡΡΠ°Π½ΠΈΡΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π°. Π ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½, ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΡ Π½ΠΈΡΠ΅ΠΌ Π½Π΅ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°.
ΠΡΠ°ΡΠΊΠΎ ΠΎ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΈ Π΅Π΅ ΡΠΈΠΏΠ°ΠΌ
ΠΠ°Π½Π½ΡΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Π½Π½ΡΡ ΡΠ°ΡΡΠ΅ΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ. ΠΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π² ΡΡΠΎΠΉ ΠΎΡΡΠ°ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ . Π―Π·ΡΠΊ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΈΠ»ΠΈ SQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ, ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ?
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π°ΡΠ°ΠΊΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΏΡΡΠ΅ΠΌ Π²ΡΡΠ°Π²ΠΊΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SQL Π² ΠΏΠΎΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Ρ Π°ΠΊΠ΅ΡΠ°ΠΌ ΡΠ½ΠΈΡΡΠΎΠΆΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠ°ΠΊ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΡΡ ΡΠ°ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ.
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΡΡ Ρ Π°ΠΊΠ΅ΡΡΠΊΠΈΡ Π°ΡΠ°ΠΊ, ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΎΠ½Π½ΡΠ΅ Π°ΡΠ°ΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ΅Ρ Π½ΠΈΠΊΠ° Π²Π΅Π±-Ρ Π°ΠΊΠ΅ΡΡΡΠ²Π°. ΠΡΠ° Π°ΡΠ°ΠΊΠ° Π²ΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π²Π²ΠΎΠ΄Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ΅.
Π₯Π°ΠΊΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ SQL. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈ ΡΠ΄Π°Π»ΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· MySQL, SQL Server, Oracle, SQL Server ΠΈ Ρ.Π΄. ΠΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ SQL. ΠΡΠΈ Π°ΡΠ°ΠΊΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π½Π°Π½Π΅ΡΡΠΈ Π²ΡΠ΅Π΄ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΠΏΠ»ΠΎΡ ΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π°.
ΠΡΠ»ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡ ΠΈΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ»ΠΎΡ ΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Ρ, ΡΡΠΈ Π°ΡΠ°ΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°Π½Π΅ΡΡΠΈ Π²ΡΠ΅Π΄ Π²ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.Β
Π’ΠΈΠΏΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΡΠΈΠ±ΠΎΠΊ
Π ΡΡΠΎΠΌ ΡΠΈΠΏΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Ρ Π°ΠΊΠ΅Ρ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΎΠ±ΡΠ°Π·Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½/ΠΎΠ½Π° ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π΅ΠΌΡ, ΡΡΠΎΠ±Ρ Π²Π·Π»ΠΎΠΌΠ°ΡΡ/ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈΡΡ Π±Π°Π·Ρ..
ΠΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ
Π ΡΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π΅ Ρ Π°ΠΊΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ Π²Π·Π»Π°ΠΌΡΠ²Π°Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠ΅Π»ΠΈ. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π²Π½ΡΡΡΠΈΠΏΠΎΠ»ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ SQL.
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΡ Π²Π½ΡΡΡΠΈΠΏΠΎΠ»ΠΎΡΠ½ΠΎΠ³ΠΎ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL. Π ΡΡΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ HTTP-ΠΎΡΠ²Π΅ΡΠ°.
ΠΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½Π°Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ
ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ. ΠΠ΄Π΅ΡΡ Ρ Π°ΠΊΠ΅ΡΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΏΠΎΠ»ΠΎΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΡΡΠΊΡΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π½Π°Π±Π»ΡΠ΄Π°Ρ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΡΠΌΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠ° Π°ΡΠ°ΠΊΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ»Π΅ΠΏΠ°Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ SQL
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π°ΠΊΠ΅ΡΠ°ΠΌΠΈ Π΄Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΠ΄Π΅ΡΡ Ρ Π°ΠΊΠ΅Ρ Π΄Π°Π΅Ρ Π²ΡΠ΅ΠΌΡ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΡΡ Π°ΡΠ°ΠΊΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΈΡΠΎΠ΄Π΅.
ΠΠ½Π΅ΠΏΠΎΠ»ΠΎΡΠ½ΠΎΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ SQL
ΠΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ Π°ΡΠ°ΠΊΠ°. ΠΠ±ΡΡΠ½ΠΎ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΠΊΠΎΠ³Π΄Π° Ρ Π°ΠΊΠ΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ Π΄Π»Ρ Π°ΡΠ°ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. ΠΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π΄Π΅Π»Π°ΡΡ DNS ΠΈΠ»ΠΈ HTTP-Π·Π°ΠΏΡΠΎΡΡ Π΄Π»Ρ Π΄ΠΎΡΡΠ°Π²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ Ρ Π°ΠΊΠ΅ΡΡ.
ΠΡΠΎΡΡΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡΠΌ ΡΠ°Π³ΠΎΠΌ. ΠΡΠ»ΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ ΠΏΠΎΡΠ΅ΡΠΈ Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ½ΠΈΠΆΠ΅Π½Π°.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ
ΠΠ½ΡΠ΅ΠΊΡΠΈΡ SQL — ΡΡΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π²Π΅Π±-Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π²ΠΌΠ΅ΡΠΈΠ²Π°ΡΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΡ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠΌ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΉΡΠ°. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π²ΠΈΠ΄Π½Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ°ΠΉΡΠ°. ΠΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²Π΅Π±-ΡΠ΅ΡΡΡΡΠ°, ΠΈΠ»ΠΈ Π»ΡΠ±ΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΉΡΠ°. ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ±ΠΎΡ ΡΠΊΡΠΈΠΏΡΠ° ΡΠ°ΠΉΡΠ° ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΡΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΡΠ°.
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΠ»ΠΈΡΡ Π°ΡΠ°ΠΊΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ΄ ΡΠ³ΡΠΎΠ·Ρ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π°ΡΠ°ΠΊΡ ΡΠΈΠΏΠ° Β«ΠΎΡΠΊΠ°Π· Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈΒ» (DoS).
Π£ΡΠΏΠ΅ΡΠ½Π°Ρ Π°ΡΠ°ΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ Π΄ΠΎΡΡΡΠΏΡ ΠΊ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ: ΠΏΠ°ΡΠΎΠ»ΠΈ, Π΄Π°Π½Π½ΡΠ΅ Π±Π°Π½ΠΊΠΎΠ²ΡΠΊΠΈΡ ΠΊΠ°ΡΡ ΠΈΠ»ΠΈ Π»ΠΈΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π²Π΅Π±-ΡΠ΅ΡΡΡΡΠ°. ΠΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΡΠ΅ΡΠ΅ΠΊ Π΄Π°Π½Π½ΡΡ ΡΡΠ°Π»ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π½Π°Π½Π΅ΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΡΠ±Π° ΠΈ ΠΏΠΎΠ΄ΡΡΠ²Ρ ΡΠ΅ΠΏΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ Π±ΡΠΊΠ΄ΠΎΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΠ°Π²Π°ΡΡΡΡ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π°ΡΠ°ΠΊ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ Π² ΡΠ°Π·Π½ΡΡ ΡΠ»ΡΡΠ°ΡΡ .
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL:
β’ ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΊΡΡΡΡΡ Π΄Π°Π½Π½ΡΡ , Π³Π΄Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ SQL Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ ;
β’ ΠΠΎΠ΄ΡΡΠ² Π»ΠΎΠ³ΠΈΠΊΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ° Π²Π΅Π±-ΡΠ°ΠΉΡΠ°, Π³Π΄Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π° ΡΠ°ΠΉΡΠ°;
β’ UNION-Π°ΡΠ°ΠΊΠΈ, Π³Π΄Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ;
β’ ΠΠ·ΡΡΠ΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π³Π΄Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π΅ΡΡΠΈΠΈ ΠΈ ΡΡΡΡΠΊΡΡΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ;
β’ Π‘Π»Π΅ΠΏΠΎΠ΅ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ SQL — ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΎΡΠ²Π΅Ρ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ ΡΠΊΡΠΈΠΏΡΠ° ΡΠ°ΠΉΡΠ°.
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ»ΡΡΠ°Π΅Π² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² (ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΠΈ ΡΡΡΠΎΠΊ Π² Π·Π°ΠΏΡΠΎΡΠ΅.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Π»ΡΠ±ΡΡ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ Π²Π²ΠΎΠ΄ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΡΠ΅ Π² Π·Π°ΠΏΡΠΎΡΠ΅, Π²ΠΊΠ»ΡΡΠ°Ρ WHERE-ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ΅ INSERT ΠΈΠ»ΠΈ UPDATE. ΠΡ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π² Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΡΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π° ΡΠ°Π±Π»ΠΈΡ ΠΈ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΈΠ»ΠΈ ORDER BY. Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΡΠΈ ΡΠ°ΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠ°, Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½Π½ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π±Π΅Π»ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΡΡΠ³ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
Π§ΡΠΎΠ±Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ Π±ΡΠ» ΡΡΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL, ΡΡΡΠΎΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π·Π°ΠΏΡΠΎΡΠ΅, Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΆΠ΅ΡΡΠΊΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°. ΠΠ΅ ΠΏΠΎΠ΄Π΄Π°Π²Π°ΠΉΡΠ΅ΡΡ ΠΈΡΠΊΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ°ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π΄Π°Π½Π½ΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ, ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡ ΡΡΡΠΎΠΊ Π² Π·Π°ΠΏΡΠΎΡΠ΅ Π΄Π»Ρ ΡΠ»ΡΡΠ°Π΅Π², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΈΡΠ°ΡΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌΠΈ. Π‘Π»ΠΈΡΠΊΠΎΠΌ Π»Π΅Π³ΠΊΠΎ ΠΎΡΠΈΠ±ΠΈΡΡΡΡ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠ΄, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠ², ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΈΡΠΏΠΎΡΡΠ΅Π½Ρ.
ΠΠ‘Π Π‘Π’ΠΠ’Π¬Π
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ (SQLi) ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ (SQLi) — ΡΡΠΎ ΡΠΈΠΏ Π°ΡΠ°ΠΊΠΈ ΠΏΡΡΠ΅ΠΌ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ SQL. ΠΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π·Π° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ SQL Injection, ΡΡΠΎΠ±Ρ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΌΠ΅ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠ±Ρ ΠΎΠ΄ΠΈΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π²ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ SQL. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL Injection Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΡΡΠΎΠ½ΡΡΡ Π»ΡΠ±ΠΎΠΉ Π²Π΅Π±-ΡΠ°ΠΉΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ SQL, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ MySQL, Oracle, SQL Server ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅. ΠΡΠ΅ΡΡΡΠΏΠ½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π²Π°ΡΠΈΠΌ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ: ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°Ρ , Π»ΠΈΡΠ½ΡΠΌ Π΄Π°Π½Π½ΡΠΌ, ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΠΉΠ½Π΅, ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ ΠΈ Ρ. Π. ΠΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ — ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡΠ°ΡΠ΅ΠΉΡΠΈΡ , Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΈ ΡΠ°ΠΌΡΡ ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ OWASP (Open Web Application Security Project) ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ Π² ΡΠ²ΠΎΠ΅ΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ OWASP Top 10 2017 ΠΊΠ°ΠΊ ΡΠ³ΡΠΎΠ·Ρ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ°ΠΊ ΠΈ ΠΏΠΎΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°ΡΠ°ΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
Π§ΡΠΎΠ±Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ Π°ΡΠ°ΠΊΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ½Π°ΡΠ°Π»Π° Π½Π°ΠΉΡΠΈ ΡΡΠ·Π²ΠΈΠΌΡΠ΅ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π² Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΠ΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ° ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠΌΠ΅ΡΡΠ΅Π΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² SQL-Π·Π°ΠΏΡΠΎΡΠ΅. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ. Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ Π°ΡΠ°ΠΊΠΈ. ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΎΡΠΏΡΠ°Π²ΠΈΡ ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SQL.
SQL — ΡΡΠΎ ΡΠ·ΡΠΊ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ, Ρ ΡΠ°Π½ΡΡΠΈΠΌΠΈΡΡ Π² ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ . ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ°, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΠ½ΠΎΠ³ΠΈΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΡ Ρ ΡΠ°Π½ΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ SQL. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SQL Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΏΠ΅ΡΠ½Π°Ρ Π°ΡΠ°ΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ.
- ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ΄Π°Π²Π°ΡΡ ΡΠ΅Π±Ρ Π·Π° ΡΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.ΠΡΠ΄Π°ΡΡΠΈΠΉΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
- SQL ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ Π΄Π°Π½Π½ΡΠΌ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
- SQL ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π½ΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π±Π°Π»Π°Π½ΡΠΎΠ², Π°Π½Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° Π΄Π΅Π½Π΅Π³ Π½Π° ΡΠ²ΠΎΠΉ ΡΡΠ΅Ρ.
- ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π΄Π°ΠΆΠ΅ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ.ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π°. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π½Π΅ ΠΎΡ Π²Π°ΡΡΠ²Π°ΡΡ ΡΠ°ΠΌΡΠ΅ ΡΠ²Π΅ΠΆΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅.
- ΠΠ° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΠΈΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Π΅ΠΊΡΠΎΡΠ°, Π° Π·Π°ΡΠ΅ΠΌ Π°ΡΠ°ΠΊΠΎΠ²Π°ΡΡ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ ΡΠ΅ΡΡ Π·Π° Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠΎΠΌ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² Π°ΡΠ°ΠΊ SQL Injection: Π²Π½ΡΡΡΠΈΠΏΠΎΠ»ΠΎΡΠ½ΡΠΉ SQLi (Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ UNION), ΡΠ»Π΅ΠΏΠΎΠΉ SQLi ΠΈ Π²Π½Π΅ΠΏΠΎΠ»ΠΎΡΠ½ΡΠΉ SQLi.ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ Π½ΠΈΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠ°ΡΡΡΡ : Π’ΠΈΠΏΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ (SQLi), Π‘Π»Π΅ΠΏΡΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ: ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅.
Π§ΡΠΎΠ±Ρ ΡΠ°Π³ Π·Π° ΡΠ°Π³ΠΎΠΌ ΠΏΡΠΎΡΠ»Π΅Π΄ΠΈΡΡ, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°ΡΠ°ΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ, ΡΠΌ .: ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ: ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
ΠΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ. ΠΠ½ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ SQL Injection, ΡΡΠΎΠ±Ρ ΠΎΠ±ΠΎΠΉΡΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠΉΡΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ Π½Π° Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ΅. ΠΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ: ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ
.
# ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ POST
uname = request.POST ['ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ']
passwd = request.POST ['ΠΏΠ°ΡΠΎΠ»Ρ']
# SQL-Π·Π°ΠΏΡΠΎΡ ΡΡΠ·Π²ΠΈΠΌ Π΄Π»Ρ SQLi
sql = Β«ΠΠ«ΠΠ ΠΠ’Π¬ ΠΠ ΠΠ’ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΠΠ username =β Β»+ uname +Β« βAND password =β Β»+ passwd +Β« βΒ»
# ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ SQL
Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
.Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ (sql)
ΠΡΠΈ ΠΏΠΎΠ»Ρ Π²Π²ΠΎΠ΄Π° ΡΡΠ·Π²ΠΈΠΌΡ Π΄Π»Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SQL Π²ΠΎ Π²Ρ
ΠΎΠ΄Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ SQL, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΠΊ Ρ ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΎΠΉ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π² ΠΏΠΎΠ»Π΅ passwd
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
.
ΠΏΠ°ΡΠΎΠ»Ρ 'ΠΠΠ 1 = 1
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ SQL-Π·Π°ΠΏΡΠΎΡ:
ΠΠ«ΠΠΠ ΠΠ’Π ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΈΠ· ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΠΠ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = 'ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ' Π ΠΏΠ°ΡΠΎΠ»Ρ = 'ΠΏΠ°ΡΠΎΠ»Ρ' ΠΠΠ ββ1 = 1 '
ΠΠ·-Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° OR 1 = 1
, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠΉ id
ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ .ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
id
Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, Π½ΠΎ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠ°Π²Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ°ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° SQL Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠ° SQL:
- MySQL, MSSQL, Oracle, PostgreSQL, SQLite
'ΠΠΠ' 1 '=' 1 'β
'ΠΠΠ' 1 '=' 1 ' / *
- MySQL
'ΠΠΠ' 1 '=' 1 ' #
- ΠΠΎΡΡΡΠΏ (Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½ΡΠ»Π΅Π²ΡΡ
ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ²)
'ΠΠΠ' 1 '=' 1 '% 00
'ΠΠΠ' 1 '=' 1 '% 16
ΠΡΠΈΠΌΠ΅Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ
ΠΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ UNION.ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π΄Π²ΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SELECT Π² ΠΎΠ΄ΠΈΠ½ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. Π’Π΅Ρ Π½ΠΈΠΊΠ° Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ union -based SQL Injection.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΎΠΉ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ. ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ testphp.vulnweb.com , ΠΏΡΠ΅Π΄Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΡΡΠ·Π²ΠΈΠΌΡΠΉ Π²Π΅Π±-ΡΠ°ΠΉΡ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΉ Π½Π° Acunetix.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ HTTP-Π·Π°ΠΏΡΠΎΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ:
ΠΠΠΠ£Π§ΠΠ’Π¬ http://testphp.vulnweb.com/artists.php?artist= 1 HTTP / 1.1
Π₯ΠΎΡΡ: testphp.vulnweb.com
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ Artist
ΡΡΠ·Π²ΠΈΠΌ Π΄Π»Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½Π΅ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ Π·Π°ΠΏΠΈΡΠΈ. ΠΠ½ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΡΠΎΠΊΠ΅ Π·Π°ΠΏΡΠΎΡΠ° URL ΡΠ°Π²Π½ΡΠΌ -1
. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½Π΅Ρ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ - Ρ
ΠΎΡΠΎΡΠ΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
ΡΠ΅Π΄ΠΊΠΎ Π±ΡΠ²Π°Π΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ.
Π SQL Injection ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ UNION
ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ SQL-Π·Π°ΠΏΡΠΎΡΠ° ΠΊ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌΡ Π·Π°ΠΏΡΠΎΡΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠΌΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ² ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ
ΡΠ°Π±Π»ΠΈΡ.
ΠΠΠΠ£Π§ΠΠ’Π¬ http://testphp.vulnweb.com/artists.php?artist= -1 UNION SELECT 1, 2, 3 HTTP / 1.1
Π₯ΠΎΡΡ: testphp.vulnweb.com
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ SQL Injection Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ Π·Π½Π°ΡΠΈΠΌΡΡ Π΄Π°Π½Π½ΡΡ Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°:
ΠΠΠΠ£Π§ΠΠ’Π¬ http: // testphp.vulnweb.com/artists.php?artist= -1 UNION SELECT 1, pass, cc FROM users WHERE uname = 'test' HTTP / 1.1
Π₯ΠΎΡΡ: testphp.vulnweb.com
ΠΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ SQL
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ - ΡΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π²Π²ΠΎΠ΄Π° ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ. ΠΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π²ΠΎΠ΄ Π½Π°ΠΏΡΡΠΌΡΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠΈΡΡΠΈΡΡ Π²ΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π²Π΅Π±-ΡΠΎΡΠΌ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΎΡΠΌΡ Π²Ρ ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΠΊΠ°Π²ΡΡΠΊΠΈ.Π’Π°ΠΊΠΆΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠΈΡ ΡΠ°ΠΉΡΠ°Ρ . ΠΡΠΈΠ±ΠΊΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ SQL Injection Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Acunetix, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π΅Π΅ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π² ΠΎΡΠΊΡΡΡΠΎΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π°Π½Π½ΡΡ .
Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π½Π° ΡΠ·ΡΠΊΠ΅ PHP, ΡΠΌ. ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ PHP ΠΈ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅.Π§ΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ Bobby Tables ΠΏΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ (SQLi) - ΠΎΠ±ΡΠΈΠ΅ ΡΠΎΠ²Π΅ΡΡ
ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π° Π½Π΅ΠΏΡΠΎΡΡΠΎ. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΠΏΠΎΠ΄ΡΠΈΠΏΠ° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ SQLi, ΡΠ΄ΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ SQL ΠΈ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠΈΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΌ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π¨Π°Π³ 1. ΠΠ±ΡΡΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΠΉΡΠ΅ ΠΎΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½Π½ΠΎΡΡΡΠ§ΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ, ΠΊΡΠΎ ΡΡΠ°ΡΡΠ²ΡΠ΅Ρ Π² ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°ΡΡ ΠΎ ΡΠΈΡΠΊΠ°Ρ , ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ. ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ΅Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ²ΠΎΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ² ΠΎΡΠ΄Π΅Π»Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π°, DevOps ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΡ. | |
Π¨Π°Π³ 2. ΠΠ΅ Π΄ΠΎΠ²Π΅ΡΡΠΉΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΎΠΌΡ Π²Π²ΠΎΠ΄Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ‘ΡΠΈΡΠ°ΡΡ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌΠΈ.ΠΡΠ±ΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² SQL-Π·Π°ΠΏΡΠΎΡΠ΅, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΡΠΊ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Ρ Π²Π²ΠΎΠ΄ΠΎΠΌ ΠΎΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈ / ΠΈΠ»ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ Π²Π²ΠΎΠ΄ΠΎΠΌ. | |
Π¨Π°Π³ 3. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π±Π΅Π»ΡΠ΅, Π° Π½Π΅ ΡΠ΅ΡΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈΠΠ΅ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠ΅ΡΠ½ΡΠΌ ΡΠΏΠΈΡΠΊΠ°ΠΌ. Π£ΠΌΠ½ΡΠΉ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° Π½Π°ΠΉΠ΄Π΅Ρ ΡΠΏΠΎΡΠΎΠ± ΠΎΠ±ΠΎΠΉΡΠΈ Π²Π°Ρ ΡΠ΅ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ. ΠΡΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ ΠΈ ΡΠΈΠ»ΡΡΡΡΠΉΡΠ΅ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠ³ΠΈΠ΅ Π±Π΅Π»ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ. | |
Π¨Π°Π³ 4. ΠΡΠΈΠ½ΡΡΠΈΠ΅ Π½ΠΎΠ²Π΅ΠΉΡΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉΠ‘ΡΠ°ΡΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π·Π°ΡΠΈΡΡ SQLi.ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠ·ΡΠΊΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ Π½ΠΎΠ²Π΅ΠΉΡΠΈΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΡΠΎΠΉ ΡΡΠ΅Π΄ΠΎΠΉ / ΡΠ·ΡΠΊΠΎΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² PHP ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ PDO Π²ΠΌΠ΅ΡΡΠΎ MySQLi. | |
Π¨Π°Π³ 5: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡΠΠ΅ ΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π·Π°ΡΠΈΡΡ SQLi Ρ Π½ΡΠ»Ρ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π²Π°ΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π·Π°ΡΠΈΡΡ ΠΎΡ SQLi. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΠΊΠΈΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ°ΡΡ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΈΠ»ΠΈ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ. | |
Π¨Π°Π³ 6. Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (Ρ ΠΏΠΎΠΌΠΎΡΡΡ Acunetix)SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²Π²Π΅Π΄Π΅Π½Ρ Π²Π°ΡΠΈΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ / ΠΌΠΎΠ΄ΡΠ»ΠΈ / ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΊΠ°Π½Π΅ΡΠ° Π²Π΅Π±-ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Acunetix. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Jenkins, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ Acunetix Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ. |
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π»ΠΈΡΠ΅ΡΠ°ΡΡΡΠ°
Π§Π°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
SQL Injection - ΡΡΠΎ Π²Π΅Π±-ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, Π²ΡΠ·Π²Π°Π½Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ².ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Π²Π΅Π±-ΡΠ°ΠΉΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡ .
Π‘ΠΌ. ΠΠΎΡΠ°Π³ΠΎΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΠ°Π½Π΅ΡΠ° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ DAST (Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ).Acunetix, ΠΊΠ°ΠΊ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈΠ΄Π΅ΡΠΎΠΌ Π² ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. Acunetix ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠΈΡΡ ΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ°, Π³Π΄Π΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΊΠ°Π½Π΅ΡΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
Π£Π·Π½Π°ΠΉΡΠ΅, ΡΡΠΎ Acunetix Premium ΠΌΠΎΠΆΠ΅Ρ Π΄Π»Ρ Π²Π°Ρ ΡΠ΄Π΅Π»Π°ΡΡ.
ΠΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ: ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ (ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ) ΠΈ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ.Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΊΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ? ΠΡΠΈΠΌΠ΅ΡΡ Π°ΡΠ°ΠΊ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅
ΠΠ°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΠ°ΡΠ½Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ?
Π ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°Π½Π΅ΡΡΠΈ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ ΡΡΠ΅ΡΠ± Π»ΡΠ±ΠΎΠΌΡ Π±ΠΈΠ·Π½Π΅ΡΡ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΡ.ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°Π½Ρ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π°ΡΠ°ΠΊΠΈ, ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΎ.
ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π΄Π»Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅Π±-ΡΠ°ΠΉΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠΎΠΈΡΠΊ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°), Π½ΠΎ ΠΎΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΡΠ΅Π»Π΅Π½Ρ Π½Π°ΠΏΡΡΠΌΡΡ. ΠΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ Π² ΡΠΏΠΈΡΠΎΠΊ 10 Π»ΡΡΡΠΈΡ ΡΠΈΡΠΊΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ OWASP, Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π±ΠΎΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
Π’ΠΈΠΏΡ Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
ΠΡΠ°ΠΊΠ°
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»Π΅Π½Π° ββΠ½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ.ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π·Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ Π²Π΅ΠΊΡΠΎΡ / ΠΌΠ΅ΡΠΎΠ΄ Π°ΡΠ°ΠΊΠΈ.
ΠΠ΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π²Π²ΠΎΠ΄
ΠΠ΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π²Π²ΠΎΠ΄ - ΡΡΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π°ΡΠ°ΠΊΠΈ SQLi, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΎΡΠΈΡΠ΅Π½ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ, ΠΈ / ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄ Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΌ / ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΠΌ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π΅Π±-ΡΠ°ΠΉΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΠΎΠΏΠ»Π°ΡΡ ΡΡΠ΅ΡΠΎΠ² Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅, ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² Π²Π΅Π±-ΡΠΎΡΠΌΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ.ΠΡΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΠΎΠΊΡ SQL-Π·Π°ΠΏΡΠΎΡΠ° Ρ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
Β« ΠΠ«ΠΠ ΠΠ’Π¬ * ΠΠ’ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΠΠ account =β Β«+ userProvidedAccountNumber +Β» β;Β»
Π₯ΠΎΡΡ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²Π²ΠΎΠ΄ΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ, ΡΡΠΎ ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π²Π΅ΡΡ ΠΎΡΠΊΡΡΡΠΎΠΉ Π΄Π»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ ΡΠ΅ΡΠΈΠ» ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΡΠ΅ΡΠ° Β«β ΠΈΠ»ΠΈ β1β = β1Β», ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΡΡΠΎΠΊΠ΅ Π·Π°ΠΏΡΠΎΡΠ°:
Β« ΠΠ«ΠΠ ΠΠ’Π¬ * ΠΠ’ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΠΠ account =β βΠΈΠ»ΠΈβ 1 β=β 1 β;Β»
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Β«1Β» = Β«1Β» Π²ΡΠ΅Π³Π΄Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΠ‘Π’ΠΠΠ, ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΡΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ Π±ΡΠ΄ΡΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Ρ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°.
Π‘Π»Π΅ΠΏΠ°Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ SQL
Π’Π°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠ°Ρ Inferential SQL Injection, Π°ΡΠ°ΠΊΠ° Ρ ΡΠ»Π΅ΠΏΡΠΌ SQL-Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π΅ ΡΠ°ΡΠΊΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΠ· ΡΠ΅Π»Π΅Π²ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΏΡΠΎΡΠΈΠ², Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΠ·ΡΡΠ°Π΅Ρ ΠΊΠΎΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. ΠΠ΅ΡΠ°Π»ΠΈ Π² HTTP-ΠΎΡΠ²Π΅ΡΠ°Ρ , ΠΏΡΡΡΡΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° ΠΈ Π²ΡΠ΅ΠΌΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ° Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, - Π²ΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΎΠΉ Π² ββΠ·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π»ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΊΠ°Π·Π°ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π°ΡΠ°ΠΊΠΈ SQLi.
ΠΠΏΡΡΡΠΊ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°
ΠΡΠ° Π°ΡΠ°ΠΊΠ° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠΈΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ΅Π»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΏΡΡΠΌΠΎΠΉ Π°ΡΠ°ΠΊΠΈ ΡΠΈΠΏΠ° Π·Π°ΠΏΡΠΎΡ-ΠΎΡΠ²Π΅Ρ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ SQL, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ±ΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ½ΡΠ΅ΠΊΡΠΈΡ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° - ΡΡΠΎ ΡΠΈΠΏ Π°ΡΠ°ΠΊΠΈ Π²Π½Π΅ΠΏΠΎΠ»ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π° ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΠΎΡΠΈΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ (ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ»ΠΈ ΡΡΠΎ-ΡΠΎ, ΠΈΠ½ΠΈΡΠΈΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΈΠΏΠΈΡΠ½ΡΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ) ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°, ΡΠΎΠ³Π΄Π° Β«ΠΏΡΠΎΡΡΠ½ΡΡΡ ΡΡΠΊΡΒ» ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°.
ΠΡΠΈΠΌΠ΅Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π²ΡΠΌΡ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ : Β«ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈΒ» ΠΈ Β«ΠΠΎΠ½ΡΠ°ΠΊΡΡΒ».Π’Π°Π±Π»ΠΈΡΠ° Users ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ, ΠΊΠ°ΠΊ ΠΈ Π²ΡΠ΅Π³ΠΎ ΡΡΠΈ ΠΏΠΎΠ»Ρ: ID, ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. Π ΡΠ°Π±Π»ΠΈΡΠ΅ Β«ΠΠΎΠ½ΡΠ°ΠΊΡΡΒ» ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡ , ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ UserID, FirstName, LastName, Address1, Email, Π½ΠΎΠΌΠ΅Ρ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠΉ ΠΊΠ°ΡΡΡ ΠΈ Π·Π°ΡΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄.
Π’Π°Π±Π»ΠΈΡΠ° Users ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ Π²Ρ ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
- jsmith, P @ $$ w0rd
- sbrown, WinterIsComing!
- kcharles, Sup3rSecur3Password $
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠ°ΡΠΎΠ»ΠΈ Π²ΡΠ΅Π³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Ρ Ρ Π΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Ρ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π° Π½Π΅ Π² Π²ΠΈΠ΄Π΅ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°.
ΠΠΎΠ³Π΄Π° ΠΊΡΠΎ-ΡΠΎ Ρ ΠΎΡΠ΅Ρ Π²ΠΎΠΉΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΡ, ΠΎΠ½ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Π²Ρ ΠΎΠ΄Π° ΠΈ Π²Π²ΠΎΠ΄ΠΈΡ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. ΠΠ°ΡΠ΅ΠΌ ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π° Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ·Π΄Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡ SQL ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΠΎΡ Π·Π°ΠΏΡΠΎΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ:
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ΅Π΄ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π³Π΄Π΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = βjsmithβ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ = βP @ $$ w0rdβ
ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ SQL Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ Π·Π°ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ "ΠΈΡΡΠΈΠ½Π°" ΠΈΠ»ΠΈ "Π»ΠΎΠΆΡ" Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π·Π°ΠΏΡΠΎΡΠΎΠΌ.Π Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°ΠΏΡΠΎΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ Users ΠΈ Π²Π΅ΡΠ½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π³Π΄Π΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ - jsmith, Π° ΠΏΠ°ΡΠΎΠ»Ρ - P @ $$ w0rd. Π§Π°ΡΡΠΎ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ Π·Π°ΡΠ΅ΠΌ Π²ΠΈΠ΄ΠΈΡ, ΡΡΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΡΠΎ ΡΠΈΡΠ»ΠΎΠΌ. Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡ Π² ΠΎΡΠ²Π΅Ρ 1 ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΎΠΉΡΠΈ ΡΡΡΠ°Π½ΠΈΡΡ Π²Ρ ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠΎ ΡΡΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΡΠΈΠΌ ΠΏΠΎΠ΄ΡΡΠ΅Π³Π½ΡΡΡ? ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΠΈΡΡΠΈΠ½Π½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ Π»ΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΠΌΠ°Π½ΠΎΠΌ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅ΡΠΈΡΡ Π² ΡΠΎ, ΡΡΠΎ ΠΌΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΡΠΎΡΠ»ΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ.ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΊ ΠΏΠ°ΡΠΎΠ»Ρ ΠΠΠ. ΠΡΠ»ΠΈ ΠΌΡ Π²ΠΎΠΉΠ΄Π΅ΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ x βΠΈΠ»ΠΈ 1 = 1, Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ Π½ΠΎΠ²ΡΠΉ SQL-Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠ΅Π΄ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π³Π΄Π΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ = βjsmithβ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ = βxβ ΠΈΠ»ΠΈ 1 = 1
ΠΡΠΎ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ Π½Π°Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ, Ρ ΠΎΡΡ x Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ jsmith, ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΈΡ Π²ΡΠΎΡΠΎΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅. ΠΡΠ»ΠΈ x Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ jsmith, ΡΠΎΠ³Π΄Π° 1 ΡΠ°Π²Π½ΠΎ 1? ΠΠ½ΠΎ Π΄Π΅Π»Π°Π΅Ρ! ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±ΡΠ΄Π΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½.
ΠΡΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ 1 = 1. ΠΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π»ΡΠ±ΡΠ΅ Π΄Π²Π° ΡΠ°Π²Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ: 2 = 2, 4726 = 4726 ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ a = a.
ΠΡΠ»ΠΈ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ° ΡΠΏΠΎΡΠΎΠ±Π½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΠΏΠ΅ΡΠ°ΡΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΠΊΡΠ°Π½Π΅. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ ΡΠ²ΡΠ·Π°ΡΡ Π΄Π²Π° Π·Π°ΠΏΡΠΎΡΠ° SQL. Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Π½Π°ΡΠ΅ΠΌΡ Β«ΠΈΠ»ΠΈ 1 = 1Β» ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊ Π½Π΅ΠΌΡ Π²ΡΠΎΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ UNION SELECT LastName, Π½ΠΎΠΌΠ΅Ρ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΠΎΠΉ ΠΊΠ°ΡΡΡ, Π·Π°ΡΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ· ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΎΠ². ΠΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, Π½ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠ΅Π»ΡΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΡΡΠ³ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ»Π΅ΠΏΠΎΠΉ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ SQL, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° ΡΠΊΡΠ°Π½, - ΡΡΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ. ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π°ΡΠ΅ΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ Β«ΠΈΠ»ΠΈ 1 = 1Β», ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΠΏΠ°ΡΡ. ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ: Β«or sleep (10)Β», ΠΈ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΅ΡΡΡ. ΠΠ½ ΡΠΊΠ°ΠΆΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²Π·Π΄ΡΠ΅ΠΌΠ½ΡΡΡ 10 ΡΠ΅ΠΊΡΠ½Π΄, ΠΈ Π²ΡΠ΅ ΠΎΡΠ²Π΅ΡΡ Π±ΡΠ΄ΡΡ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Ρ.
ΠΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΡΡΠΏΠ΅ΡΠ½ΡΡ Π°ΡΠ°ΠΊΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ:
ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ SQL
ΠΡΠΈΡΡΠΈΡΡ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅
- ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ.
- Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΠΈΠΏ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡ ΡΠΈΠΏΡ.
ΠΠ΅ ΠΎΡΡΠ°Π²Π»ΡΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² Π²ΠΈΠ΄Π΅ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- Π¨ΠΈΡΡΠΎΠ²Π°ΡΡ Π»ΠΈΡΠ½ΡΠ΅ / ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Ρ ΡΠ°Π½ΡΡΠΈΠ΅ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
- Π‘ΠΎΠ»Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ Ρ ΡΡΠΈ.
- ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ²Π΅Π½Ρ Π·Π°ΡΠΈΡΡ Π½Π° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ³ΡΠ°Π½ΠΈΡΠΈΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ.
- ΠΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°, Π΅ΡΠ»ΠΈ Π΅ΠΌΡ ΡΠ΄Π°ΡΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ.
ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
- ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (WAF) Π΄Π»Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π·Π°ΡΠΈΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
- ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΡΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.
- Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΠΎΠΏΡΡΠΊΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ).
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡΠΈΡ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ
- ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π²ΡΡΠ²ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ΅Π³ΡΠ΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.
ΠΠ±Π½ΠΎΠ²Π»ΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ
- ΠΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΠ»Π°Π±ΡΡ ΠΌΠ΅ΡΡ / ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π² ΡΡΠ°ΡΡΡ Π²Π΅ΡΡΠΈΡΡ .
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π°ΡΠ°ΠΊΠΈ Π΄Π»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², Π½ΠΎ, ΠΏΡΠΈΠ½ΡΠ² Π½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ ΠΌΠ΅ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π·Π°ΡΠΈΡΠ° ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ Π²Π°ΠΆΠ½ΡΠ΅ ΡΠ°Π³ΠΈ. Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ .
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ , ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ Π²ΡΡΠ°Π²ΠΊΠ°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ SQL ΡΠ΅Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° ΠΏΡΡΠ΅ΠΌ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SQL ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅Π²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°.Π 2013 Π³ΠΎΠ΄Ρ ΠΏΡΠΎΠ΅ΠΊΡ Open Web Application Security Project [OWASP] Π½Π°Π·Π²Π°Π» ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΠΎΠΉ ΡΠ³ΡΠΎΠ·ΠΎΠΉ Π΄Π»Ρ ΡΡΠ·Π²ΠΈΠΌΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ Π΄Π»Ρ Π°ΡΠ°ΠΊΠΈ Π½Π° Π²Π΅Π±-ΡΠ°ΠΉΡΡ. ΠΠΎΡΠ»Π΅ Π²Π·Π»ΠΎΠΌΠ° Π²Π΅Π±-ΡΠ°ΠΉΡΠ° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΏΡΡΠ°ΡΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ root-Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌ Π² ΡΠ΅ΡΠΈ.
Π ΠΌΠ°ΡΡΠ΅ 2011 Π³ΠΎΠ΄Π° SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ Π΄Π»Ρ Π²Π·Π»ΠΎΠΌΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² ΠΈ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ URL-Π°Π΄ΡΠ΅ΡΠ°, Π²Π΅Π΄ΡΡΠΈΠ΅ ΠΊ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌ, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ FAKEAV.
Π Π°Π·Π½ΠΈΡΠ° ΠΏΡΠΈ ΠΌΠ΅ΠΆΡΠ°ΠΉΡΠΎΠ²ΠΎΠΌ ΡΠΊΡΠΈΠΏΡΠΈΠ½Π³Π΅
Π₯ΠΎΡΡ ΠΎΠ±Π΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° / ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΎΠ½ΠΈ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. CSS / XSS ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠ±ΠΎΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Ρ ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ° ΡΠ΅Π°Π½ΡΠΎΠ², Π΄Π΅Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ², Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ URL-Π°Π΄ΡΠ΅ΡΠΎΠ². Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎ Π²Π»ΠΈΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ ΡΠ°ΡΡΡ ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ.
ΠΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
ΠΠΈΠ΄Π΅ΠΎ: Trend Micro Tech-TV: Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠΎΠ² Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL
Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ: ΠΌΠ΅ΠΆΡΠ°ΠΉΡΠΎΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡΠΈΠ½Π³ (CSS / XSS), ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ², ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΡΠΊΡΠΏΠ»ΠΎΠΉΡ
ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡΠ΅ ΠΊΠΎΠ΄Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Ρ.ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π²ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΊΠ°Π½Π΅ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠΊΠ°Π½Π΅ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΈ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΊΠΎΠ΄Π°. ΠΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΠ’-ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΠΊΠΎΠ΄Ρ Π΄ΠΎ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ.
- Π Π°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠΎΠ² Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π·Π°ΡΠΈΡΡ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠ° Π½Π° ΡΡΠΎΠ²Π½Π΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
- ΠΡΠ°ΠΊΡΠΈΠΊΡΠΉΡΠ΅ΡΡ Π² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, Ρ ΠΊΠΎΡΠΎΡΡΡ Π΅ΡΡΡ Π²Π΅Π±-ΡΠ°ΠΉΡΡ, Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ Π²Π½Π΅Π΄ΡΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Open Web Application Security Project (OWASP) - ΡΡΠΎ Π½Π΅ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠ°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ, Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ ΠΈ Π²Π»Π°Π΄Π΅Π»ΡΡΠ°ΠΌ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΎΠ²Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· ΠΎΡΠ·ΡΠ²Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π°.
- ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΡΠ΅ΡΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ. ΠΠ’-Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΡΠΎΡΠ²Π»ΡΡΡ ΠΎΡΠΎΠ±ΡΡ ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΠ‘Π ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠ΅ΡΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ΄Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π±Π΅Π· ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠ΅. ΠΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠΌ / ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠΈ.
- Π‘ΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ: ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ²ΠΎΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π°ΡΠ°ΠΊΠ°ΠΌ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΈ ΠΌΠ΅ΠΆΡΠ°ΠΉΡΠΎΠ²ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π².
Π‘ΡΡΠ»ΠΊΠΈ:
https: // www.owasp.org/index.php/Top_10_2013-A1-Injection
http://blog.trendmicro.com/trendlabs-security-intelligence/lizamoon-etc-sql-injection-attack-still-on-going/
ΠΡΠΎΠ΄ΡΠΊΡΡ: Trend Micro β’ Deep Security β’ ΠΈ Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, Trend Micro β’ Deep Discovery β’
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ?
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ ΡΠΈΠΏ ΠΊΠΈΠ±Π΅ΡΠ°ΡΠ°ΠΊΠΈ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ Π°ΠΊΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° SQL (ΡΠ·ΡΠΊ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²) Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΡΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΠΈ ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² Π°ΡΠ°ΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ ΠΏΡΠΎΡΠΈΠ² Π»ΡΠ±ΠΎΠ³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π³ΠΎ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ SQL.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π·Π°ΠΌΠ΅ΡΠ½ΡΠ΅ Π°ΡΠ°ΠΊΠΈ Π½Π° Sony Pictures ΠΈ Microsoft ΡΡΠ΅Π΄ΠΈ Π΄ΡΡΠ³ΠΈΡ .
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ?
Π ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ SQL-Π·Π°ΠΏΡΠΎΡ - ΡΡΠΎ, ΠΏΠΎ ΡΡΡΠΈ, Π·Π°ΠΏΡΠΎΡ, ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ - ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ - Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° SQL.
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π΄Π»Ρ Π²Ρ ΠΎΠ΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΡΠΎΡΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠ³ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΡΡ.
ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎΡ ΡΠΈΠΏ Π²Π΅Π±-ΡΠΎΡΠΌΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΏΡΠΈΠ΅ΠΌΠ° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ΅Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² Π΄Π°Π½Π½ΡΡ , ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΈΠΌΡ ΠΈ / ΠΈΠ»ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ. ΠΠΎΠ³Π΄Π° ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ, ΠΎΠ½Π° ΡΠ²Π΅ΡΡΠ΅ΡΡΡ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ , ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΠΌ ΠΎΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π΄ΠΎΡΡΡΠΏΠ΅.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²Π΅Π±-ΡΠΎΡΠΌ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π²Π²ΠΎΠ΄ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΡΠΎΡΠΌΡ.Π₯Π°ΠΊΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠΎΠΉ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»Ρ Π²Π²ΠΎΠ΄Π° Π² ΡΠΎΡΠΌΠ΅ Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ ΠΈΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ΄ Π³Π½ΡΡΠ½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΎΡ ΠΊΡΠ°ΠΆΠΈ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Π΄ΠΎ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ΅Π»ΡΡ .
Π Π°ΡΡΡΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°
ΠΠ·-Π·Π° Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΌΠ΅ΡΠΎΠ΄ Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΡΠ°ΡΠ΅ΠΉΡΠΈΡ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠΈΠΏΠΎΠ² ΠΊΠΈΠ±Π΅ΡΠ°ΡΠ°ΠΊ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² Ρ Π°ΠΊΠ΅ΡΡΠΊΠΎΠΌ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ»ΠΈ ΡΠΈΡΠΊ ΡΡΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π°ΡΠ°ΠΊ, Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL.
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π°, Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π°ΡΠ°ΠΊΠΈ Π²ΡΠ΅Π³ΠΎ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΠΈΠΌ Π΄ΠΎΡΡΡΠΏ ΠΊ Π»ΡΠ±ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΅Π»ΡΠΊΠΎΠΌ ΠΌΡΡΠΈ ΠΈ Π°ΡΠ°ΠΊΠΎΠΉ.
ΠΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΡΡΠΈ ΡΠΈΠΏΡ Π°ΡΠ°ΠΊ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΠ° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π±ΡΠ°Π½Π΄ΠΌΠ°ΡΡΡΡ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ Kaspersky Security.ΠΡΠ΅ ΠΎΠ΄Π½Π° ΠΏΡΠ΅Π²Π΅Π½ΡΠΈΠ²Π½Π°Ρ ΠΌΠ΅ΡΠ° - ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎΠ±Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΈ Π΄ΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π»ΠΈΡΠ° ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ ΡΡΠ°ΡΡΠΈ:
Π‘Π²ΡΠ·Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ:
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ?
Kaspersky
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ ΡΠΈΠΏ ΠΊΠΈΠ±Π΅ΡΠ°ΡΠ°ΠΊΠΈ, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Ρ Π°ΠΊΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° SQL (ΡΠ·ΡΠΊ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²) Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΡΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΡΡΠΎ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ Π°ΡΠ°ΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΆΠ΅ ΠΎΠΏΠ°ΡΠ½Π°, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½Π°.ΠΠ»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π² ΡΠ²ΠΎΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ°Ρ , ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΎΠ±ΡΡΠΈΡ.
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΎΡΡΠ°Π»ΠΈΡΡ Π² ΠΏΡΠΎΡΠ»ΠΎΠΌ. ΠΠΎ ΠΏΡΠ°Π²Π΄Π΅ Π³ΠΎΠ²ΠΎΡΡ, ΠΎΠ½ΠΈ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, 70% ΠΏΠΎΠΏΡΡΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Rails, ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π² ΠΎΡΡΠ΅ΡΠ΅ Sqreen ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π±ΡΠ»ΠΈ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ SQL. ΠΡΠΎΡ Π²ΡΠ²ΠΎΠ΄ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π½Π°Π΄Π΅ΠΆΠ½Π°Ρ ΡΡΠ΅Π΄Π°, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ Ruby on Rails, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ORM Π² ΡΠΎΡΠΌΠ΅ Active Record, Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π±ΡΡΠ½ΠΎΠΉ ΠΏΡΠ»Π΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ Π΄ΠΎΡ ΠΎΠ΄ΠΈΡ Π΄ΠΎ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ.SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π½Π° Π²Π΅ΡΡΠΈΠ½Π΅ ΡΠΏΠΈΡΠΊΠ° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ ΡΠ³ΡΠΎΠ· Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΆΠ΅ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄Π°Π²Π½ΠΎ.
Π§ΡΠΎ ΠΆΠ΅ ΡΠΎΠ³Π΄Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ? ΠΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ - ΠΊΠ»ΡΡ ΠΊ ΡΡΠΏΠ΅Ρ Ρ. Π Π²ΠΎΡ ΠΎ ΡΠ΅ΠΌ ΡΡΠΎΡ ΠΏΠΎΡΡ: ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ Π»ΡΠ΄ΡΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½ΠΎ, ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΊΠΎΠΏΠ°ΡΡΡΡ.
Π§ΡΠΎ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΈ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π½Π°ΡΡΠΈΡΡΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Π·Π°ΡΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΎΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ ΠΊΠ°ΠΊΡΡ ΡΠ³ΡΠΎΠ·Ρ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ.ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΡΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ?
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ ΡΠ³ΡΠΎΠ·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ SQL-Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π΄Π°Π½Π½ΡΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²Π° ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡΠ΅ Ρ ΡΠΆΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ°Π²Π° Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΡΠ΅ΠΌ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠ΅ΡΡΠ΅Π·Π½ΠΎΠΌΡ ΠΈ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌΡ ΡΡΠ΅ΡΠ±Ρ.
ΠΠΎΡΠ΅ΠΌΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ ΡΠ°ΠΊ ΠΎΠΏΠ°ΡΠ½Ρ?
ΠΡΠΎ-ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ, ΡΡΠΎ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΠ°ΡΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠ°Π²Π° Π·Π°ΠΏΠΈΡΠΈ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΡΠ°ΠΊ.
ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΡΠ°Π΅Ρ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΠΎΠ΄ΠΈΠ½ΠΎΡΠΊΡ, ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π²Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΈ ΡΠ°ΡΠΊΡΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈ Π»ΠΈΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. Π’Π°ΠΊΠ°Ρ ΡΡΠ΅ΡΠΊΠ° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΡΠ½Π°Π΅Ρ ΡΠ΅ΠΏΡΡΠ°ΡΠΈΡ Π²Π°ΡΠ΅ΠΉ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ, Π½ΠΎ ΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ Π΄Π»Ρ Π²Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ / ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ², ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΠΈ ΠΏΡΠΎΠ΄Π°ΡΡΡΡ. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ GDPR Π² ΠΠ²ΡΠΎΠΏΠ΅ ΠΈΠ»ΠΈ CCPA Π² ΠΠ°Π»ΠΈΡΠΎΡΠ½ΠΈΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΌ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ.
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ?
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Π²ΠΎΠ΄ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΡΡ ΡΡΠΈΠΌΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ , ΠΌΠ΅ΡΠ°Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ².
Π’ΠΎ, ΡΡΠΎ Ρ Π½Π°Π·ΡΠ²Π°Ρ Β«ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ Β», - ΡΡΠΎ ΡΠΏΠΎΡΠΎΠ±Ρ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π²Π²ΠΎΠ΄ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΡΠΎ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»Ρ ΡΠΎΡΠΌΡ ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ URL. ΠΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡΠ²ΡΡ Π½Π° ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π²Π²ΠΎΠ΄ΠΈΡΡ - ΠΎΡΡΡΠ΄Π° ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ - Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ SQL, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ.
ΠΡΠΈΠΌΠ΅Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅ ΡΠ°ΠΉΡ Π°Π³Π΅Π½ΡΡΡΠ²Π° Π½Π΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡΠΈ. ΠΠ°ΠΉΠ΄Ρ Π½Π° ΡΠ°ΠΉΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΊΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΈΠΏΡ Π½Π΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡΠΈ ΠΈ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΠΎ Β«Π°ΡΠ΅Π½Π΄Π΅Β» ΠΈΠ»ΠΈ Β«ΠΏΠΎΠΊΡΠΏΠΊΠ΅Β». Π’ΠΈΠΏΠΈΡΠ½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π». ΠΠΎΡΠ»Π΅ Π²ΡΠ±ΠΎΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠΎΠΈΡΠΊΠ° ΠΈ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«ΠΠΎΠΈΡΠΊΒ» Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π±ΡΠ΄ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ URL. ΠΡΠ°ΠΊ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ, Π²Ρ ΠΈΡΠ΅ΡΠ΅ ΠΊΠ²Π°ΡΡΠΈΡΡ. ΠΠ°Ρ URL-Π°Π΄ΡΠ΅Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
https://fakerealestate.com/properties?category=Apartments
Π ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΠΉ SQL-Π·Π°ΠΏΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊΠΈΠΌ:
ΠΠ«ΠΠ ΠΠ’Π¬ * ΠΠ ΡΠ²ΠΎΠΉΡΡΠ² ΠΠΠ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ = 'ΠΠ²Π°ΡΡΠΈΡΡ'
ΠΠ°ΠΏΡΠΎΡ Π²ΡΡΠ΅ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ.ΠΡ Ρ ΠΎΡΠΈΠΌ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΡΡΠΎΠΊΠΈ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ properties , Π² ΠΊΠΎΡΠΎΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΠ° category ΡΠ°Π²Π½ΠΎ Apartments.
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΡΡΠΎΡ ΡΠ°ΠΉΡ ΡΡΠ·Π²ΠΈΠΌ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ SQL. ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, Π΅ΡΠ»ΠΈ ΠΊΡΠΎ-ΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ URL-Π°Π΄ΡΠ΅Ρ Π½Π° ΡΡΠΎΡ:
https://fakerealestate.com/properties?category=Apartmentsβ+OR+1=1β
ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ Π·Π°ΠΏΡΠΎΡΡ:
ΠΠ«ΠΠ ΠΠ’Π¬ * ΠΠ ΡΠ²ΠΎΠΉΡΡΠ² ΠΠΠ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ = Β«ΠΠ²Π°ΡΡΠΈΡΡΒ» ΠΠΠ 1 = 1
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ΄ΠΈΠ½ Π²ΡΠ΅Π³Π΄Π° ΡΠ°Π²Π΅Π½ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ Π·Π°ΠΏΡΠΎΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈΠ· Π²ΡΠ΅Ρ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΉ.ΠΡΠΎ Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΎ ΠΎΠ±ΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ°Π±ΠΎΡΡ ΡΠΎΡ ΠΆΠ΅: Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Ρ ΠΎΡΠ΅Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ Π·Π°ΠΊΠΎΠ½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΠΈ Π²Π²Π΅ΡΡΠΈ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΠΌΡ-ΡΠΎ, ΠΊ ΡΠ΅ΠΌΡ ΠΎΠ½ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ.
ΠΠ°ΡΠΈΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΎΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
Π‘Π°ΠΌΡΠΉ Π²Π°ΠΆΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π·ΡΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ: ΠΡΠ΅Π³Π΄Π° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΠΉΡΠ΅, ΡΡΠΎ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ΅Π½. ΠΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ Π²Π²ΠΎΠ΄ΠΎΠΌ Ρ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Ρ Π»ΡΠ±ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΏΠΎΡΡΡΠΏΠ°ΡΡΡΡ ΠΈΠ·Π²Π½Π΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ»ΠΎ ΡΡΠ΄Π°.
ΠΡΠ°ΠΊ, Π½Π΅ Π΄ΠΎΠ²Π΅ΡΡΠΉΡΠ΅ Π΄Π°Π½Π½ΡΠΌ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅Ρ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ Π΄ΠΎΠ²Π΅ΡΡΡΡ Π»ΡΠ±ΠΎΠΌΡ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΠΌ ΡΠΎΡΠΌΡ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ URL ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π°ΠΌ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠ°Π½Π½ΡΠ΅ ΠΈΠ· API-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΆΠ΅ Π²Ρ ΠΎΠ΄ΡΡ Π² ΡΡΠΎΡ ΡΠΏΠΈΡΠΎΠΊ. ΠΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΈΡΡΠ΅ΡΠΏΡΠ²Π°ΡΡΠΈΠ΅, Π½ΠΎ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΡΠΎ ΠΆΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ: ΡΡΠΈΡΠ°ΠΉΡΠ΅ Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.Π‘Π½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΅Π³ΠΎ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΠΉΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠΎΡΡΠ΅ΡΠ΅ ΡΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΌ.
ΠΡΠΎΡ ΡΠΎΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΠ±ΡΠΈΠΌ ΡΠΎΠ²Π΅ΡΠΎΠΌ ΠΏΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΠΊ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π². ΠΠ°ΠΊ Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΠ΅ Π΅Π³ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ? ΠΠΎΡ Π½Π° ΡΡΠΎ ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ.
ΠΠ°Π½ΡΡΡ ORM
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠ·Π²ΠΈΠΌΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠΎΠ², - ΡΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΠΏΠΈΡΠ°ΡΡ SQL-Π·Π°ΠΏΡΠΎΡΡ! Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ·ΡΠΊΠΎΠ² ΡΠ°ΡΡΡΠΈΡΠ°Π½Ρ Π½Π° ΠΌΠΎΡΠ½ΡΠ΅ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ORM (ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ), ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π΅ΡΡΡ Π½Π° ΡΠ΅Π±Ρ Π²ΡΡ ΡΡΠΆΠ΅Π»ΡΡ ΡΠ°Π±ΠΎΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ .
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ ΡΠ°Π½Π΅Π΅, ORM - Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΡΠ΅ΡΠ΅Π±ΡΡΠ½Π°Ρ ΠΏΡΠ»Ρ ΠΏΡΠΎΡΠΈΠ² SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ. ΠΠ°ΠΊ Π²Ρ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΊΡΠΏΠ»ΠΎΠΉΡΠΎΠ² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Rails - ΡΡΠΎ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ SQL, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° Active Record. Π ΠΎΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΎΡΠΈΠ±ΠΎΠΊ, Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠ΅ΠΉ API, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ±ΠΈΡΡ Ρ ΡΠΎΠ»ΠΊΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ
ΠΠΎΠ³Π΄Π° Π²Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ SQL-Π·Π°ΠΏΡΠΎΡΡ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π²Π²Π΅Π΄Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ.Π ΡΡΠ°ΡΡΡΡ, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ°ΠΊ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ - ΡΡΠΎ Π·Π°ΠΏΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π³ΠΎΡΠΎΠ²ΠΈΡΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π±Π»ΠΎΠ½Π°. ΠΡΠΎΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠΉ Π·Π°ΠΏΡΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°ΡΡ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π²Ρ ΠΈΠ·Π±Π΅Π³Π°Π΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΠΈ ΡΡΡΠΎΠΊ, Π° Β«ΡΠ»ΠΎΠ²ΠΊΠ°Β», Π·Π°ΠΊΠ»ΡΡΠ°ΡΡΠ°ΡΡΡ Π² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΎΠ΄ΠΈΠ½Π°ΡΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΈ Π΄Π»Ρ Π·Π°ΠΊΡΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°, Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠΌΡ SQL.
ΠΠ½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π°
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π°
, ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ Π»ΠΈΠ½ΡΠ΅ΡΠ°ΠΌΠΈ, - ΡΡΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ, ΡΡΠ΅Π΄ΠΈ ΠΏΡΠΎΡΠ΅Π³ΠΎ, ΠΏΠ΅ΡΠ΅Π΄ΠΎΠ²ΡΡ ΠΏΡΠ°ΠΊΡΠΈΠΊ, ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠ°Π²ΠΈΠ» ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π°Π½ΡΠΈΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ.
Π ΡΡΠ°ΡΡΡΡ, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π»ΠΈΠ½ΡΠ΅ΡΠΎΠΌ. Π Ruby Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠ°ΠΊ Rubocop ΠΈ Brakeman, ΡΡΠ΅Π΄ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ . Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Python ΠΌΠΎΠ³ΡΡ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ Π½Π° Pylint, ΠΊΠΎΡΠΎΡΡΠΉ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ²Π½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ.
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ
ΠΡΠΎΡ ΡΠΎΠ²Π΅Ρ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ . ΠΠ΄Π΅ΡΡ ΠΌΡ Π½Π΅Π½Π°Π΄ΠΎΠ»Π³ΠΎ ΠΎΡΡΠ°Π²ΠΈΠΌ ΡΡΠ΅ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΡ Π·Π°ΠΉΠΌΠ΅ΠΌΡΡ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΡ ΡΠΎΠ²Π΅Ρ Π½Π΅ ΡΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ± ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎ ΡΠΌΡΠ³ΡΠ΅Π½ΠΈΠΈ ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ.
Π‘Π°ΠΌΠ° ΠΈΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠ°: Π² ΠΎΠ±Π»Π°ΡΡΡΡ , Π³Π΄Π΅ Π²Ρ ΠΏΡΠΎΡΡΠΎ ΡΠΈΡΠ°Π΅ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²Π° Π·Π°ΠΏΠΈΡΠΈ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΡΠ΄Π°ΡΡΡΡ Π²Π²Π΅ΡΡΠΈ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ, ΠΎΠ½ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠ°Π²ΠΈΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π΄Π°Π½Π½ΡΠ΅.
ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, Π²ΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠΉΡΠ΅ Π²Π΅ΡΠΈ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Π°ΠΌ ΠΌΠΎΠ³ΡΡ ΡΠΎΠΉΡΠΈ Ρ ΡΡΠΊ.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ - ΡΡΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ; Π½Π΅ ΡΡΠ»ΠΎΠΆΠ½ΡΠΉ
ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎ. ΠΡΠΈΠ±ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ ΡΠΆΠ°ΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ. Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, ΡΡΠ°ΡΠΎΠΉ ΡΠ³ΡΠΎΠ·Π΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΡΠΌΠΈΡΠ°ΡΡ. ΠΠ° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ Π²Π²Π΅Π΄Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΌΡ ΠΌΡ ΠΎΠ±ΡΡΡΠ½ΠΈΠ»ΠΈ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, ΠΎΠ±ΡΡΡΠ½ΠΈΠ»ΠΈ, ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΠ½ΠΈ ΡΠ°ΠΊ ΠΎΠΏΠ°ΡΠ½Ρ, ΠΈ ΠΎΠ±ΡΠΈΡΠΎΠ²Π°Π»ΠΈ Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ°Π³ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΈΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ.
ΠΠ°ΡΠΈΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠΌΠ΅Π΅Ρ Π±ΠΎΠ»ΡΡΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, Π½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅.ΠΠΎΡ ΠΏΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ RASP, Π±ΡΠ»ΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡΠΌΠΈ, ΠΊΠ°ΠΊ NIST.
ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΠΈ Π·Π°ΡΠΈΡΡ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Sqreen, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΡΡΠΈ-ΠΌΠΈΠ½ΡΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π°Π³Π΅Π½ΡΠΎΠ² Sqreen ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π² ΠΌΠ³Π½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΎΠΊΠ° ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π² Π²Π°ΡΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΠΈ Π·Π°ΡΠΈΡΠΈΡΡ ΠΈΡ . ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΠΎΡΠΈΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ, ΠΈ Π΄ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠ°Π·Π°.
ΠΡΠΎΡ ΠΏΠΎΡΡ Π½Π°ΠΏΠΈΡΠ°Π» ΠΠ°ΡΠ»ΠΎΡ Π¨ΡΠ»ΡΡ. ΠΠ°ΡΠ»ΠΎΡ - ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ .NET Ρ ΠΎΠΏΡΡΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΊΠ°ΠΊ Π΄Π»Ρ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ², ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π° ΡΠ΅ΠΉΡΠ°Ρ ΠΎΠ½ ΠΏΡΠΎΠ±ΡΠ΅Ρ ΡΠ²ΠΎΠΈ ΡΠΈΠ»Ρ Π² ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅. ΠΠ½ ΡΡΡΠ°ΡΡΠ½ΠΎ Π»ΡΠ±ΠΈΡ ΠΏΠΈΡΠ°ΡΡ ΡΠΈΡΡΡΠΉ ΠΈ Π»Π°ΠΊΠΎΠ½ΠΈΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΈ Π΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΡΠ»ΡΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΊΠΎΠ΄Π°, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½Π°Ρ ΡΠ±ΠΎΡΠΊΠ°.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΡΠ°Π±ΠΎΡΠ°Π΅Ρ?
ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈΠΌΡ ΠΈ ΠΏΡΠΎΡ ΠΎΠ΄ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ°.ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° PreparedStatement Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΎΡΠΎΡΠ΅ΠΉ Π·Π°ΡΠΈΡΠΎΠΉ. ΠΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·Π°ΡΠΈΠΈ (Β«?Β») ΠΠ»Ρ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠ΅Π· ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½Π°ΡΠΈΡ ΡΡΡΠΎΠΊ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, Π΄Π°ΠΆΠ΅ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ° PreparedStatement .
Π₯ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ . Π₯ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ - ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ SQL, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π² ΡΠ°ΠΌΠΎΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΡΠ΅ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.ΠΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ SQL Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΡΡΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ SQL-Π·Π°ΠΏΡΠΎΡΡ Π²Π½ΡΡΡΠΈ Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ. ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠΉΡΠ΅ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ, ΠΈΠ·Π±Π΅Π³Π°Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ SQL Π²Π½ΡΡΡΠΈ.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π²Π²ΠΎΠ΄Π° . Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΌ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²Π²ΠΎΠ΄. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΡΠ΅Π³Π΄Π° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ - ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ .ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ Π½Π΅Π³ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²Π²ΠΎΠ΄Π°: ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π±Π΅Π»ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²Ρ ΠΎΠ΄ Π½Π° Π½Π°Π±ΠΎΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ Π²Ρ ΠΎΠ΄ΠΎΠ². ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ , Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΠΏΠΈΡΠΊΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±ΠΎΠΉΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π½Π΅ Π²Ρ ΠΎΠ΄ΠΈΡΡ Π² ΡΠΎΡΡΠ°Π² ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ°.
ΠΠ½Π΅ΡΠ΅Π½ΠΈΠ΅
Π² Π±Π΅Π»ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ - Π³ΠΎΡΠ°Π·Π΄ΠΎ Π»ΡΡΡΠΈΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠΊΠ°. ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π±Π΅Π»ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ Π½Π°Π±ΠΎΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΡΠ²Π΅ΡΠΆΠ΄Π΅Π½Π½ΡΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΡ Π΄Π°Π½Π½ΡΡ Π² Π±Π΅Π»ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΠ½ΠΎ Π·Π½Π°Π΅Ρ, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΠΈ ΠΎΡΠΊΠ»ΠΎΠ½ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΏΡΠΎΡΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π½ΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΡΠΈΠ½ΡΠΈΠΏ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ . ΠΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΡΠ΅ΡΠ± ΠΎΡ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ Π°ΡΠ°ΠΊΠΈ. Π£ΡΠ΅ΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Π·Π½Π°ΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΡΠΈΠΏΠ° DBA ΠΈΠ»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π΄ΠΎΡΡΡΠΏΠ°, ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ Π΄ΠΎΡΡΡΠΏΠΎΠΌ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ΅ΡΠ½ΡΠΌ Π·Π°ΠΏΠΈΡΡΠΌ, ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎΡΡΡΠΏ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ. ΠΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ Π² ΡΠ»ΡΡΠ°Π΅ Π²Π·Π»ΠΎΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΏΡΠ°Π² Π½Π° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ? ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΡΠΈ Π°ΡΠ°ΠΊΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΈΡ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ
Π£Π²Π΅ΠΊΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠΉ Β«ΠΠ°Π»Π΅Π½ΡΠΊΠΈΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ ΠΠΎΠ±Π±ΠΈΒ» Π² XKCD 327, SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ (SQLi) Π±ΡΠ»Π° Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π° Π² 1998 Π³ΠΎΠ΄Ρ, Π½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΡΠ΅ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΡ.ΠΠ°ΠΆΠ΅ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ Π΄Π΅ΡΡΡΠΊΠ΅ OWASP ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ Π½Π°Π·Π²Π°Π½Π° ΡΠ³ΡΠΎΠ·ΠΎΠΉ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ ΡΠΈΠΏ Π°ΡΠ°ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΡΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΡΠ΅ΠΌ Π²ΡΡΠ°Π²ΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° SQL Π² Π·Π°ΠΏΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
Π₯ΠΎΡΠΎΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΡΡΠΈ? SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ - ΡΡΠΎ ΡΠ°ΠΌΡΠΉ Π½ΠΈΠ·ΠΊΠΈΠΉ ΡΡΡΠΊΡ ΠΊΠ°ΠΊ Π΄Π»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ Π·Π°ΡΠΈΡΠ½ΠΈΠΊΠΎΠ². ΠΡΠΎ Π½Π΅ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΏΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ NSA Shadow Brokers, ΡΡΠΎ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΠΎ, ΡΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠ΅Ρ Π»Π΅ΡΠ½ΠΈΠΉ ΡΠ΅Π±Π΅Π½ΠΎΠΊ.ΠΡΠΎ Π΄Π΅ΡΡΠΊΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ, ΠΈ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π²Π°ΡΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΡΠ½ΠΈΠ·ΠΈΡΡ ΡΠΈΡΠΊ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ, Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΠΎ, ΡΡΠΎ ΠΎΡΠΊΠ°Π· ΠΎΡ ΡΡΠΎΠ³ΠΎ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΡ ΠΎΠΆ Π½Π° Π³ΡΡΠ±ΡΡ Ρ Π°Π»Π°ΡΠ½ΠΎΡΡΡ.
ΠΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, Π½ΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ, Π²ΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ SQL-ΠΊΠΎΠ΄ Π² Π·Π°ΠΏΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘Π°ΠΌΠ°Ρ ΠΏΡΠΎΡΡΠ°Ρ ΡΠΎΡΠΌΠ° SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ - Π²Π²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠ΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π· ΡΠΎΡΠΌΡ, Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ½Π°Ρ ΡΠ°ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ.ΠΡΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ ΡΠ΄Π°Π΅ΡΡΡ ΠΎΡΠΈΡΡΠΈΡΡ Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²Π²Π΅ΡΡΠΈ SQL ΠΏΠΎ ΡΠ²ΠΎΠ΅ΠΌΡ Π²ΡΠ±ΠΎΡΡ Π² ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ, ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ cookie, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π€Π°ΠΉΠ»Ρ cookie Ρ ΡΠ°Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, Π° Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ cookie ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠ»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΈΠ»ΠΈ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°ΠΉΠ»Ρ cookie, ΡΡΠΎΠ±Ρ Π²Π½Π΅Π΄ΡΠΈΡΡ SQL Π² ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP, ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π΅ΠΊΡΠΎΡΠ° Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ.ΠΠΎΠ΄Π΄Π΅Π»Π°Π½Π½ΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ SQL, ΠΌΠΎΠ³ΡΡ Π²Π½Π΅Π΄ΡΠΈΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π΅ΡΠ»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΈΡΡΠΈΡΡ ΡΡΠΈ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅.
ΠΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ° - ΡΠ°ΠΌΡΠ΅ Ρ ΠΈΡΡΡΠ΅ ΠΈΠ· Π²ΡΠ΅Ρ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Ρ Π½Π΅ Π΄Π»Ρ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°, Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΏΠΎΠ·ΠΆΠ΅. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π΄Π΅Π·ΠΈΠ½ΡΠΈΡΠΈΡΡΠ΅Ρ Π²ΡΠ΅ ΡΠ²ΠΎΠΈ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ Π°ΡΠ°ΠΊΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π±ΡΡΡ ΡΡΠ·Π²ΠΈΠΌ Π΄Π»Ρ SQLi Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°, ΠΊΠΎΠ³Π΄Π° Π·Π°ΡΠ°ΠΆΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡ ΠΊΠ°ΠΊ ΠΌΠ΅ΡΠΎΠ΄ ΡΡΠ°ΡΡΠ΅, ΡΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΠΈΡ ΡΠ΅Π³ΠΎΠ΄Π½Ρ; Π°ΡΠ°ΠΊΠΈ ΡΡΠ΄ΠΈΠΌΠ΅Π½ΡΠ°ΡΠ½Ρ ΠΈ Π΄Π°Π²Π½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Ρ.Π’Π°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠ°ΠΊ SQLninja, SQLmap ΠΈ Havij, ΡΠΏΡΠΎΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠΎΡΠ°ΡΡ Π·Π°Π΄Π°ΡΡ Π΄Π»Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ².
ΠΠ΅ΡΡΡΡ Π»Π΅Ρ Π½Π°Π·Π°Π΄ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π±ΡΡΠ΅Π²Π°Π» ΡΠ΅ΡΠ²Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ. Π Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΌΠΎΠΌΠ΅Π½ΡΡ: ΠΌΠ°Π»ΠΎ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΎΡΡ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΈΡΠΎΠΊΠΎΠ΅ ΠΏΡΠΈΠ·Π½Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ SQL-ΠΊΠΎΠ΄Π°, Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΎΡΠ΅Π½Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡΡΠ°Π΅ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΡΠΌ.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ Π±ΡΡΡ Π½Π° ΡΠ°Π³ Π²ΠΏΠ΅ΡΠ΅Π΄ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², ΠΈΡΡΡΠΈΡ Π»Π΅Π³ΠΊΠΎΠ³ΠΎ Π·Π°ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠ΅Π½ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π°ΡΠΈΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°, ΠΊΠ°ΠΊ SQLmap, - ΡΡΠΎ Π±ΡΡΡΡΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ²ΠΈΠ΄Π΅ΡΡ, Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½Ρ Π»ΠΈ Π²Π°ΡΠΈ ΠΌΠ΅ΡΡ ΠΏΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠΊΠΎΠ².SQLmap ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ΅Π³ΠΎΠ΄Π½Ρ, ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΡΠΈΡΡΠΈΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π½ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠΉΡΠ΅ ΠΈΡ , ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΌΠ΅ΡΡ ΠΏΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠΊΠΎΠ² ΡΡΠΏΠ΅ΡΠ½Ρ. ΠΠΎΠ»Π΅Π·Π½ΠΎΠ΅ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅: ΡΠΈΠ½ΡΡ ΠΈ ΠΊΡΠ°ΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ - Π΄Π²Π΅ ΡΡΠΎΡΠΎΠ½Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ΅Π΄Π°Π»ΠΈ.
ΠΡΠΈΠΌΠ΅Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° Π±Π°Π·ΠΎΠ²ΡΡ Π°ΡΠ°ΠΊΡ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ Π²Π²ΠΎΠ΄ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΡ ΠΏΡΠΎΡΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ².ΠΠ½Π΅ΡΠ½ΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π²Π²Π΅Π΄Π΅Π½Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π² ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ°Π·Π° Π΄Π°Π½Π½ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ SQL-Π·Π°ΠΏΡΠΎΡ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π² Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π΄Π»Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠ°ΠΏΡΠΎΡ ΠΊ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
SELECT *
FROM customers
WHERE customer_id = '1234567'
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²Π²Π΅Π» ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π² ΠΏΠΎΠ»Π΅ Π²Π΅Π±-ΡΠΎΡΠΌΡ:
1234567; Π£ΠΠΠΠΠ’Π¬ * ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² WHERE '1' = '1
ΠΠ°ΡΠ΅ΠΌ Π²Π½ΡΡΡΠ΅Π½Π½ΡΡ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΠ»ΡΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ SQL:
SELECT *
FROM customers
WHERE customer_id =' 1234567 ';
Π£ΠΠΠΠΠ’Π¬ *
ΠΠ’ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ²
WHERE 'x' = 'x'
ΠΠΎΠΌΠ½ΠΈΡΠ΅, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ°Π΄ΠΎΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² SQL ΠΏΠΎΠ΄ΡΡΠ΄, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ ΡΠΎΡΠΊΠΎΠΉ Ρ Π·Π°ΠΏΡΡΠΎΠΉ.ΠΠ΅ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ΠΎΡΠΈΡΡΠΈΡΡ Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π»Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΠΎΠΉ ΠΊΠ°Π²ΡΡΠΊΠΈ Β«'Β» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΡ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°Π΄Π΅ΡΡΡ, Ρ Π²Π°Ρ Π±ΡΠ»ΠΈ Ρ ΠΎΡΠΎΡΠΈΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΠ΅ ΠΊΠΎΠΏΠΈΠΈ. ΠΠ΅ΡΠ½ΠΎ? ΠΠ΅ΡΠ½ΠΎ...?
ΠΡΠΎ Π±ΡΠ» Π½Π°ΡΠΎΡΠΈΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²Π΅ΠΊΡΠΎΡΠΎΠ² Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, Π½ΠΎ Π²ΡΠ΅ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΈ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ: Π½Π΅ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡΠΈΡΡΠΈΡΡ Π²Π²ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° SQL.
ΠΠ°ΠΊ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
Π£ΡΡΡΠ°Π½ΠΈΡΡ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π΄Π°ΠΆΠ΅ ΡΠ°ΠΌΡΠ΅ ΡΠΌΠ½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Ρ Π»ΡΡΡΠΈΠΌΠΈ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΡΠΎΠ²Π΅ΡΡΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ.Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π°ΠΆΠ½ΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠΊΠ° Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΈ. ΠΡΠ°Π½Π΄ΠΌΠ°ΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (WAF) ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, Π½ΠΎ Π²Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° Π½Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π½Π° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΡΠ΅Π²Π΅Π½ΡΠΈΠ²Π½ΡΡ ΠΌΠ΅ΡΡ.
Π‘ΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²ΡΠΎΡΠΆΠ΅Π½ΠΈΠΉ (IDS), ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π²ΡΠ΅, ΡΠ°ΠΊ ΠΈ ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° Ρ ΠΎΡΡΠ΅, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½Ρ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ. Π‘Π΅ΡΠ΅Π²ΡΠ΅ IDS ΠΌΠΎΠ³ΡΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΡΠΌΠ΅ΡΠ°ΡΡ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ. IDS Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ ΠΎΡΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΆΡΡΠ½Π°Π»Ρ Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠΎ-ΡΠΎ ΡΡΡΠ°Π½Π½ΠΎΠ΅.
Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΠ΅ΡΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π°ΡΠ°ΠΊΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ½ΡΡΠ½Ρ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΠΌΡ, ΠΈ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠΌ Π΄Π»Ρ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ, Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ.
ΠΠ°ΠΊ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ Π°ΡΠ°ΠΊΠΈ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ
Π‘Π»ΡΡΠ°ΠΉΡΠ΅ Little Bobby Tables ΠΈ ΠΎΡΠΈΡΠ°ΠΉΡΠ΅ Π²Ρ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠ±ΠΎΠΉ Π²Π²ΠΎΠ΄ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²Π°ΡΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΠΈΡΠ°ΡΡ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ ΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Ρ Π½ΠΈΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. Π ΠΏΠΎΡΠ»ΡΡΠ°ΠΉΡΠ΅ Ρ ΠΎΡΠΎΡΠΈΡ Π»ΡΠ΄Π΅ΠΉ ΠΈΠ· OWASP, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΡΠΊΠ°ΠΆΡΡ Π²Π°ΠΌ: Β«ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΄Π½ΠΎ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠΏΠ΅ΡΠ½ΡΡ Π°ΡΠ°ΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π§Π ΠΠΠΠ«Π§ΠΠΠΠ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠΉ Π² Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠ΄Π΅."[ΠΈΡ Π°ΠΊΡΠ΅Π½Ρ]
Π¨ΠΏΠ°ΡΠ³Π°Π»ΠΊΠ° ΠΏΠΎ OWASP SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡΠΌ ΡΠ³Π»ΡΠ±Π»ΡΠ΅ΡΡΡ Π³Π»ΡΠ±ΠΆΠ΅, ΡΠ΅ΠΌ ΠΌΡ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π·Π΄Π΅ΡΡ, Π½ΠΎ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ Ρ SQL-ΠΈΠ½ΡΠ΅ΠΊΡΠΈΡΠΌΠΈ, OWASP ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ Π½Π°ΠΌ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°Π½Π΅ΡΡΠΈ Π² Π±Π΅Π»ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π²Π²ΠΎΠ΄Π° (Π° Π½Π΅ Π² ΡΠ΅ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ), ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ , ΠΈ ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π²ΡΠ΅Ρ Π²Π²ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π΄Π°Π½Π½ΡΡ .
Π’Π°ΠΊΠΆΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΡΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ. ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅ Π½Π°ΡΡΡΠ΅Π½ΠΈΠ΅. Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ Π½Π΅ ΡΠ΄Π°Π΅ΡΡΡ ΠΎΡΠΈΡΡΠΈΡΡ ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ? ΠΠΉ, ΡΡΠΎ ΡΠ»ΡΡΠ°Π΅ΡΡΡ. Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ - Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ Π»ΡΠ΄ΠΈ. ΠΡΠΈΡΡΠΈΡΠ΅ Π²Π²ΠΎΠ΄, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅, ΡΡΠΎ ΡΡΠΎ-ΡΠΎ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡ ΠΏΡΠΎΡΠΊΠΎΠ»ΡΠ·Π½ΡΡΡ ΠΌΠΈΠΌΠΎ Π²Π°Ρ.ΠΠ³ΡΠ°Π½ΠΈΡΡΡΠ΅ ΠΏΡΠ°Π²Π° ΡΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π°ΡΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ? ΠΡΠΆΠ½Ρ Π»ΠΈ Π΅ΠΌΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ DROP TABLES? ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅Ρ. ΠΠ΄Π΅ΡΡ Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠ°Π²Π°, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°.
Π₯ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ»ΠΎΠΆΠ½ΠΈΡΡ SQLi, Ρ ΠΎΡΡ ΠΈ Π½Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΡΠ»ΠΈ Π²Π°ΡΠ΅ΠΌΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Ρ ΡΠ°Π½ΠΈΠΌΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ±ΡΡΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ°Π²Π° Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ.ΠΠ΄Π½Π°ΠΊΠΎ ΠΈΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Ρ Ρ ΡΠ°Π½ΠΈΠΌΡΠΌΠΈ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ, ΠΈ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΡΡΠΎ Π·Π½Π°ΡΡ.