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
Top Related