from_string
ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΊΡΠ°Π½ΠΈΡΡΡΡΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π²Π²Π΅ΡΡΠΈ ΠΊΠΎΠ΄ Π² ΡΠ°Π±Π»ΠΎΠ½.
ΠΠΎΠ»ΠΆΠ½ΠΎ ΡΡΠΊΠΎΠ»ΡΠ·Π½ΡΡΡ ΠΎΡ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ ΠΏΡΠΎΡΠ»ΠΎ.
https://github.com/JameelNabbo/Jinja2-Code-execution
https://www.exploit-db.com/exploits/46386
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ·Π΄Π°Π» ΡΡΠΎ ΡΠ΅ΠΏΠΎ ΠΈ CVE, Π½Π΅ Π·Π½Π°Π΅Ρ, ΠΎ ΡΠ΅ΠΌ ΠΎΠ½ΠΈ Π³ΠΎΠ²ΠΎΡΡΡ, ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΡΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ Π±Π΅Π·ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΡ Π»ΡΠ΄Π΅ΠΉ ΠΎ Π½Π΅ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. . Π‘ΠΌ. Https://github.com/JameelNabbo/Jinja2-Code-execution/issues/1 Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π½ΠΈΡ . Π― ΠΎΡΠΏΡΠ°Π²ΠΈΠ» Π² MITER Π·Π°ΠΏΡΠΎΡ Π½Π° Π°Π½Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ CVE.
Π‘ΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Ρ ΠΠΆΠΈΠ½Ρ Π΅ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ from_string
- Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΡΡΠ·Π²ΠΈΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ eval
, ΠΈΠ»ΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° SQL ΡΡΠ·Π²ΠΈΠΌΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ SQL. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ Π² ΡΠ΅Ρ
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°. Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ SQL Π½Π΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ SQL Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
SandboxedEnvironment
ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠΈΡΠΊΠ½ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ, Π° autoescape
ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π΅ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ·Π΄Π°Π» ΡΡΠΎ ΡΠ΅ΠΏΠΎ ΠΈ CVE, Π½Π΅ Π·Π½Π°Π΅Ρ, ΠΎ ΡΠ΅ΠΌ ΠΎΠ½ΠΈ Π³ΠΎΠ²ΠΎΡΡΡ, ΠΈ, ΠΊ ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠ΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΡΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ Π±Π΅Π·ΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΠ»ΠΈ Π³ΡΡΠΏΠΏΡ Π»ΡΠ΄Π΅ΠΉ ΠΎ Π½Π΅ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. . Π‘ΠΌ. Https://github.com/JameelNabbo/Jinja2-Code-execution/issues/1 Π΄Π»Ρ ΠΎΡΠ²Π΅ΡΠ° Π½Π° Π½ΠΈΡ . Π― ΠΎΡΠΏΡΠ°Π²ΠΈΠ» Π² MITER Π·Π°ΠΏΡΠΎΡ Π½Π° Π°Π½Π½ΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ CVE.
Π‘ΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Ρ ΠΠΆΠΈΠ½Ρ Π΅ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ
from_string
- Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΡΡΠ·Π²ΠΈΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρeval
, ΠΈΠ»ΠΈ ΠΊΠ°ΠΆΠ΄Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° SQL ΡΡΠ·Π²ΠΈΠΌΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡ ΡΡΡΠΎΠΊΠΈ SQL. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ Π² ΡΠ΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°. Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ SQL Π½Π΅Ρ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ ΠΈΠ½ΡΠ΅ΠΊΡΠΈΠ΅ΠΉ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ SQL Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.SandboxedEnvironment
ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΈΡΠΊΠ½ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ, Π°autoescape
ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π΅ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ .