basics of shell coding

Upload: cgkades

Post on 09-Apr-2018

241 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 Basics of Shell Coding

    1/8

    c R o s i e l l o S e c u r i t y

    h t t p : / / w w w . r o s i e l l o . o r g

    T h e B a s i c s o f S h e l l c o d i n g

    b y A n g e l o R o s i e l l o

    V e r s i o n : 1 . 0

    D a t e : 0 9 / 0 2 / 2 0 0 4

    C o p y r i g h t c R o s i e l l o S e c u r i t y 2 0 0 4 , I t a l y

    I

  • 8/8/2019 Basics of Shell Coding

    2/8

    C o n t e n t s

    1 I n t r o d u c t i o n 3

    2 R e g i s t e r s 3

    3 I n t r o d u c i n g t h e A s s e m b l y l a n g u a g e 4

    4 C o d i c a t i o n p h a s e 4

    5 C o m p i l e a n d E x e c u t e 6

    6 C o n c l u s i o n s 8

    P

  • 8/8/2019 Basics of Shell Coding

    3/8

    1 I n t r o d u c t i o n

    e l l o o u o n t u t o n n u t l

    n o t o m u n n n F

    x o l o t o m l o o l l o n u E

    u t l n l t o n u n n n n t o l l o n o E

    o u u l n l t 9 l o t F

    s n o t o t n t o m u l n l t t n n E

    l t o n j t l l o u t o t t o n t o l o

    u n n n l t o n F

    o l o t t l n o t t o l n l l t o l t o

    n j t n l l o l o u n l t D u t t o n l z

    n u n t n t n F

    2 R e g i s t e r s

    f o n l z n t m l o n t n t n 9 o n D t

    n t o n o o t g 9 t n o

    t o u n t n t m o t n n t m l l n u F

    t t u o n t o o t s n t l E V T 9 o n F

    e l l t t o t s n t l 9 l t o m u o t Q P t

    n n u t o n o I T n V t D j u t t o l t n

    u t u o t m m o F

    Q P t I T t V t @ A V t @ l o A

    i e e e r e v

    i f f f r f v

    i g g g r g v

    i h h h r h v

    E A X , A X , A H , A L t u m u l t o

    n n u o t m t l n n u t G o u t u t o t o n o

    t o u t n t u t l l F l l o t 9 n n l t o

    u t m n t o l z t m l l F

    E B X , B X , B H , B L t t t

    n t u o n t t o n t m m o F

    l l u t t t o t t m l l 9 u m n t F

    x o n t n t l o u t o t o t t u n l u o n

    n t u t F @ F F n l l n o n @ A D t t o 9 l u

    o t ( l t o n t t i f F A

    E C X , C X , C H , C L t o u n t E

    t F

    E D X , D X , D H , D L t t t t

    n t n u o t m t l o t o n D n t u t l l

    Q

  • 8/8/2019 Basics of Shell Coding

    4/8

    n o m n u t G o u t u t o t o n F

    3 I n t r o d u c i n g t h e A s s e m b l y l a n g u a g e

    m l l n u o n t o o n m 4 s n l n

    e m l 4 n t o t t n t o e 8 F

    n m o t t t m o l 4 7 4 D

    t u t o u t t m u t t 4 7 4 F

    s o n t o t o n u m l o n t n t D t l u m u t

    t m o l 4 6 4 F

    s n t o l l o n m D o n n o t m o t u n E

    t u t o n n t m l l n u F

    M O V E n t u t o n l t u t o m o l u n t F

    m o 6 H R D 7 l E m o H R n t o l

    m o 7 D 7 E m o t n n t o

    P U S H E u t l u n t t k F

    P O P E q t l u o m t t k n t o t n t

    o n l F

    I N T E n t u t l l F

    n t 6 H V H E t t o n t o l t o t k n l F

    4 C o d i c a t i o n p h a s e

    l o t m o n t o m l m n t n m l l n u

    n t n n n o @ m l o n A t n t o n

    t o o t t n 4 F y s i v v y F y q 4 F

    o l u t o n o t o l m n g l n u t o l l o n

    o o X

    n t m n @ A

    {

    t @ H D 4 F y s i v v y F y q 4 D I T A Y

    t @ H A Y

    }

    s n o t o l z t t @ A n t t @ A t o E

    u t t t m l l F

    s t o l t o ( n n v n u t l 4 u n t F 4

    t o l l t t m l l t t o n n u F

    n l o d o l l o F o 6 t G u G n l u G m E Q V T G u n t F

    G B

    R

  • 8/8/2019 Basics of Shell Coding

    5/8

    B ( l o n t n t t m l l n u m F

    B G

    5 ( n x t I ` ! o u t @ A

    5 ( n x o k P

    5 ( n x Q

    5 ( n x t R ` ! o u t @ A

    5 ( n x o n S

    t @ H D 4 F y s i v v y F y q 4 D I T A Y

    F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F

    F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F F

    ( t u m n t 4 H 4 t t n o u t u t @ o A

    t o n t t t n o n u m n t F

    l t u m n t 4 I T 4 n t t l n t o t t n F

    v t 9 t t o m l m n t t n t u t o n n m l F

    o 7 D 7 ` ! s t l n t t 7

    o 7 D 7

    o 7 D 7

    u 7 ` ! s t n t x v v n t o t t k l o n t

    t n D t u D n o t l l F

    u 6 H R U S P R P 5 u q y F n t o t t k

    u 6 H R R R R S 5 u y v v i n t o t t k

    u 6 H R W S Q R S P 5 u s y n t o t t k

    u 6 H P S U S U S U 5 u F n t o t t k

    o o u u n t n t o t t k t t n 4 F y s i v v y F y q 4

    n t m l o F

    e o n n n o t t t n m u t u n t o t t k

    o t u n u o t t k 9 o k n t t F

    t n y u t u t 9 t o o t t t 7

    t o n t n t t m o m n t t l u H t n

    n o t t o n t n t n l F @ t @ H D F F A A F

    m o 7 D 7 5 t m o 7 n t o 7

    x o t t n 9 n t t 7 @ m m

    t t n G o n l o G u A n u t

    t n t t 7 D t u t g l l l t o ( n t

    u t o t o n o t t n n t t k @ t @ H D t n D F F A A F

    S

  • 8/8/2019 Basics of Shell Coding

    6/8

    m o 6 H I H D 7 l 5 z I T t

    i t l n g l n u n t t t t t n z

    I T t @ t @ H D t n D I T A A F

    m o 6 H R D 7 l 5 l l o t @ A

    u t n t t @ n t l o t X l A t n u m

    o t t @ A o u t n F

    n t 6 H V H 5 u t t l l

    x o t k n l l l t t o n t o l o t l t o n n l l

    u t o u t @ A o u t n F

    m l m n t t o n o t t @ H A n F

    t @ H A X

    o 7 D 7

    o 7 D 7

    n t l n F

    m o 6 H I D 7 l 5 l l o t @ A

    v t 9 n t t l u o t t n t o l F

    n t 6 H V H 5 u t t l l

    v t 9 t o n t o l t o o u k n l F

    5 C o m p i l e a n d E x e c u t e

    l t t t o o t o ( t o n n n o F s n o

    t o o u u o l l u t n u u @ A F

    n l o d o l l o F o X \ l l o 6 o l l o

    @ A m n

    h u m o m l o o u n t o n m n X

    H V H R V P R ` m n b X u 7

    H V H R V P S ` m n C I b X m o 7 D 7

    H V H R V P U ` m n C Q b X u 6 H V D 7

    H V H R V P ` m n C T b X n 6 H ' ' ' H D 7

    H V H R V P ` m n C W b X m o 6 H H D 7

    H V H R V Q H P ` m n C I R b X u 7 D 7

    H V H R V Q H R ` m n C I T b X o 7 D 7

    H V H R V Q H T ` m n C I V b X o 7 D 7

    H V H R V Q H V ` m n C P H b X o 7 D 7

    H V H R V Q H ` m n C P P b X u 7

    H V H R V Q H ` m n C P Q b X u 6 H R U S P R P

    T

  • 8/8/2019 Basics of Shell Coding

    7/8

    H V H R V Q I H ` m n C P V b X u 6 H R R R R S

    H V H R V Q I S ` m n C Q Q b X u 6 H R W S Q R S P

    H V H R V Q I ` m n C Q V b X u 6 H P S U S U S U

    H V H R V Q I ` m n C R Q b X m o 7 D 7

    H V H R V Q P I ` m n C R S b X m o 6 H I H D 7 l

    H V H R V Q P Q ` m n C R U b X m o 6 H R D 7 l

    H V H R V Q P S ` m n C R W b X n t 6 H V H

    H V H R V Q P U ` m n C S I b X o 7 D 7

    H V H R V Q P W ` m n C S Q b X o 7 D 7

    H V H R V Q P ` m n C S S b X m o 6 H I D 7 l

    H V H R V Q P ` m n C S U b X n t 6 H V H

    i n o m l u m F

    y u o n t t ` m n C I T b n t u t o n n t m E

    n t t ` m n C S U b F

    o n t o o o u o u l o t t o l l o n F

    @ A G m n C I T

    H V H R V Q H R ` m n C I T b X H Q I ` ! y g y h i

    @ A

    H V H R V Q H S ` m n C I U b X H H ` ! y g y h i

    @ A

    H V H R V Q H T ` m n C I V b X H Q I ` ! y g y h i

    F F F F

    n o o n t l l ` m n C S U b F

    x o t 9 n n l t o u t n t n t t t n 4 \ Q I \ H \ Q I F F 4 F 4 \ Q I \ H \ Q I \ \ Q I \ P \ S H \ T V \ P \ R 4 4 \ S P \ R U \ T V \ R S \ R \ R \ R \ T V \ S P \ R 4 4 \ S Q \ R W \ T V \ S U \ S U \ S U \ P \ V W \ I \ P 4 4 \ I H \ H \ H R \ \ V H \ Q I \ H \ Q I \ \ H 4 4 \ H I \ \ V H 4

    o o m l n u t t l l o o u n o n z t n

    g o m t o l l o n m F

    n l o d o l l o F o X \ l l o 6 t l l o F

    5 n l u ` t o F b

    l l o a

    4 \ Q I \ H \ Q I \ \ Q I \ P \ S H \ T V \ P \ R 4 4 \ S P \ R U \ T V \ R S \ R \ R \ R \ T V \ S P \ R 4 4 \ S Q \ R W \ T V \ S U \ S U \ S U \ P \ V W \ I \ P 4 4 \ I H \ H \ H R \ \ V H \ Q I \ H \ Q I \ \ H 4 4 \ H I \ \ V H 4 Y

    U

  • 8/8/2019 Basics of Shell Coding

    8/8

    m n @ A

    {

    o @ B o u t n A @ A Y

    @ l o n A o u t n a 8 l l o Y

    n t @ 4 z X 7 t \ n 4 D z o @ l l o A A Y o u t n @ A Y

    }

    n l o d o l l o F o X \ l l o 6 l l o F E o l l o n l o d o l l o F o X \ l l o 6 F G l l o

    z X R R t F

    F y s i v v y F y q

    6 C o n c l u s i o n s

    w k n l l o n 9 t 0 u l t D u t o u l l n t n n

    t t o o m k l l n o n t F

    l l o n m o t n t m n l n t l o l l l E

    t o n F p o m l D o u n t t o t n l o t o u l l

    n t o t l l o t o t l o t o m u t

    t o o u n t F

    o n l l s t n k t t n o n n t t n u t o o m E

    u t n o u l k n o t o n t n t o

    u o t o n u n l o t n F

    h t t p : / / w w w . r o s i e l l o . o r g

    c o n t a c t : a n g e l o @ r o s i e l l o . o r g

    V