[309] 2019-09-01_代码审计之XPath注入

文档创建者:s7ckTeam
浏览次数:10
最后更新:2025-01-16
2019-09-01_代码审计之XPath注入 X P a t h   a F a   2 0 1 9 - 0 9 - 0 1 X P A T H   使 X M L X M L 访 访 X M L X M L 1 2 3 X P a t h X P a t h   S Q L X P a t h   U R L X P a t h 访 X P a t h W e b X P a t h X P a t h X M L 使 X P a t h X P a t h j a v a x . x m l . p a r s e r s   D o c u m e n t B u i l d e r F a c t o r y D O M     D o c u m e n t B u i l d e r F a c t o r y n e w I n s t a n c e   D o c u m e n t B u i l d e r n e w D o c u m e n t B u i l d e r p a r s e u r i x m l d o m   d o c u m e n t   r e q u e s t . g e t R e a l P a t h p r i v a t e   b o o l e a n   d o L o g i n ( H t t p S e r v l e t R e q u e s t   r e q u e s t )   t h r o w s   P a r s e r C o n f i g u r a t i o n E x c e p t i o n ,   S A X E x c e p t i o n ,   I O E x c e p t i o n ,   X P a t h E x p r e s s i o n E x c e p t i o n {         S t r i n g   u s e r N a m e = r e q u e s t . g e t P a r a m e t e r ( " u s e r n a m e " ) ;           S t r i n g   p a s s w o r d = r e q u e s t . g e t P a r a m e t e r ( " u s e r p a s s " ) ;         D o c u m e n t B u i l d e r F a c t o r y   d o m F a c t o r y = D o c u m e n t B u i l d e r F a c t o r y . n e w I n s t a n c e ( ) ;         D o c u m e n t B u i l d e r   b u i l d e r = d o m F a c t o r y . n e w D o c u m e n t B u i l d e r ( ) ;         D o c u m e n t   d o c = b u i l d e r . p a r s e ( r e q u e s t . g e t R e a l P a t h ( " W E B - I N F " ) + " / u s e r s . x m l " ) ;         X P a t h F a c t o r y   f a c t o r y = X P a t h F a c t o r y . n e w I n s t a n c e ( ) ;         X P a t h   x P a t h = f a c t o r y . n e w X P a t h ( ) ;         X P a t h E x p r e s s i o n   e x p r e s s i o n = x P a t h . c o m p i l e ( " / / u s e r s / u s e r [ u s e r n a m e / t e x t ( ) = ' " + u s e r N a m e + " '   a n d   p a s s w o r d / t e x t ( ) = ' " + p a s s w o r d + " ' ] " ) ;         O b j e c t   r e s u l t = e x p r e s s i o n . e v a l u a t e ( d o c ,   X P a t h C o n s t a n t s . N O D E S E T ) ;         N o d e L i s t   n o d e s = ( N o d e L i s t ) r e s u l t ;         r e t u r n   ( n o d e s . g e t L e n g t h ( ) > = 1 ) ; }
1 r e q u e s t . g e t S e s s i o n ( ) . g e t S e r v l e t C o n t e x t ( ) . g e t R e a l P a t h ( ) 2 s e r v l e t t h i s . g e t S e r v l e t C o n t e x t ( ) . g e t R e a l P a t h ( ) 3 s t r u t s t h i s . g e t S e r v l e t ( ) . g e t S e r v l e t C o n t e x t ( ) . g e t R e a l P a t h ( )   X P a t h F a c t o r y x p a t h n e w X p a t h x p a t h x p a t h 访   X p a t h E x p r e s s i o n 访 x p a t h c o m p i l e x p a t h e v a l u a t e X P a t h C o n s t a n t s . N O D E S E T N o d e l i s t X P a t h   g e t
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则