Tải bản đầy đủ (.pptx) (52 trang)

Bảo mật trong PPTP Giao thức PPTP trong ứng dụng VPN

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 (1.32 MB, 52 trang )

Bảo mật trong PPTP
Giao thức PPTP trong ứng dụng VPN
Giới thi uệ

PPTP là một giao thức mạng dùng để tạo đường
hầm điểm nối điểm cho phép chuyển giao dữ liệu từ
một PPTP client đến một PPTP server bằng cách
tạo ra một mạng riêng ảo (VPN) trên mạng IP.

PPTP hỗ trợ theo yêu cầu, đa giao thức, mạng riêng
ảo.

Control Message Type: 8 – Thông đi p ệ
Outgoing-Call-Reply

Call ID: Giá tr đ c gán b i PAC đ xác đ nh ị ượ ở ể ị
cu c g i này.ộ ọ

Peer’s Call ID: Giá tr tr ng Call ID c a ị ườ ủ
thông đi p Outgoing-Call-Request đ xác ệ ể
đ nh thông đi p này là thông đi p này liên ị ệ ệ
quan.
Kh i t o đ ng h m trong PPTPở ạ ườ ầ
Control connection
TCP
1723
Start-Control-Connection-Request
Start-Control-Connection-Reply
PPTP CLIENT
GRE
Outgoing-Call-Request


Outgoing-Call-Reply
PNS
PAC
PPTP SERVER
Set-Link-Info
Set-Link-Info là thông đi p c p nh t thông tin ệ ậ ậ
c a cu c g i nh m cho bi t các thay đ i trong ủ ộ ọ ằ ế ổ
PPP đ PAC có th k p th i đi u ch nh.ể ể ị ờ ề ỉ
Enhanced GRE header
(Generic Routing Encapsulation)
Tr ng C: checksum bit b ng 0 cho th y r ng GRE trong ườ ằ ấ ằ
PPTP không ki m tra tính toàn v n c a d li u mà nó bao ể ẹ ủ ữ ệ
đóng
GRE là giao th c đóngứ
Đóng gói d li u khi truy n ữ ệ ề
qua đ ng h m PPTPườ ầ
Bên g iử
Bên nh nậ
Point-to-Point Protocol (PPP)
PPP cung c p nh ng ch c năng chính sauấ ữ ứ

Đóng gói (encapsulate) nh ng gói d li u đa giao th cữ ữ ệ ứ

Giao th c Đi u khi n Đ ng d n (ứ ề ể ườ ẫ Link Control
Protocol - LCP) đ thi t l p, ch nh c u hình và ki m ể ế ậ ỉ ấ ể
tra đ ng truy n d li uườ ề ữ ệ

Giao th c Đi u khi n K t n i (ứ ề ể ế ố Network Control
Protocols - NCP) đ thi t l p và c u hình nh ng giao ể ế ậ ấ ữ

th c t ng m ngứ ầ ạ
PPP – V n hànhậ
PPP LCP

Nh ng gói thi t l p và c u hình linkữ ế ậ ấ

Configure-Request

Configure-Ack

Configure-Nak

Configure-Reject

Nh ng gói ng t linkữ ắ

Nh ng gói b o trì linkữ ả
Các gói tin c a LCP có 3 l pủ ớ
LCP - Configure-Request
Một thiết lập muốn mở một kết nối phải truyền
một Configure-Request. Trường Options được
điền với những cấu hình mong muốn và phải
khác với những cấu hình mặc định của link.

Code: 1.

Identifier: Trường Identifier phải thay đổi bất cứ khi nào mà nội
dung của trường Option thay đổi, và bất cứ khi nào một reply
hợp lệ được nhận từ yêu cầu ( request) trước đó.


Options: Trường Option có thể khác nhau về độ dài và chứa
danh sách từ 0 tới nhiều cấu hình tùy chọn mà người gửi muốn
thương lượng.
LCP - Configure-Ack
Nếu mỗi Cấu hình Option nhận được trong Configure-Request
có thể nhận ra được và mọi giá trị đều chấp nhận được, thì thiết
lập phải gửi Configure-Ack. Khi nhận Configure-Ack, trường
Identifier phải phù hợp với Configure-Request được truyền trước
đó. Thêm nữa, những Cấu hình Option trong Configure-Ack nhất
định phải hoàn toàn trùng khớp với những gì trong Configure-
Request đã truyền. Những gói không phù hợp sẽ bị bỏ.
Code: 2
Identifier: Được gán bằng trường identifier của Configure-
Request tạo Configure-Ack này.
Options: Trường Options khác nhau về độ dài ( length), và chứa 0
hay nhiều cấu hình tùy chọn mà người nhận đã nhận biết và đồng
ý.
LCP - Configure-Nak

Nếu mọi trường của cấu hình tùy chọn
nhận được đều có thể nhận ra, nhưng vài
giá trị trong đó lại không thể chấp nhận
được, thì thiết lập phải gửi một Configure-
Nak.

Nhận được Configure-Nak phù hợp thì
một Configure-Request mới sẽ được gửi
lại với cấu hình tùy chọn được chỉnh lại
như đã xác định trong Configure-Nak
LCP - Configure-Reject

Nếu vài cấu hình tùy chọn trong Configure-Request
không thể nhận ra hoặc không được chấp nhận (như
là đã được tinh chỉnh bởi quản trị mạng), thì phải gửi
một gói Configure-Reject.

Code: 4.

Identifier: Giá trị tương ứng với Configure-Request tạo ra
Configure-Reject đó.

Options: Một hay nhiều cấu hình tùy chọn mà người gửi từ
chối.
Configure Option – Authentication
Người ta muốn một số đường link sẽ yêu cầu peer
tự xác thực trước khi cho phép những gói giao thức
tầng mạng trao đổi. Cấu hình Option này là phương
pháp để đàm phán việc dùng 1 giao thức chuyên
biệt để xác nhận.
Một thiết lập không được có nhiều cấu hình tùy chọn
dạng Authentication-Protocol trong những gói
Configure-Request

Type: 3

Authentication-Protocol: chỉ ra giao thức xác thực cần thiết. Một
số giá trị:

c023 - Password Authentication Protocol (PAP)

c223 - Challenge Handshake Authentication Protocol (CHAP)


Data: Trường Data là một hay nhiều octet, và chứa thêm dữ liệu
tùy vào giao thức cụ thể.
PAP - Password
Authentication Protocol

PAP(Password Authentication Protocol) là ph ng ươ
pháp xác th c t ng t nh ph ng pháp login ự ươ ự ư ươ
thông th ng.ườ

Xác th c b ng cách ki m tra username và ự ằ ể
password c a ng i đăng nh p. ủ ườ ậ

Các giá tr xác th c là m t giá tr tĩnh (không thay ị ự ộ ị
đ i).ổ
PAP – Cách ho t đ ngạ ộ
1.Client g i gói tin ch a username và password t i Server ử ứ ớ
đ ki m ch ng.ể ể ứ
2.Server ki m tra d li u gói tin t client v i database ể ữ ệ ừ ớ
User c a server.ủ
3.Tuỳ thu c v i k t qu ki m tra thì s tr v gói tin ộ ớ ế ả ể ẽ ả ề
ACK(ch p nh n) hay NAK(không ch p nh n).ấ ậ ấ ậ
PAP – Đánh giá

a Đi mƯ ể

D cài đ t, không c n ph i có thi t b m nh.ễ ặ ầ ả ế ị ạ

Nh c Đi mượ ể


Do truy n username và password truy n th ng ề ề ẳ
qua m ng nên r t d b nghe tr m.ạ ấ ể ị ộ

R t d b t n công d i d ng dò mã hay th mã.ấ ễ ị ấ ướ ạ ử

Do ph ng th c này không có c ch ki m ch ng ươ ứ ơ ế ể ứ
ng i dùng này có th t hay không nên r t d ườ ậ ấ ễ
dàng gi m o ng i dùng.ả ạ ườ
CHAP - Challenge – Handshake
Authenitication Protocol

CHAP (Challenge – Handshake Authenitication
Protocol) là m t ph ng th c xác th c.ộ ươ ứ ự

C hai bên đ u ph i dùng chung password bí m t ả ề ả ậ
dùng đ tính chu i băm. Password không đ c chia ể ỗ ượ
s qua network.ẻ

Các giá tr xác th c là giá tr đ ng (luôn thay đ i).ị ự ị ộ ổ

Dùng hàm băm m t chi u đ xác th c.ộ ề ể ự

M i l n xác th c luôn t o m t chu i bit ng u nhiên ỗ ầ ự ạ ộ ỗ ẫ
đ làm mu i cho hàm băm.ể ố
CHAP – Cách ho t đ ngạ ộ
CHAP – Đánh giá

u Đi mƯ ể

Có tính b o m t cao h n nhi u so v i PAP.ả ậ ơ ề ớ


Ch ng v i các lo i t n công Replay Attack hay nghe tr m.ố ớ ạ ấ ộ

Có c ch ki m tra ng i dùng có th t s hay không.ơ ế ể ườ ậ ự

Nh c Đi mượ ể

Đòi hỏi tính bảo mật ở database lưa thông tin password cao. Vì password
phải lưu dưới dạng bản rõ hay dưới dạng mã hoá 2 chiều thì ta mới có
dùng password để kiểm chứng.

Dễ dàng bị tấn công từ điển nếu mật khẩu người dùng ngắn hoặc dễ đoán
MS-CHAPv2 - Microsoft Challenge
Handshake Authentication vesion 2
Một phương thức xác thực lẫn nhau (2 chiều) dựa trên
mật khẩu chung
T n công MS-CHAPv2ấ

Tấn công từ điển

Đối với các mật khẩu có độ phức tạp yếu, dễ đoán thì dễ dàng
bị tấn công từ điển.

Vén cạn mật khẩu

Phương pháp này chỉ khả thi khi người dùng đặt mật khẩu đơn
giản, còn trong trường hợp mật khẩu có độ phức tạp cao thì dò
tìm là không thể. Ví dụ: khi mật khẩu thiết lập có khoảng 21 ký

tự thi tổng độ phức tạp của nó là 9621 trường hợp.

Vét cạn trị tóm lược MD4(Password)

Nhưng hàm băm MD4 cho bản tóm lược có độ dài 128 bit, với
năng lực tính toán hiện nay, vét cạn 2128 trường hợp là không
thể. Vậy làm thế nào?
Bản tóm lược MD4 của mật khẩu được sử dụng để sinh ra 3 khóa
DES, mỗi khóa 7 byte, và các khóa này được sử dụng hoàn toàn
độc lập với nhau.
Như vậy, thay vì dò tìm giá trị tóm lược, ta có thể dò 3 khóa DES
này với tổng số trường hợp là:
256 + 256 + 256 = 216172782113783808
Rõ ràng là con số này nhỏ hơn rất nhiều so với
2128 = 3.4028236692093846346337460743177e+38
T n công - Chia đ trấ ể ị
NT Response =
DES(K1, ChallengeHash)
DES(K2, ChallengeHash)
DES(K3, ChallengeHash)

×