[13987] 2019-04-14_利用SemmleQL发现FacebookFizz的DoS漏洞挖洞经验

文档创建者:s7ckTeam
浏览次数:15
最后更新:2025-01-18
2019-04-14_利用SemmleQL发现FacebookFizz的DoS漏洞挖洞经验 S e m m l e   Q L F a c e b o o k   F i z z D o S |   c l o u d s   F r e e B u f   2 0 1 9 - 0 4 - 1 4 S e m m l e S e m m l e   Q L F a c e b o o k   F i z z D o S F i z z S e m m l e S e m m l e S e m m l e   Q L L G T M   -   F a c e b o o k   T L S   1 . 3   F i z z 2 0 1 8 8 I E T F T L S 1 . 3 R F C   8 4 4 6 H T T P S T L S 1 . 3 使 使 T L S 1 . 2 便 F a c e b o o k T L S 1 . 3 F a c e b o o k C + + 1 4 T L S   -   F i z z T L S 1 . 3 F i z z I / O I / O T L S 1 . 3 F a c e b o o k 2 0 1 8 8 G i t h u b F i z z T L S   1 . 3 F a c e b o o k F i z z T C P F a c e b o o k   F i z z 使 访 D o S 6 4 K B
1 M C P U F a c e b o o k   2 0 1 9 2 2 0 2 2 5 G i t h u b F a c e b o o k 2 2 0 使 F i z z F i z z F i z z v 2 0 1 9 . 0 2 . 2 5 . 0 0 P o C C P o C T C P   s o c k e t 6 4 K B P a y l o a d P a y l o a d P o C s o c k e t F i z z F i z z h t t p s : / / f a c e b o o k . c o m   F a c e b o o k 广 F i z z P o C F i z z P l a i n t e x t R e c o r d L a y e r . c p p 4 2 l e n g t h   + = + = u i n t 1 6 _ t l e n g t h l e n g t h 3 9 i f e x p l o i t 6 4 K B l e n g t h 4 2 e x p l o i t   l e n g t h   =   0 x F F F B   l e n g t h   + = l e n g t h 0 t r i m S t a r t 使 u i n t 1 6 _ t + e x p l o i t l e n g t h   =   0 x F F F B F i z z e x p l o i t S e m m l e   Q L F a c e b o o k F i z z C + + F i z z C + + C b u g F a c e b o o k a u t o   l e n g t h   =   c u r s o r . r e a d B E < u i n t 1 6 _ t > ( ) ; i f   ( b u f . c h a i n L e n g t h ( )   <   ( c u r s o r   -   b u f . f r o n t ( ) )   +   l e n g t h )   {     r e t u r n   f o l l y : : n o n e ; } l e n g t h   + =         s i z e o f ( C o n t e n t T y p e )   +   s i z e o f ( P r o t o c o l V e r s i o n )   +   s i z e o f ( u i n t 1 6 _ t ) ; b u f . t r i m S t a r t ( l e n g t h ) ; c o n t i n u e ;
F i z z F u z z i n g F a c e b o o k   F i z z Q L P l a i n t e x t R e c o r d L a y e r . c p p 4 2 F u z z i n g e x p l o i t Q L Q L b u g Q L b u g b u g Q L (   i n t e r m e d i a t e   r e p r e s e n t a t i o n I R )   I R Q L J o n a s   J e n s e n Q L C + + I R ,   I n t e r m e d i a t e   R e p r e s e n t a t i o n I R Q L I R I R I R Q L   f o r   E c l i p s e F i z z Q L   f o r   E c l i p s e 线 L G T M F a c e b o o k G i t h u b J o n a s I R     T a i n t T r a c k i n g . q l l F i z z F a c e b o o k F o l l y F o l l y I O B u f F i z z I O B u f I O B u f F i z z F i z z s o c k e t   n t o h s     n t o h l   n t o h s     n t o h l       F i z z n t o h s     n t o h l     E n d i a n   Q L F i z z   E n d i a n   x   =   x + 1 ; x   + =   1 ; x + + ; i m p o r t   c p p i m p o r t   s e m m l e . c o d e . c p p . i r . I R     / / s e m m l e   I R f r o m   C o n v e r t I n s t r u c t i o n   c o n v w h e r e   c o n v . g e t R e s u l t S i z e ( )   <   c o n v . g e t U n a r y ( ) . g e t R e s u l t S i z e ( ) s e l e c t   c o n v
t a i n t   t r a c k Q L F a c e b o o k   F i z z   F i z z 2 0 1 9 2 2 0 F a c e b o o k 3 1 3 F a c e b o o k K e v i n   B a c k h o u s e $ 1 0 0 0 0 F a c e b o o k B u g c r o w d F a c e b o o k D o S 2 0 1 9 - 0 2 - 2 0   F a c e b o o k 2 0 1 9 - 0 2 - 2 0   F a c e b o o k c l a s s   E n d i a n C o n v e r t   e x t e n d s   F u n c t i o n   {     E n d i a n C o n v e r t ( )   {         ( t h i s . g e t N a m e ( )   =   " b i g " )   a n d         t h i s . g e t D e c l a r i n g T y p e ( ) . g e t N a m e ( ) . m a t c h e s ( " E n d i a n " )     } } / * *   *   @ n a m e   F i z z   O v e r f l o w   *   @ d e s c r i p t i o n   N a r r o w i n g   c o n v e r s i o n s   o n   u n t r u s t e d   d a t a   c o u l d   e n a b l e   *                             a n   a t t a c k e r   t o   t r i g g e r   a n   i n t e g e r   o v e r f l o w .   *   @ k i n d   p a t h - p r o b l e m   *   @ p r o b l e m . s e v e r i t y   w a r n i n g   * / i m p o r t   c p p i m p o r t   s e m m l e . c o d e . c p p . i r . d a t a f l o w . T a i n t T r a c k i n g i m p o r t   s e m m l e . c o d e . c p p . i r . I R i m p o r t   D a t a F l o w : : P a t h G r a p h / * *   *   T h e   e n d i a n n e s s   c o n v e r s i o n   f u n c t i o n   ` E n d i a n : : b i g ( ) ` .   *   I t   i s   F o l l y ' s   r e p l a c e m e n t   f o r   ` n t o h s `   a n d   ` n t o h l ` .   * / c l a s s   E n d i a n C o n v e r t   e x t e n d s   F u n c t i o n   {     E n d i a n C o n v e r t ( )   {         t h i s . g e t N a m e ( )   =   " b i g "   a n d         t h i s . g e t D e c l a r i n g T y p e ( ) . g e t N a m e ( ) . m a t c h e s ( " E n d i a n " )     } } c l a s s   C f g   e x t e n d s   T a i n t T r a c k i n g : : C o n f i g u r a t i o n   {     C f g ( )   {   t h i s   =   " F i z z O v e r f l o w I R "   }     / * *   H o l d s   i f   ` s o u r c e `   i s   a   c a l l   t o   ` E n d i a n : : b i g ( ) ` .   * /     o v e r r i d e   p r e d i c a t e   i s S o u r c e ( D a t a F l o w : : N o d e   s o u r c e )   {         s o u r c e . ( C a l l I n s t r u c t i o n ) . g e t C a l l T a r g e t ( ) . ( F u n c t i o n I n s t r u c t i o n ) . g e t F u n c t i o n S y m b o l ( )   i n s t a n c e o f             E n d i a n C o n v e r t     }     / * *   H o l d   i f   ` s i n k `   i s   a   n a r r o w i n g   c o n v e r s i o n .   * /     o v e r r i d e   p r e d i c a t e   i s S i n k ( D a t a F l o w : : N o d e   s i n k )   {         s i n k . g e t R e s u l t S i z e ( )   <   s i n k . ( C o n v e r t I n s t r u c t i o n ) . g e t U n a r y ( ) . g e t R e s u l t S i z e ( )     } } f r o m     C f g   c f g ,   D a t a F l o w : : P a t h N o d e   s o u r c e ,   D a t a F l o w : : P a t h N o d e   s i n k ,   C o n v e r t I n s t r u c t i o n   c o n v ,     T y p e   i n p u t T y p e ,   T y p e   o u t p u t T y p e w h e r e     c f g . h a s F l o w P a t h ( s o u r c e ,   s i n k )   a n d     c o n v   =   s i n k . g e t N o d e ( )   a n d     i n p u t T y p e   =   c o n v . g e t U n a r y ( ) . g e t R e s u l t T y p e ( )   a n d     o u t p u t T y p e   =   c o n v . g e t R e s u l t T y p e ( ) s e l e c t   s i n k ,   s o u r c e ,   s i n k ,     " C o n v e r s i o n   o f   u n t r u s t e d   d a t a   f r o m   "   +   i n p u t T y p e   +   "   t o   "   +   o u t p u t T y p e   +   " . "
2 0 1 9 - 0 2 - 2 0   F a c e b o o k 2 0 1 9 - 0 2 - 2 5   F a c e b o o k G i t H u b 2 0 1 9 - 0 3 - 1 3   F a c e b o o k 2 0 1 9 - 0 3 - 1 9   S e m m l e C V E - 2 0 1 9 - 3 5 6 0 * l g t m c l o u d s F r e e B u f . C O M

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

本版积分规则