ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ Intezer ΠΈ BlackBerry ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ»ΠΈ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΠ, ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠ΅Π΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Simbiote ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ΅ Π΄Π»Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ Π±ΡΠΊΠ΄ΠΎΡΠΎΠ² ΠΈ rootkit-ΠΎΠ² Π½Π° ΡΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Linux. ΠΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ΅ ΠΠ Π±ΡΠ»ΠΎ Π²ΡΡΠ²Π»Π΅Π½ΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ ΡΡΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ ΡΡΠ΄Π° ΡΡΡΠ°Π½ ΠΠ°ΡΠΈΠ½ΡΠΊΠΎΠΉ ΠΠΌΠ΅ΡΠΈΠΊΠΈ. ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Simbiote Π² ΡΠΈΡΡΠ΅ΠΌΡ Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ root-Π΄ΠΎΡΡΡΠΏ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ Π½Π΅ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΠΈΠ»ΠΈ ΡΡΠ΅ΡΠΊΠΈ ΡΡΡΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ. Simbiote ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΈΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΠΎΡΠ»Π΅ Π²Π·Π»ΠΎΠΌΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ Π°ΡΠ°ΠΊ, ΡΠΊΡΡΡΠΈΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π΄ΡΡΠ³ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ Simbiote ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² ΡΠΎΡΠΌΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° Π²ΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° LD_PRELOAD ΠΈ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΠ½Π½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΡΠΊΡΡΠ²Π°ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ Π±ΡΠΊΠ΄ΠΎΡΠΎΠΌ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΊΠ»ΡΡΠ°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ Π² /proc, ΡΠΊΡΡΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ , ΠΈΡΠΊΠ»ΡΡΠ°ΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π² Π²ΡΠ²ΠΎΠ΄Π΅ ldd (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ execve ΠΈ Π°Π½Π°Π»ΠΈΠ· Π²ΡΠ·ΠΎΠ²ΠΎΠ² Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ LD_TRACE_LOADED_OBJECTS), Π½Π΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠΊΠ΅ΡΡ.
ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΠΎΡ ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ°ΡΠΈΠΊΠ° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ libpcap, ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ ΡΡΠ΅Π½ΠΈΡ /proc/net/tcp ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π² ΡΠ΄ΡΠΎ eBPF-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅ΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΡΡΠ°ΡΠΈΠΊΠ° ΠΈ ΠΎΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΊ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ΅ΡΠ΅Π²ΡΠΌ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ. eBPF-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ Π² ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ²ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ°, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΡΡΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ Π±ΡΠΊΠ΄ΠΎΡΠ° Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΎΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ², Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΏΠΎΠ·Π΄Π½Π΅Π΅.
Simbiote ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΠΎΠΉΡΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΊΡΠ°ΠΆΠ° ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π½Π΅ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΎΡΠΊΡΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², Π° ΡΠ΅ΡΠ΅Π· ΠΏΠ΅ΡΠ΅Ρ Π²Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ ΠΈΠ· ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ΄ΠΌΠ΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠΈΡΡ Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΏΠ°ΡΠΎΠ»Ρ ΠΈΠ»ΠΈ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Π΄Π°Π½Π½ΡΠ΅ Ρ ΠΊΠ»ΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ°). ΠΠ»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π° Simbiote ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠ²Π°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ PAM-Π²ΡΠ·ΠΎΠ²Ρ (Pluggable Authentication Module), ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ΅ΡΠ΅Π· SSH Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌΠΈ Π°ΡΠ°ΠΊΡΡΡΠΈΠΌΠΈ ΡΡΡΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΊΡΡΡΠ°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Π΄ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ root ΡΠ΅ΡΠ΅Π· ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ HTTP_SETTHIS.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru