ΠΠΎ FreeBSD ΡΡΡΡΠ°Π½Π΅Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π² USB-ΡΡΠ΅ΠΊΠ΅ (CVE-2020-7456), ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΄ΡΠ° ΠΈΠ»ΠΈ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ USB-ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠ΅ΡΠΊΡΠΈΠΏΡΠΎΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² USB HID (Human Interface Device) ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ½ΠΎΠ³ΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠ΅ Π³ΡΡΠΏΠΏΡ. FreeBSD ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄ΠΎ 4 ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ
ΡΡΠΎΠ²Π½Π΅ΠΉ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠΎΠ²Π΅Π½Ρ Π½Π΅ Π±ΡΠ» Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠΎΠ³ΠΎ ΠΆΠ΅ HID-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΡΡΡΠ°Π½Π΅Π½Π° Π² ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΡ
FreeBSD 11.3-RELEASE-p10 ΠΈ 12.1-RELEASE-p6. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π·Π°ΡΠΈΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ «sysctl hw.usb.disable_enumeration=1».
Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡ Π²ΡΡΠ²Π»Π΅Π½Π° Andy Nguyen ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Google ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°Π΅ΡΡΡ Ρ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Π½Π΅Π΄Π°Π²Π½ΠΎ Π°Π½ΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈΠ· Π£Π½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° ΠΡΡΠ΄ΡΡ́ ΠΈ Π€Π΅Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ»ΠΈΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΊΠΎΠ»Ρ ΠΠΎΠ·Π°Π½Π½Ρ. ΠΠ°Π½Π½ΡΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ USBFuzz, ΡΠΈΠΌΡΠ»ΠΈΡΡΡΡΠΈΠΉ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ USB-ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ fuzzing-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ USB-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ². USBFuzz Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Π½Π° GitHub. ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π±ΡΠ»ΠΎ Π²ΡΡΠ²Π»Π΅Π½ΠΎ 26 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ, ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
18 Π² Linux, 4 Π² Windows, 3 Π² macOS ΠΈ ΠΎΠ΄Π½Π° Π²ΠΎ FreeBSD. ΠΠ΅ΡΠ°Π»ΠΈ ΠΏΡΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡΡΡ, ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎ Π»ΠΈΡΡ, ΡΡΠΎ Π΄Π»Ρ 10 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΏΠΎΠ»ΡΡΠ΅Π½Ρ CVE-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ, Π° ΠΏΡΠΎΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ Π² Linux 11 ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΆΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ. ΠΠΎΡ
ΠΎΠΆΡΡ ΡΠ΅Ρ
Π½ΠΈΠΊΡ fuzzing-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠΎΠ½ΠΎΠ²Π°Π»ΠΎΠ² ΠΈΠ· Google, ΠΊΠΎΡΠΎΡΡΠΉ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π²ΡΡΠ²ΠΈΠ» 44 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π² USB-ΡΡΠ΅ΠΊΠ΅ Linux.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru