Tải bản đầy đủ (.doc) (6 trang)

Hệ số dùng trong máy tính pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (557.14 KB, 6 trang )

INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Tutorials:
INTRODUCTION TO THE CRACKING WITH
OLLYDBG FROM ZERO.
Link:
Author: Ricardo ( Compiled to VietNamese by ZoZo )
Type: General for cracking.
Level: Super Basic
Part : 2.
Sau khi chúng ta đã làm quen các cửa sổ làm việc của Olly (ở phần 1), thì trong phần 2
tiếp theo này ta quan tâm các hệ số đếm được dùng trong máy tính. Đây là phần kiến
thức quan trọng trong cracking.
Các hệ số dùng trong máy tính
Có 3 hệ số đếm chính được sử dụng là :
Nhị phân : chỉ có 2 ký số dùng để đếm ( 0 và 1 ).
Thập phân : có 10 ký số dùng để đếm ( 0 tớ 9 ).
Thập lục : có 16 ký số dùng để đếm ( 0 tới 9 và bổ sung 6 ký số khác là : A, B, C, D, E, F )
.
Ngoài ra có thêm hệ Bát phân (8 ký số , 0 tới 8, dùng để đếm ).
Số âm trong hệ 16.
Thông thường , trong hệ 10, ta hay đặt dấu trừ phía trước một con số để nhận biết đó là
số âm (vd : -1). Nhưng trong hệ 16, người ta chia dãy số biểu diễn một con số ra làm 2,
một nữa biểu diễn số âm (từ 0000…000 tới 7FFF…FFF) , nữa còn lại là số dương
(8FFF…FFF tới . FFFF…FFF).
VD :
Số DƯƠNG
Thập lục Thập phân
0000 0000 0
0000 0001 1
7FFF FFFF


2,147,483,647
Số ÂM
Thập lục Thập phân
FFFF FFFF -1
FFFF FFFE -2
8000 0000
-2,147,483,648

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
1
INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Bạn có thể quan sát sự chuyển đổi hệ số trong Olly ngay tại Command Bar .
Như trong hình thì 7FFF FFFF bằng 2,147,483,647 . Bây giờ ta thay vào số 8000 0000 trong ô gõ lệnh .
Quan sát ta thấy Olly không chuyển được 8000 0000 sang -2,147,483,648. Đây là một lỗi
lập trình của Olly. Tuy nhiên, bạn hãy sử dụng thử thanh ghi EAX của Olly để chuyển đổi
hệ số.
Nhấn chuột vào thanh ghi EAX
Nhấn đúp chuột trái vào thanh ghi EAX hoặc nhấn chuột phải vào EAX > chọn Modify

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
2
INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Bạn sẽ thấy cửa sổ mới xuất hiện cho phép sửa đổi giá trị của thanh ghi EAX.
Bây giờ gõ vào 8000 0000 tại ô Hexadecimal, bạn sẽ thấy Olly chuyển giá trị số này sang
hệ thập ph6n chính xác là -2,147,483,648.
Tôi thử gõ vào ô hexadecimal một giá trị khác là FFFF FFFF thì thấy được Olly chuyển

chính xác ra -1 .
Như vậy, trong cửa sổ các thanh ghi này, ta có thể tìm được chính xác số âm hệ 10 từ
con số hệ 16 nhờ vào thanh ghi EAX. Nhấn Cancel để tắt bỏ hộp thoại này đi.
Ký tự ASCII
Phần kiến thức quan trọng khác mà ta cần biết là cách mà hệ thống in ra màn hình các ký
tự, ký số,… .
Nhìn lại hình lúc nãy ở thanh Command .
Phần chuyển đổi cuối cùng, bên cạnh số 2147483647 mà Olly có thể chuyển dịch từ số
hexa ra là một ký tự ( € ).

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
3
INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Trong máy tính, mỗi ký tự, ký số,… được quy định bởi một con số hexa. Ta hãy xem qua
bảng mã ASCII sau :

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
4
INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Dựa vào bảng mã ASCII này ta thấy có dòng , ta thử gõ vào thanh
Command một số hexa là 45 .
Ta thấy được Olly chuyển được số 45h này sang ký tự ASCII là chữ E in hoa .
Quan sát trong cửa sổ DUMP của Olly ta thấy nó có một cột tên là ASCII . Giống hình
sau:
Trong cột ASCII này ta nhìn thấy được một chuỗi các ký tự được xếp gần nhau , hình
thành nên một đoạn văn có ý nghĩa (hoặc không , cái này tùy chỗ ta coi ). Mỗi ký tự văn

bản có một con số hexa tương ứng trong cột Hex dump. Trong hình là đoạn đầu của
crackme được tác giả CRUEHEAD lập trình.

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
5
INTRODUCTION TO THE CRACKING WITH OLLYDBG FROM ZERO.

Ngăn xếp ( STACK )
Ngăn xếp là một phần của bộ nhớ hệ thống. Thường dùng để lưu trữ các dữ liệu quan
trọng, thay cho việc lưu các dữ liệu đó trong các thanh ghi của CPU. Đặc điểm của ngăn
xếp là các dữ liệu được đưa vào (Push) sau sẽ được lấy ra (Pop) trước . Bạn hãy tưởng
tượng ngăn xếp như một chồng đĩa, cái đĩa nào được đặt lên chồng đĩa cuối cùng thì sẽ
được lấy ra trước (Dĩ nhiên là trừ trường hợp bạn rì-vẹt cái chồng đĩa rùi sau đó lấy
^_^” ).
Kết thúc phần 2.
Phần tiếp theo chúng ta sẽ tìm hiểu xem thanh ghi (registry) và cờ (flag) là cái gì và chúng
dùng cho vịêc chi .

A hug to all the CRACKSLATINOS Until part 3 Ricardo Narvaja 08 of November of 2005
Compiled to VietNamese by ZzoozZ August of 2006
6

×