[22128] 2021-07-02_web安全自动化运维

文档创建者:s7ckTeam
浏览次数:1
最后更新:2025-01-18
2021-07-02_web安全自动化运维 w e b   L e m o n S e c   2 0 2 1 - 0 7 - 0 2 w e b       w e b w e b w e b 退 c h e c k l i s t c h e c k l i s t 使 r u b y # r u b y d e f   c m p f i l e ( s o u r c e _ f i l e , t m p _ f i l e , s e c u r i t y _ t y p e )     n u m = 0     f 1 = F i l e . o p e n ( s o u r c e _ f i l e )     f 2 = F i l e . o p e n ( t m p _ f i l e ) i f   ! F i l e . z e r o ? ( " s o u r c e _ f i l e " )   a n d   ! F i l e . z e r o ? ( " t m p _ f i l e " )   t h e n     n u m 1 , f 1 a r r a y = g e t F i l e L i n e ( f 1 )     n u m 2 , f 2 a r r a y = g e t F i l e L i n e ( f 2 )     # e n s u r e   t h e   n u m b e r o f   l o o p     i f   n u m 1 > n u m 2         n u m = n u m 1     e l s e         n u m = n u m 2     e n d     f o r   i   i n ( 0 . . n u m - 1 )         m e s g 1 = " E x c e p t i o n : M a y b e   f i l e "         m e s g 2 = " w a s   n o t   e n o u g h   l i n e s .   C a n t   f i n d   t h e   d a t a   w h e n   c h e c k   l i n e "         i f   f 1 a r r a y [ i ]   ! =   n i l   a n d   f 2 a r r a y [ i ]   ! =   n i l             i f   f 1 a r r a y [ i ]   ! =   f 2 a r r a y [ i ]         $ r r p . w r i t e ( " n - - # { s e c u r i t y _ t y p e } - - n u m : " + i . t o _ s + " n " + " s o u r c e _ f i l e :   " + f 1 a r r a y [ i ] . t o _ s + " n " + " n e w _ f i l e :   " + f 2 a r r a y [ i ] . t o _ s )             e n d         e l s e             i f   f 1 a r r a y [ i ]   =   n i l             $ r r p . w r i t e ( " n - - # { s e c u r i t y _ t y p e } - - n u m : " + i . t o _ s + "     " + m e s g 1 + ' 1 ' +   m e s g 2 + ( i + 1 ) . t o _ s )                 b r e a k
西             5 1 r u b y r u b y             e l s e   i f     f 2 a r r a y [ i ]   =   n i l             $ r r p . w r i t e ( " n - - # { s e c u r i t y _ t y p e } - - n u m : " + i . t o _ s + "     " + m e s g 1 + ' 2 ' +   m e s g 2 + ( i + 1 ) . t o _ s )                 b r e a k             e l s e                 b r e a k             e n d             e n d         e n d     e n d e n d     f 1 . c l o s e     f 2 . c l o s e e n d d e f   g e t F i l e L i n e ( f )     f a r r a y = [ ]     n u m = 0     f . e a c h   d o   | f i |         n u m + = 1         f a r r a y + = [ f i . s t r i p ] e n d     r e t u r n   n u m , f a r r a y e n d     #   d e f   c m d _ s o u r c e ( c m d , s o u r c e _ p a t h _ f i l e ) c o n t = ` # { c m d } ` i f   ! F i l e . e x i s t ? ( s o u r c e _ p a t h _ f i l e ) F i l e . n e w ( s o u r c e _ p a t h _ f i l e , " w " ) . w r i t e ( c o n t ) e n d e n d #   d e f   c m d _ t m p ( c m d , t m p _ p a t h _ f i l e ) c o n t = ` # { c m d } ` F i l e . n e w ( t m p _ p a t h _ f i l e , " w " ) . w r i t e ( c o n t ) e n d
a m q p       s o c s o c s o c a p a c h e r e s i n 线 # !   / u s r / l o c a l / r u b y / b i n / r u b y = b e g i n a u t h o r : k n 1 g h t c d e s c r i b e t h a t ' s   t r u e = e n d r e q u i r e   ' r u b y g e m s ' r e q u i r e   ' a m q p ' # r u b y # $ c o n _ s o u r c e _ p a t h _ s s l = " . . / . . / a c c e s s _ s s l _ # { T i m e . n o w . s t r f t i m e ( " % Y % m % d " ) } . l o g " $ c o n _ s o u r c e _ p a t h _ a c c e s s = " / . . / a c c e s s _ # { T i m e . n o w . s t r f t i m e ( " % Y % m % d " ) } . l o g " $ c o n _ s o u r c e _ p a t h _ e r r o r = " / . . / e r r o r _ # { T i m e . n o w . s t r f t i m e ( " % Y % m % d " ) } . l o g " # 便 $ t m p _ s c a n = [ ] $ t m p _ a t t a c k = [ ] $ t m p _ a p p = [ ] $ t m p _ a b n o r m a l = [ ] # 便 # l o g _ f o r m a t d e f   m e s s a g e _ f o r m a t ( s t r _ l i n e , s t r _ t y p e , s t r _ r i s k , s t r _ f o r m a t )     @ s t r _ t i m e = " "     @ s t r _ i p = " "     @ s t r _ d a t a = " "     @ s t r _ r e s u l t = " "     @ s t r _ f o r m a t = s t r _ f o r m a t     @ s t r _ l i n e = s t r _ l i n e
    i f   @ s t r _ f o r m a t = = " e r r o r "         @ s t r _ t i m e = / [ a - z A - Z ] { 3 } . [ a - z A - Z ] { 3 } . d { 2 } . d { 2 } : d { 2 } : d { 2 } . d { 4 } / . m a t c h ( @ s t r _ l i n e )         @ s t r _ i p = / d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } / . m a t c h ( @ s t r _ l i n e )         @ s t r _ d a t a = @ s t r _ l i n e . g s u b ( / ^ [ [ a - z A - Z ] { 3 } . [ a - z A - Z ] { 3 } . d { 2 } . d { 2 } : d { 2 } : d { 2 } . d { 4 } ] . [ [ a - z A - Z ] { 3 , 5 } ] . [ [ a - z A - Z ] { 6 } . d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } ] / , " " ) . s t r i p     e l s e               @ s t r _ t i m e = / d { 2 } / [ a - z A - Z ] { 3 } / d { 4 } : d { 2 } : d { 2 } : d { 2 } / . m a t c h ( @ s t r _ l i n e )         @ s t r _ i p = / ^ d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } / . m a t c h ( @ s t r _ l i n e )         @ s t r _ d a t a = @ s t r _ l i n e . g s u b ( / ^ d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } . d { 1 , 3 } . . . . . [ d { 2 } / [ a - z A - Z ] { 3 } / d { 4 } : d { 2 } : d { 2 } : d { 2 } . + d { 4 } ] / , " " ) . s t r i p     e n d     @ s t r _ r e s u l t = @ s t r _ i p . t o _ s + " = > " + @ s t r _ d a t a . t o _ s + " = > " + @ s t r _ t i m e . t o _ s + " = > " + s t r _ t y p e + " = > " + s t r _ r i s k + " n " e n d # # l i n e _ r u l e _ m a t c h d e f   l i n e _ r u l e ( r u l e _ l i n e , r u l e _ l o g _ t y p e )     @ r u l e _ s t r _ l i n e = r u l e _ l i n e     @ r u l e _ l o g _ t y p e = r u l e _ l o g _ t y p e     @ n e w _ l i n e = " "     @ r u l e _ d a t a = [ ]     i f   @ r u l e _ s t r _ l i n e = ~ / e r r o r /           $ t m p _ a b n o r m a l < < m e s s a g e _ f o r m a t ( @ r u l e _ s t r _ l i n e , " a b n o r m a l " , " M " , @ r u l e _ l o g _ t y p e )     e l s e         @ n e w _ l i n e = m e s s a g e _ f o r m a t ( @ r u l e _ s t r _ l i n e , " u n k n o w n " , " u n k n o w n " , @ r u l e _ l o g _ t y p e ) . s p l i t ( / = > / ) [ 1 ]         @ r u l e _ d a t a = @ n e w _ l i n e . s p l i t ( / " / )         i f   @ r u l e _ d a t a . s i z e > 6                 $ t m p _ s c a n < < m e s s a g e _ f o r m a t ( @ r u l e _ s t r _ l i n e , " s c a n " , " M " , @ r u l e _ l o g _ t y p e )         e l s e             i f   @ r u l e _ d a t a . s i z e > 1                 i f   @ r u l e _ d a t a [ 3 ] = ~ / s c r i p t > | < s c r i p t | p a s s W o r d | p a s s w o r d /                     $ t m p _ a t t a c k < < m e s s a g e _ f o r m a t ( @ r u l e _ s t r _ l i n e , " a t t a c k " , " H " , @ r u l e _ l o g _ t y p e )                     #                 e l s i f   @ r u l e _ d a t a [ 1 ] = ~ / ' | a l e r t | s c r i p t > | c a t | u n i o n | o r d e r   b y | ; | . . / | a n d | - - /   o r   @ r u l e _ d a t a [ 2 ] . l s t r i p . s p l i t ( / s / ) [ 0 ] = ~ / 4 0 0 | 4 0 3 | 4 0 4 | 5 0 0 /                     $ t m p _ s c a n < < m e s s a g e _ f o r m a t ( @ r u l e _ s t r _ l i n e , " s c a n " , " M " , @ r u l e _ l o g _ t y p e )                 e n d             e n d         e n d     e n d e n d # l o g _ i d s d e f   i n v a d e _ l o g ( s o u r c e _ p a t h _ f i l e , l o g _ t y p e )     @ p a t h _ s o u r c e = s o u r c e _ p a t h _ f i l e     @ l o g _ t y p e = l o g _ t y p e     i = 0     @ l i n e _ n u m _ t m p = - 1
