[15184] 2020-03-28_CobaltStrike折腾踩坑填坑记录

文档创建者:s7ckTeam
浏览次数:4
最后更新:2025-01-18
2020-03-28_CobaltStrike折腾踩坑填坑记录 C o b a l t   S t r i k e C a 3 t i e 1   F r e e B u f   2 0 2 0 - 0 3 - 2 8 0 X 0 0   C o b a l t   S t r i k e 西 西 C o b a l t   s t r i k e 便 C o b a t l   s t r i k e 0 x 0 1 使 s t a g e s t a g e r , ( ) ) C o b a l t   s t r i k e ( s t a g e s t a g e r ) s t a g e r s t a g e s t a g e s t a g e r ( h t t p d n s t c p ) s t a g e P a y l o a d   S t a g i n g C o b a l t   s t r i k e 线 便 t e a m s e r v e r P a y l o a d   S t a g e l e s s S t a g e l e s s A t t a c k - > P a c k a g e - > W i n d o w s   E x e c u t e a b l e s d n s 线 B 0 y 1 n 4 o 4 0 x 0 2   3 . 1 4 5 4 3 . 1 4 l i c e n s e c o m m o n / A u t h o r i z a t i o n . c l a s s p u b l i c   A u t h o r i z a t i o n ( )   {         S t r i n g   s t r   =   C o m m o n U t i l s . c a n o n i c a l i z e ( " c o b a l t s t r i k e . a u t h " ) ;         i f   ( ! ( n e w   F i l e ( s t r ) ) . e x i s t s ( ) )             t r y   {                 F i l e   f i l e   =   n e w   F i l e ( g e t C l a s s ( ) . g e t P r o t e c t i o n D o m a i n ( ) . g e t C o d e S o u r c e ( ) . g e t L o c a t i o n ( ) . t o U R I ( ) ) ;                 i f   ( f i l e . g e t N a m e ( ) . t o L o w e r C a s e ( ) . e n d s W i t h ( " . j a r " ) )                     f i l e   =   f i l e . g e t P a r e n t F i l e ( ) ;                   s t r   =   ( n e w   F i l e ( f i l e ,   " c o b a l t s t r i k e . a u t h " ) ) . g e t A b s o l u t e P a t h ( ) ;             }   c a t c h   ( E x c e p t i o n   e x c e p t i o n )   {                 M u d g e S a n i t y . l o g E x c e p t i o n ( " t r o u b l e   l o c a t i n g   a u t h   f i l e " ,   e x c e p t i o n ,   f a l s e ) ;             }             b y t e [ ]   a r r a y O f B y t e 1   =   C o m m o n U t i l s . r e a d F i l e ( s t r ) ;         i f   ( a r r a y O f B y t e 1 . l e n g t h   = =   0 )   {             t h i s . e r r o r   =   " C o u l d   n o t   r e a d   "   +   s t r ;             r e t u r n ;         }           A u t h C r y p t o   a u t h C r y p t o   =   n e w   A u t h C r y p t o ( ) ;         b y t e [ ]   a r r a y O f B y t e 2   =   a u t h C r y p t o . d e c r y p t ( a r r a y O f B y t e 1 ) ;         i f   ( a r r a y O f B y t e 2 . l e n g t h   = =   0 )   {             t h i s . e r r o r   =   a u t h C r y p t o . e r r o r ( ) ;             r e t u r n ;         }           S t r i n g [ ]   a r r a y O f S t r i n g   =   C o m m o n U t i l s . t o A r r a y ( C o m m o n U t i l s . b S t r i n g ( a r r a y O f B y t e 2 ) ) ;         i f   ( a r r a y O f S t r i n g . l e n g t h   <   4 )   {             t h i s . e r r o r   =   " a u t h   c o n t e n t   i s   o n l y   "   +   a r r a y O f S t r i n g . l e n g t h   +   "   i t e m s " ;             r e t u r n ;         }           t h i s . l i c e n s e k e y   =   a r r a y O f S t r i n g [ 0 ] ;         i f   ( " f o r e v e r " . e q u a l s ( a r r a y O f S t r i n g [ 1 ] ) )   {             t h i s . v a l i d t o   =   a r r a y O f S t r i n g [ 1 ] ;             M u d g e S a n i t y . s y s t e m D e t a i l ( " v a l i d   t o " ,   " p e r p e t u a l " ) ;         }   e l s e   {             t h i s . v a l i d t o   =   " 2 0 "   +   a r r a y O f S t r i n g [ 1 ] ;             M u d g e S a n i t y . s y s t e m D e t a i l ( " v a l i d   t o " ,   C o m m o n U t i l s . f o r m a t D a t e A n y ( " M M M M M   d ,   Y Y Y Y " ,   g e t E x p i r a t i o n D a t e ( ) ) ) ;
l i s t e n e r s s o o k i n g E x i t C o b a l t   s t r i k e e x i t s s o o k i n g J a v a s s o o k i n g j a r j a r   线 3 0 e x i t b e a c o n             M u d g e S a n i t y . s y s t e m D e t a i l ( " v a l i d   t o " ,   C o m m o n U t i l s . f o r m a t D a t e A n y ( " M M M M M   d ,   Y Y Y Y " ,   g e t E x p i r a t i o n D a t e ( ) ) ) ;         }           t h i s . w a t e r m a r k   =   C o m m o n U t i l s . t o N u m b e r ( a r r a y O f S t r i n g [ 2 ] ,   0 ) ;         t h i s . v a l i d   =   t r u e ;         M u d g e S a n i t y . s y s t e m D e t a i l ( " i d " ,   t h i s . w a t e r m a r k   +   " " ) ;     } w a t e r m a r k l i c e n s e k e y v a l i d t o v a l i d   p u b l i c   A u t h o r i z a t i o n ( )   {         t h i s . v a l i d   =   t r u e ;         t h i s . v a l i d t o   =   " f o r e v e r " ;         t h i s . l i c e n s e k e y   =   " C a r t i e r " ;         t h i s . w a t e r m a r k   =   1 ;         M u d g e S a n i t y . s y s t e m D e t a i l ( " v a l i d   t o " ,   " p e r p e t u a l " ) ;         M u d g e S a n i t y . s y s t e m D e t a i l ( " i d " ,   t h i s . w a t e r m a r k   +   " " ) ;     } b e a c o n / B e a c o n C 2 . c l a s s p r o t e c t e d   b o o l e a n   i s P a d d i n g R e q u i r e d ( )   {         b o o l e a n   b o o l   =   f a l s e ;         t r y   {             Z i p F i l e   z i p F i l e   =   n e w   Z i p F i l e ( t h i s . a p p d ) ;             E n u m e r a t i o n < ?   e x t e n d s   Z i p E n t r y >   e n u m e r a t i o n   =   z i p F i l e . e n t r i e s ( ) ;             w h i l e   ( e n u m e r a t i o n . h a s M o r e E l e m e n t s ( ) )   {                 Z i p E n t r y   z i p E n t r y   =   e n u m e r a t i o n . n e x t E l e m e n t ( ) ;                 l o n g   l 1   =   C o m m o n U t i l s . c h e c k s u m 8 ( z i p E n t r y . g e t N a m e ( ) ) ;                 l o n g   l 2   =   z i p E n t r y . g e t N a m e ( ) . l e n g t h ( ) ;                 i f   ( l 1   = =   7 5 L   & &   l 2   = =   2 1 L )   {                     i f   ( z i p E n t r y . g e t C r c ( )   ! =   1 6 6 1 1 8 6 5 4 2 L   & &   z i p E n t r y . g e t C r c ( )   ! =   1 3 0 9 8 3 8 7 9 3 L )                         b o o l   =   t r u e ;                       c o n t i n u e ;                 }                   i f   ( l 1   = =   1 4 4 L   & &   l 2   = =   2 0 L )   {                     i f   ( z i p E n t r y . g e t C r c ( )   ! =   1 7 0 1 5 6 7 2 7 8 L   & &   z i p E n t r y . g e t C r c ( )   ! =   3 0 3 0 4 9 6 0 8 9 L )                         b o o l   =   t r u e ;                       c o n t i n u e ;                 }                   i f   ( l 1   = =   6 2 L   & &   l 2   = =   2 6 L   & &   z i p E n t r y . g e t C r c ( )   ! =   2 9 1 3 6 3 4 7 6 0 L   & &   z i p E n t r y . g e t C r c ( )   ! =   3 7 6 1 4 2 4 7 1 L )                     b o o l   =   t r u e ;               }               z i p F i l e . c l o s e ( ) ;         }   c a t c h   ( T h r o w a b l e   t h r o w a b l e )   { }         r e t u r n   b o o l ;     } p u b l i c   B e a c o n C 2 ( P r o f i l e   p a r a m P r o f i l e ,   B e a c o n D a t a   p a r a m B e a c o n D a t a ,   R e s o u r c e s   p a r a m R e s o u r c e s )   {         t h i s . c 2 p r o f i l e   =   p a r a m P r o f i l e ;         t h i s . r e s o u r c e s   =   p a r a m R e s o u r c e s ;         t h i s . d a t a   =   p a r a m B e a c o n D a t a ;         t h i s . c h a n n e l _ h t t p   =   n e w   B e a c o n H T T P ( p a r a m P r o f i l e ,   t h i s ) ;
b e a c o n / B e a c o n D a t a . c l a s s 0 x 0 3   C D N + T e a m s e r v e r ( [ ] )         t h i s . c h a n n e l _ d n s   =   n e w   B e a c o n D N S ( p a r a m P r o f i l e ,   t h i s ) ;         t h i s . s o c k s   =   n e w   B e a c o n S o c k s ( t h i s ) ;         t h i s . a p p d   =   g e t C l a s s ( ) . g e t P r o t e c t i o n D o m a i n ( ) . g e t C o d e S o u r c e ( ) . g e t L o c a t i o n ( ) . g e t P a t h ( ) ;         p a r a m B e a c o n D a t a . s h o u l d P a d ( i s P a d d i n g R e q u i r e d ( ) ) ;         / / B e a c o n D a t a s h o u l d P a d         t h i s . p a r s e r s . a d d ( n e w   M i m i k a t z C r e d e n t i a l s ( p a r a m R e s o u r c e s ) ) ;         t h i s . p a r s e r s . a d d ( n e w   M i m i k a t z S a m D u m p ( p a r a m R e s o u r c e s ) ) ;         t h i s . p a r s e r s . a d d ( n e w   D c S y n c C r e d e n t i a l s ( p a r a m R e s o u r c e s ) ) ;         t h i s . p a r s e r s . a d d ( n e w   M i m i k a t z D c S y n c C S V ( p a r a m R e s o u r c e s ) ) ;         t h i s . p a r s e r s . a d d ( n e w   S c a n R e s u l t s ( p a r a m R e s o u r c e s ) ) ;         t h i s . p a r s e r s . a d d ( n e w   N e t V i e w R e s u l t s ( p a r a m R e s o u r c e s ) ) ;     } p u b l i c   v o i d   s h o u l d P a d ( b o o l e a n   p a r a m B o o l e a n )   {         t h i s . s h o u l d P a d   =   p a r a m B o o l e a n ;         t h i s . w h e n   =   S y s t e m . c u r r e n t T i m e M i l l i s ( )   +   1 8 0 0 0 0 0 L ;     }     p u b l i c   v o i d   t a s k ( S t r i n g   p a r a m S t r i n g ,   b y t e [ ]   p a r a m A r r a y O f b y t e )   {         s y n c h r o n i z e d   ( t h i s )   {             L i s t < b y t e [ ] >   l i s t   =   g e t Q u e u e ( p a r a m S t r i n g ) ;             / / b e a c o n 线 3 0             i f   ( t h i s . s h o u l d P a d   & &   S y s t e m . c u r r e n t T i m e M i l l i s ( )   >   t h i s . w h e n )   {                 C o m m a n d B u i l d e r   c o m m a n d B u i l d e r   =   n e w   C o m m a n d B u i l d e r ( ) ;                 c o m m a n d B u i l d e r . s e t C o m m a n d ( 3 ) ;                 c o m m a n d B u i l d e r . a d d S t r i n g ( p a r a m A r r a y O f b y t e ) ;                 l i s t . a d d ( c o m m a n d B u i l d e r . b u i l d ( ) ) ;             }   e l s e   {                 l i s t . a d d ( p a r a m A r r a y O f b y t e ) ;             }               t h i s . t a s k e d . a d d ( p a r a m S t r i n g ) ;         }       } s h o u l d P a d t h i s . s h o u l d P a d   =   p a r a m B o o l e a n ; t h i s . s h o u l d P a d   =   f a l s e ;
L i s t e n e r H o s t C D N 使 p o w e r s h e l l 访 c d n s t a g e r t e a m s e r v e r p r o f i l e h t t p - g e t H o s t C D N 访 t e a m s e r v e r P r o x y , 使 N g i n x 线 I P N g i n x I P C D N C D N I P s t a g e r s t a g e r s t a g e m a l l e a b l e   p r o f i l e h t t p - s t a g e r s t a g e s e r v e r / S e r v e r U t i l s . c l a s s p u b l i c   s t a t i c   S t r i n g   g e t R e m o t e A d d r e s s ( P r o f i l e   p a r a m P r o f i l e ,   M a p   p a r a m M a p )   {         b o o l e a n   b o o l   =   p a r a m P r o f i l e . o p t i o n ( " . h t t p - c o n f i g . t r u s t _ x _ f o r w a r d e d _ f o r " ) ;         i f   ( b o o l   & &   p a r a m M a p . c o n t a i n s K e y ( " X - F o r w a r d e d - F o r " ) )   {             S t r i n g   s t r 1   =   ( S t r i n g ) p a r a m M a p . g e t ( " X - F o r w a r d e d - F o r " ) ;             i f   ( s t r 1 . i n d e x O f ( " , " )   >   - 1 )   {                 s t r 1   =   C o m m o n U t i l s . s t r r e p ( s t r 1 ,   "   " ,   " " ) ;                 S t r i n g S t a c k   s t r i n g S t a c k   =   n e w   S t r i n g S t a c k ( s t r 1 ,   " , " ) ;                 s t r 1   =   s t r i n g S t a c k . s h i f t ( ) ;             }               i f   ( C o m m o n U t i l s . i s I P ( s t r 1 )   | |   C o m m o n U t i l s . i s I P v 6 ( s t r 1 ) )                 r e t u r n   s t r 1 ;               C o m m o n U t i l s . p r i n t _ e r r o r ( " r e m o t e   a d d r e s s   ' "   +   ( S t r i n g ) p a r a m M a p . g e t ( " X - F o r w a r d e d - F o r " )   +   " '   i n   X - F o r w a r d e d - F o r   h e a d e r   i s   n o t   v a l i d . " ) ;         }           S t r i n g   s t r   =   ( S t r i n g ) p a r a m M a p . g e t ( " R E M O T E _ A D D R E S S " ) ;         r e t u r n   " " . e q u a l s ( s t r )   ?   " "   :   s t r . s u b s t r i n g ( 1 ) ;     } }
C o b a t l   S t r i k e I P N g i n x p r o f i l e 0 x 0 4   D N S 线 线 使 C o b a l t   S t r i k e 使 D N S l i s t e n e r 使 使 d n s d n s s t a g e r s t a g e 使 h t t p s t a g e 便 m o d e d n s D N S   L i s t e n e r B 0 y 1 n 4 o 4 s t a g e l e s s 线 使 d n s 线 L i s t e n e r 使 8 0 线 使 h t t p d n s 线 使   d n s d n s - t x t d n s 6 l i s t e n e r 8 0 线 d n s 使 m o d e h t t p 0 x 0 5   C o b a l t   S t r i k e J a v a * C a 3 t i e 1 F r e e B u f . C O M } H t t p H e a d e r R E M O T E _ A D D R E S S X - F o r w a r d e d - F o r R E M O T E _ A D D R E S S h t t p - c o n f i g t r u s t _ x _ f o r w a r d e d _ f o r t r u e R E M O T E _ A D D R E S S b e a c o n _ d n s / r e v e r s e _ h t t p b e a c o n _ d n s / r e v e r s e _ d n s _ t x t s t a g i n g s t a g e r s t a g e b e a c o n _ d n s / r e v e r s e _ h t t p b e a c o n _ d n s / r e v e r s e _ h t t p b e a c o n _ d n s / r e v e r s t _ d n s _ t x t m o d e

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

本版积分规则