Facebook прСдстави Pysa, статичСн Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Π·Π° Π΅Π·ΠΈΠΊΠ° Python

Facebook ΠΏΠΎΠ΄Π°Π΄Π΅Π½ΠΎ ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ статичСн Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Писа (Python Static Analyzer), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ уязвимости Π² ΠΊΠΎΠ΄Π° Π½Π° Python. Новият Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½ ΠΊΠ°Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΊΠ° към Π½Π°Π±ΠΎΡ€Π° ΠΎΡ‚ инструмСнти Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ‚ΠΈΠΏΠ° ΠΏΠΎΠ³Ρ€Π΅Π±Π°Π»Π΅Π½ огън ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ Π² Π½Π΅Π³ΠΎΠ²ΠΎΡ‚ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅. Код ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΈ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·Π° Π½Π° MIT.

Pysa прСдоставя Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΏΠΎΡ‚ΠΎΡ†ΠΈΡ‚Π΅ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° изпълнСниС Π½Π° ΠΊΠΎΠ΄, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Ρ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ уязвимости ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ с повСритСлността, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π½Π° мСста, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π½Π΅ трябва Π΄Π° сС ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚.
НапримСр, Pysa ΠΌΠΎΠΆΠ΅ Π΄Π° прослСдява ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ външни Π΄Π°Π½Π½ΠΈ Π² повиквания, ΠΊΠΎΠΈΡ‚ΠΎ стартират външни ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, във Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ Π² SQL конструкции.

Π Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° сС свСТда Π΄ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ опасни обаТдания, ΠΏΡ€ΠΈ ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ трябва Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Π”Π°Π½Π½ΠΈ ΠΎΡ‚ ΡƒΠ΅Π± заявки (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Ρ‡Π½ΠΈΠΊΠ° HttpRequest.GET Π² Django) сС считат Π·Π° ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ, Π° извиквания ΠΊΠ°Ρ‚ΠΎ eval ΠΈ os.open сС считат Π·Π° опасни ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈ. Pysa прослСдява ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅Π· Π²Π΅Ρ€ΠΈΠ³Π°Ρ‚Π° ΠΎΡ‚ извиквания Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΡΠ²ΡŠΡ€Π·Π²Π° ΠΈΠ·Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ с ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ опасни мСста Π² ΠΊΠΎΠ΄Π°. Π’ΠΈΠΏΠΈΡ‡Π½Π° уязвимост, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π° с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Pysa, спомСнава ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ΠΎ прСнасочванС (CVE-2019 19775-) Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π·Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ Zulip, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΎ ΠΎΡ‚ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° нСпочистСни външни ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΈ изобразяванС Π½Π° ΠΌΠΈΠ½ΠΈΠ°Ρ‚ΡŽΡ€ΠΈ.

Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈΡ‚Π΅ Π½Π° Pysa Π·Π° прослСдяванС Π½Π° ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠ³Π°Ρ‚ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠΈ Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ€Π°ΠΌΠΊΠΈ ΠΈ Π·Π° опрСдСлянС Π½Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° потрСбитСлски Π΄Π°Π½Π½ΠΈ. НапримСр, Pysa Π±Π΅Π· Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ настройки ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Ρ€Π°ΠΌΠΊΠΈ Django ΠΈ Tornado. Pysa ΠΌΠΎΠΆΠ΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ΅ чСсто срСщани уязвимости Π² ΡƒΠ΅Π± прилоТСнията, ΠΊΠ°Ρ‚ΠΎ SQL ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ ΠΈ скриптовС ΠΌΠ΅ΠΆΠ΄Ρƒ сайтовС (XSS).

Π’ΡŠΠ² Facebook Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΡŠΡ‚ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΊΠΎΠ΄Π° Π½Π° услугата Instagram. ΠŸΡ€Π΅Π· ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ тримСсСчиС Π½Π° 2020 Π³. Pysa ΠΏΠΎΠΌΠΎΠ³Π½Π° Π·Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° 44% ΠΎΡ‚ всички ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΡ‚Π΅ Π½Π° Facebook ΠΎΡ‚ΠΊΡ€ΠΈΡ…Π° Π² ΡΡŠΡ€Π²ΡŠΡ€Π½Π°Ρ‚Π° ΠΊΠΎΠ΄ΠΎΠ²Π° Π±Π°Π·Π° Π½Π° Instagram.
ΠžΠ±Ρ‰ΠΎ автоматизираният процСс Π½Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π½Π° Pysa ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π° 330 ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ 49 (15%) бяха ΠΎΡ†Π΅Π½Π΅Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΈ 131 (40%) ΠΊΠ°Ρ‚ΠΎ нСсСриозни. Π’ 150 случая (45%) ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ са класифицирани ΠΊΠ°Ρ‚ΠΎ Ρ„Π°Π»ΡˆΠΈΠ²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π½ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€