# w e b 1 # 1 便     i f   @ l o g _ t y p e = = " s s l "         F i l e . o p e n ( " / t m p / n u m _ s s l " , " r " )   d o   | f i l e |             @ l i n e _ n u m _ t m p = f i l e . g e t s . t o _ i         e n d             e l s i f   @ l o g _ t y p e = = " a c c e s s "         F i l e . o p e n ( " / t m p / n u m _ a c c e s s " , " r " )   d o   | f i l e 1 |                             @ l i n e _ n u m _ t m p = f i l e 1 . g e t s . t o _ i         e n d                             e l s e         F i l e . o p e n ( " / t m p / n u m _ e r r o r " , " r " )   d o   | f i l e 2 |                                 @ l i n e _ n u m _ t m p = f i l e 2 . g e t s . t o _ i         e n d     e n d F i l e . o p e n ( @ p a t h _ s o u r c e )   d o   | f i l e s |     f i l e s . e a c h _ l i n e   d o   | l i n e |         b e g i n             l i n e . f o r c e _ e n c o d i n g ( " g b k " )             i f   i > @ l i n e _ n u m _ t m p                     l i n e _ r u l e ( l i n e , @ l o g _ t y p e )             e l s e                 i = i + 1                 n e x t             e n d             i = i + 1         r e s c u e             i = i + 1             $ t m p _ a p p < < m e s s a g e _ f o r m a t ( l i n e , " a p p " , " L " , @ l o g _ t y p e )         e n d     e n d e n d     @ l i n e _ n u m _ t m p = i     @ f i l e _ l o g = F i l e . o p e n ( " / t m p / n u m _ # { @ l o g _ t y p e } " , " w " )     @ f i l e _ l o g . w r i t e ( @ l i n e _ n u m _ t m p )     @ f i l e _ l o g . c l o s e e n d # # t i m e _ q u e s t i o n # i m p l e m e n t _ m e t h o d d e f   i m p l e m e n t _ m e t h ( s o u r c e _ p a t h _ f i l e , l o g _ t y p e )     @ i m _ p a t h _ s o u r c e = s o u r c e _ p a t h _ f i l e     @ i m _ l o g _ t y p e = l o g _ t y p e     @ f i l e n a m e _ o l d = " "     i f   F i l e . e x i s t ? ( @ i m _ p a t h _ s o u r c e )         F i l e . o p e n ( " / t m p / t i m e _ # { @ i m _ l o g _ t y p e } " )   d o   | f i l e |                 @ f i l e n a m e _ o l d = f i l e . g e t s . t o _ s . s t r i p         e n d
        e n d         i f   @ i m _ p a t h _ s o u r c e ! = @ f i l e n a m e _ o l d                 @ i m _ f i l e _ l o g = F i l e . o p e n ( " / t m p / n u m _ # { @ i m _ l o g _ t y p e } " , " w " )             @ i m _ f i l e _ l o g . w r i t e ( " - 1 " )             @ i m _ f i l e _ l o g . c l o s e             @ i m _ f i l e _ l o g = F i l e . o p e n ( " / t m p / t i m e _ # { @ i m _ l o g _ t y p e } " , " w " )             @ i m _ f i l e _ l o g . w r i t e ( @ i m _ p a t h _ s o u r c e )             @ i m _ f i l e _ l o g . c l o s e         e n d         i n v a d e _ l o g ( @ i m _ p a t h _ s o u r c e , @ i m _ l o g _ t y p e )     e n d e n d # m q # s e n d _ m e s s a g e _ m e t h o d _ s c a n d e f   s e n d _ t o _ e x c h a n g e _ s c a n ( m e s s a g e )     e x c h a n g e = M Q . d i r e c t ( ' g u o f u b a o ' )     e x c h a n g e . p u b l i s h   m e s s a g e , : k e y = > ' s c a n ' e n d # s e n d _ m e s s a g e _ m e t h o d _ a t a c k d e f   s e n d _ t o _ e x c h a n g e _ a t t a c k ( m e s s a g e )     e x c h a n g e = M Q . d i r e c t ( ' g u o f u b a o ' )     e x c h a n g e . p u b l i s h   m e s s a g e , : k e y = > ' a t t a c k ' e n d # s e n d _ m e s s a g e _ m e t h o d _ a p p d e f   s e n d _ t o _ e x c h a n g e _ a p p ( m e s s a g e )     e x c h a n g e = M Q . d i r e c t ( ' g u o f u b a o ' )     e x c h a n g e . p u b l i s h   m e s s a g e , : k e y = > ' a p p ' e n d # s e n d _ m e s s a g e _ m e t h o d _ a b n o r m a l d e f   s e n d _ t o _ e x c h a n g e _ a b n o r m a l ( m e s s a g e )     e x c h a n g e = M Q . d i r e c t ( ' g u o f u b a o ' )     e x c h a n g e . p u b l i s h   m e s s a g e , : k e y = > ' a b n o r m a l ' e n d # t e s t _ d a t a # t m p _ t e s t = " 1 2 7 . 0 . 0 . 1 = > k n 1 g h t c _ t e s t = > 2 0 1 2 : 1 2 : 3 1 = > u n k n o w n = > u n k n o w n " + " n " # i m p l e m e n t i m p l e m e n t _ m e t h ( $ c o n _ s o u r c e _ p a t h _ a c c e s s , " a c c e s s " ) i m p l e m e n t _ m e t h ( $ c o n _ s o u r c e _ p a t h _ e r r o r , " e r r o r " ) i m p l e m e n t _ m e t h ( $ c o n _ s o u r c e _ p a t h _ s s l , " s s l " ) # c o n n # A M Q P . s t a r t   : h o s t   = >   ' 1 2 7 . 0 . 0 . 1 ' ,   : p o r t   = >   5 6 7 2   d o     e v e n t _ l o o p = T h r e a d . n e w   d o         E M . r u n   d o             E M . a d d _ t i m e r ( 1 )   d o                 E M . s t o p             e n d         e n d     e n d     s e n d _ t o _ e x c h a n g e _ a b n o r m a l   $ t m p _ a b n o r m a l . j o i n ( ) . t o _ s
线 L e m o n S e c     s e n d _ t o _ e x c h a n g e _ a b n o r m a l   $ t m p _ a b n o r m a l . j o i n ( ) . t o _ s     s e n d _ t o _ e x c h a n g e _ a p p   $ t m p _ a p p . j o i n ( ) . t o _ s     s e n d _ t o _ e x c h a n g e _ a t t a c k   $ t m p _ a t t a c k . j o i n ( ) . t o _ s     s e n d _ t o _ e x c h a n g e _ s c a n   $ t m p _ s c a n . j o i n ( ) . t o _ s     e v e n t _ l o o p . j o i n e n d
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则