[21903] 2021-04-23_恶意样本分析手册–特殊方法篇

文档创建者:s7ckTeam
浏览次数:1
最后更新:2025-01-18
2021-04-23_恶意样本分析手册–特殊方法篇 L e m o n S e c   2 0 2 1 - 0 4 - 2 3 w i n d o w s S C P S C M S C M S t a r t S e r v i c e C t r l D i s p a t c h e r S t a r t S e r v i c e C t r l D i s p a t c h e r w i n d o w s S C P S C M S C M S t a r t S e r v i c e C t r l D i s p a t c h e r S t a r t S e r v i c e C t r l D i s p a t c h e r S t a r t S e r v i c e C t r l D i s p a t c h e r S C M S C M S C M S t a r t S e r v i c e C t r l D i s p a t c h e r 线 线 线 S t a r t S e r v i c e C t r l D i s p a t c h e r S C M m a i n 便 退 S C M S c S t a r t S e r v i c e S c S t a r t S e r v i c e w i n d o w s I m a g e P a t h T y p e S E R V I C E _ W I N D O W S _ S H A R E _ P R O C E S S ( 0 x 2 0 ) S C M S C M I m a g e P a t h 便 I m a g e P a t h S C M S C M I m a g e P a t h S C M I m a g e P a t h S C M S C M S c L o g o n A n d S t a r t I m a g e S C M l s a s s L o g o n U s e r E x S C M S C M L s a S t o r e P r i v a t e D a t a l s a s s S e c r e t s L o g o n U s e r E x 访 W i n d o w s 使   访 S C M 访 S c l o g o n A n d S t a r t I m a g e S C M w i n d o w s C r e a t e P r o d c e s s A s U s e r S C M P i p e N e t N t C o n t r o l P i p e X X S C M S C M R e s u m e T h r e a d S C M H K L M S Y S T E M C u r r e n t C o n t r o l S e t C o n t r o l S e r v i c e s P i p e T i m e o u t S C M S t a r t S e r v i c e C t r l D i s p a t c h e r S C M S e r v i c e s P i p e T i m e o u t S C M 使 3 0 S C M S C M S C M S C M S C M S t a r t S e r v i c e C t r l D i s p a t c h e r S C M S c S t a r t S e r v i c e T y p e S E R V I C E _ K E R N E L _ D R I V E R S E R V I C E _ F I L E _ S Y S T E M _ D R I V E R S c S t a r t S e r v i c e S c L o a d D e v i c e D r i v e r S c L o a d D e v i c e D r i v e r 使 S C M N t L o a d D r i v e r I m a g e P a t h w i n d o w s I m a g e P a t h S C M % S y s t e m R o o t % S y s t e m 3 2 D r i v e r s S c A u t o s t a r t S e r v i c e s S C M D e p e n d O n S e r v i c e S C M S C M S c I n i t D e l a y S t a r t 线 S c A u t o S t a r t S e r v i c e s 线 1 2 0 H T M L S Y S T E M C u r r e n t C o n t r o l S e t C o n t r o l A u t o S t a r t D e l a y S C M B a s e N a m e O b j e c t s S C _ A u t o s t a r t C o m p l e t e w i n d o w s   s e t u p p i d w i n d b g f i l e - > A t t a c h   t o   a   P r o c e s s O K 使
使 w i n d b g 使 1 .   使 w i n d b g e x e I m a g e   F i l e I m a g e 0 1 0 e d i t o r A S C : U s e r s x x x x x A p p D a t a R o a m i n g 0 1 0 e d i t o r A S . e x e I m a g e 0 1 0 e d i t o r A S . e x e D e b u g g e r w i n d b g 2 .  
3 .   便 w i n d b g 3 0 H K L M S Y S T E M C u r r e n t C o n t r o l S e t C o n t r o l S e r v i c e s P i p e T i m e o u t i n t 3 使 S t a r t S e r v i c e C t r l D i s p a t c h e r 使 / 线 ( M e m o r y - M a p p e d   F i l e s ) 使 使 I / O W i n 3 2   A P I 访 使 使 ( 1 ) ( 2 ) ( ) I P C ( ) ( 3 ) I P C ( ) 访 # i n c l u d e   " s t d a f x . h " # i n c l u d e   " w i n d o w s . h " # i n c l u d e   " s t d i o . h " i n t   m a i n ( ) { H A N D L E   h F i l e   =   C r e a t e F i l e ( T E X T ( " c : z j . d a t " ) ,   G E N E R I C _ R E A D   |   G E N E R I C _ W R I T E ,
0 ,   N U L L ,   C R E A T E _ A L W A Y S ,   F I L E _ A T T R I B U T E _ N O R M A L ,   N U L L ) ; i f   ( h F i l e   = =   N U L L ) { p r i n t f ( " c r e a t e   f i l e   e r r o r ! " ) ; r e t u r n   0 ; } / /     H A N D L E   h F i l e   =   ( H A N D L E ) 0 x f f f f f f f f ;   / / H A N D L E   h M a p   =   C r e a t e F i l e M a p p i n g ( h F i l e ,   N U L L ,   P A G E _ R E A D W R I T E ,   0 ,   1 0 2 4   *   1 0 2 4 ,   T E X T ( " Z J " ) ) ; i n t   r s t   =   G e t L a s t E r r o r ( ) ; i f   ( h M a p   ! =   N U L L   & &   r s t   = =   E R R O R _ A L R E A D Y _ E X I S T S ) { p r i n t f ( " h M a p   e r r o r n " ) ; C l o s e H a n d l e ( h M a p ) ; h M a p   =   N U L L ; r e t u r n   0 ; } C H A R *   p s z T e x t   =   N U L L ; p s z T e x t   =   ( C H A R * ) M a p V i e w O f F i l e ( h M a p ,   F I L E _ M A P _ A L L _ A C C E S S ,   0 ,   0 ,   1 0 2 4   *   1 0 2 4 ) ; i f   ( p s z T e x t   = =   N U L L ) { p r i n t f ( " v i e w   m a p   e r r o r ! " ) ; r e t u r n   0 ; } / / p r i n t f ( " : " ) ; s p r i n t f ( p s z T e x t ,   " h e l l o   m y   f i r s t   m a p p i n g   f i l e ! n " ) ;   / / p r i n t f ( " % s " ,   p s z T e x t ) ; w h i l e   ( 1 ) { p r i n t f ( " " ) ; p r i n t f ( p s z T e x t ) ; S l e e p ( 3 0 0 0 ) ;
} g e t c h a r ( ) ; U n m a p V i e w O f F i l e ( ( L P C V O I D ) p s z T e x t ) ; C l o s e H a n d l e ( h M a p ) ; C l o s e H a n d l e ( h F i l e ) ; r e t u r n   0 ; } # i n c l u d e   " s t d a f x . h " # i n c l u d e   " w i n d o w s . h " # i n c l u d e   " s t d i o . h " i n t   m a i n ( ) { H A N D L E   h M a p   =   O p e n F i l e M a p p i n g ( F I L E _ M A P _ A L L _ A C C E S S ,   T R U E ,   T E X T ( " Z J " ) ) ; i f   ( h M a p   = =   N U L L ) { p r i n t f ( " o p e n   f i l e   m a p   e r r o r ! " ) ; r e t u r n   0 ; }   C H A R *   p s z T e x t   =   N U L L ; p s z T e x t   =   ( C H A R * ) M a p V i e w O f F i l e ( h M a p ,   F I L E _ M A P _ A L L _ A C C E S S ,   0 ,   0 ,   1 0 2 4   *   1 0 2 4 ) ; i f   ( p s z T e x t   = =   N U L L ) { p r i n t f ( " m a p   v i e w   e r r o r ! n " ) ; r e t u r n   0 ; } p r i n t f ( " " ) ; p r i n t f ( p s z T e x t ) ;   / / ( )
使 C r e a t e F i l e C r e a t e F i l e M a p p i n g M a p V i e w O f F i l e s p r i n t f 使 W r i t e F i l e W i n d o w s 使 C r e a t e F i l e M a p p i n g   W i n d o w s     h M a p 访   M a p V i e w O f F i l e   使   W i n d o w s   访 使 O p e n F i l e M a p p i n g     h M a p   M a p V i e w O f F i l e   H e l l o W o r l d h M a p p r i n t f ( " n " ) ; s p r i n t f ( p s z T e x t ,   " s e c o n d   d a t a ! n " ) ;   / / p r i n t f ( " % s r n " ,   p s z T e x t ) ; g e t c h a r ( ) ; U n m a p V i e w O f F i l e ( p s z T e x t ) ; C l o s e H a n d l e ( h M a p ) ; h M a p   =   N U L L ; r e t u r n   0 ; } # i n c l u d e   " s t d a f x . h " # i n c l u d e   < w i n d o w s . h > # i n c l u d e   < i o s t r e a m > # i n c l u d e   < s t r i n g > # i n c l u d e   < c s t r i n g > u s i n g   n a m e s p a c e   s t d ; i n t   m a i n ( ) { w c h a r _ t   s t r M a p N a m e [ ] = L " S h a r e M e m o r y " ;                                 / /   s t r i n g   s t r C o m D a t a ( " H e l l o W o r l d " ) ;                 / /  
L P V O I D   p B u f f e r ;                                                                         / /   / /   H A N D L E   h M a p   =   : : O p e n F i l e M a p p i n g ( F I L E _ M A P _ A L L _ A C C E S S ,   0 , ( L P C W S T R ) s t r M a p N a m e ) ; i f   ( N U L L   = =   h M a p ) {         / /   h M a p   =   : : C r e a t e F i l e M a p p i n g ( I N V A L I D _ H A N D L E _ V A L U E , N U L L , P A G E _ R E A D W R I T E , 0 , s t r C o m D a t a . l e n g t h ( )   +   1 , s t r M a p N a m e ) ; / /   p B u f f e r   =   : : M a p V i e w O f F i l e ( h M a p ,   F I L E _ M A P _ A L L _ A C C E S S ,   0 ,   0 ,   0 ) ; s t r c p y ( ( c h a r * ) p B u f f e r ,   s t r C o m D a t a . c _ s t r ( ) ) ; c o u t   < <   " "   < <   ( c h a r   * ) p B u f f e r   < <   e n d l ; } e l s e {         / /   p B u f f e r   =   : : M a p V i e w O f F i l e ( h M a p ,   F I L E _ M A P _ A L L _ A C C E S S ,   0 ,   0 ,   0 ) ; c o u t   < <   " "   < <   ( c h a r   * ) p B u f f e r   < <   e n d l ; } g e t c h a r ( ) ;                         / /   / /   : : U n m a p V i e w O f F i l e ( p B u f f e r ) ; : : C l o s e H a n d l e ( h M a p ) ; s y s t e m ( " p a u s e " ) ; r e t u r n   0 ; }
O p e n F i l e M a p p i n g C r e a t e F i l e M a p p i n g M a p V i e w O f F i l e M a p V i e w O f F i l e M a p V i e w O f F i l e 使 I / O 使 C r e a t e P i p e R e a d F i l e W r i t e F i l e # i n c l u d e   " s t d a f x . h " # i n c l u d e   < W i n d o w s . h > # i n c l u d e   < i o s t r e a m > i n t   m a i n ( ) { a u t o   n u m A r g s   =   0 ; C o m m a n d L i n e T o A r g v W ( G e t C o m m a n d L i n e W ( ) ,   & n u m A r g s ) ; i f   ( n u m A r g s   >   1 ) { s t d : : c o u t   < <   " "   < <   s t d : : e n d l ; C H A R   s z B u f f e r [ 1 6 ] {   0   } ; R e a d F i l e ( G e t S t d H a n d l e ( S T D _ I N P U T _ H A N D L E ) ,   s z B u f f e r ,   s i z e o f ( s z B u f f e r ) ,   n u l l p t r ,   n u l l p t r ) ; s t d : : c o u t   < <   s z B u f f e r   < <   s t d : : e n d l ; } e l s e { s t d : : c o u t   < <   " "   < <   s t d : : e n d l ; S E C U R I T Y _ A T T R I B U T E S   s a {   0   } ; s a . n L e n g t h   =   s i z e o f ( s a ) ; s a . b I n h e r i t H a n d l e   =   T R U E ; H A N D L E   h R e a d ;
H e l l o W o r l d W r i t e F i l e R e a d F i l e C r e a t e P i p e W r i t e F i l e R e a d F i l e C r e a t e P i p e ( N a m e d   P i p e ) 使 使 C r e a t e N a m e d P i p e W r i t e F i l e R e a d F i l e C r e a t e F i l e R e a d F i l e W r i t e F i l e H A N D L E   h W r i t e ; C r e a t e P i p e ( & h R e a d ,   & h W r i t e ,   & s a ,   0 ) ; S T A R T U P I N F O W   s i {   0   } ; s i . c b   =   s i z e o f ( s i ) ; s i . h S t d I n p u t   =   h R e a d ; s i . d w F l a g s   =   S T A R T F _ U S E S T D H A N D L E S ; P R O C E S S _ I N F O R M A T I O N   p i {   0   } ; W C H A R   s z C o m m a n d [ 5 1 2 ] {   0   } ; G e t M o d u l e F i l e N a m e W ( n u l l p t r ,   s z C o m m a n d ,   _ c o u n t o f ( s z C o m m a n d ) ) ; w c s c a t ( s z C o m m a n d ,   L "   t e s t " ) ; C r e a t e P r o c e s s W ( n u l l p t r ,   s z C o m m a n d ,   n u l l p t r ,   n u l l p t r ,   T R U E ,   C R E A T E _ N E W _ C O N S O L E ,   n u l l p t r ,   n u l l p t r ,   & s i ,   & p i ) ; W r i t e F i l e ( h W r i t e ,   " H e l l o W o r l d " ,   5 ,   n u l l p t r ,   n u l l p t r ) ; } s y s t e m ( " p a u s e " ) ; r e t u r n   0 ; } # d e f i n e   R E A D _ P I P E       L " . p i p e R e a d P i p e " # d e f i n e   W R I T E _ P I P E     L " . p i p e W r i t e P i p e " t y p e d e f   s t r u c t   _ U S E R _ C O N T E X T _
{ H A N D L E   h P i p e ; H A N D L E   h E v e n t ; } U S E R _ C O N T E X T , * P U S E R _ C O N T E X T ; U S E R _ C O N T E X T     C o n t e x t [ 2 ]   =   { 0 } ; H A N D L E   h T h r e a d [ 2 ]   =   { 0 } ; B O O L     W r i t e P i p e ( ) ; B O O L     R e a d P i p e ( ) ; B O O L     b O k   =   F A L S E ; D W O R D   W I N A P I   W r i t e P i p e T h r e a d ( L P V O I D   L P P a r a m ) ; D W O R D   W I N A P I   R e a d P i p e T h r e a d ( L P V O I D   L P P a r a m ) ; i n t   _ t m a i n ( i n t   a r g c ,   T C H A R *   a r g v [ ] ,   T C H A R *   e n v p [ ] ) { i n t   n R e t C o d e   =   0 ; H A N D L E   h P i p e   =   N U L L ; i f   ( W r i t e P i p e ( ) = = F A L S E ) { r e t u r n   - 1 ; } i f   ( R e a d P i p e ( ) = = F A L S E ) { r e t u r n   - 1 ; } i n t   i I n d e x   =   0 ; w h i l e   ( T R U E ) { i f   ( b O k = = T R U E ) { S e t E v e n t ( C o n t e x t [ 0 ] . h E v e n t ) ; S e t E v e n t ( C o n t e x t [ 1 ] . h E v e n t ) ; S l e e p ( 1 ) ;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则