-: Trong phần này, chúng ta sẽ nói
về thử nghiệm thâm nhập ứng dụng web.
Trước khi có thể bắt đầu nói về
điều đó, chúng ta cần hiểu trang web là gì.
Giống như tôi đã nói trước
đây, một trang web chỉ là một ứng dụng được cài đặt trên máy tính.
Máy tính đó có thể chỉ có thông số kỹ thuật tốt
hơn máy tính của bạn,
nhưng về cơ bản, nó hoạt động chính xác giống như
một máy tính khác.
Nó có một hệ điều hành và
nó cũng có một số ứng dụng để cho
phép nó hoạt động như một máy chủ web.
Hai ứng dụng chính mà nó có thể
có là một máy chủ web và một cơ sở dữ liệu.
Máy chủ web giống như Apache và
cơ sở dữ liệu giống như MySQL.
Về cơ bản, máy chủ web hiểu và thực thi ứng
dụng web.
Ứng dụng web của bạn thực sự sẽ được viết bằng PHP hoặc Python,
bằng bất kỳ ngôn ngữ lập trình nào.
Điều duy nhất là máy
chủ web cần có thể hiểu
và thực thi ứng dụng web này.
Cơ sở dữ liệu chứa dữ liệu được ứng dụng web sử dụng.
Tất cả những điều này được lưu trữ trên một máy tính được gọi là máy chủ.
Máy tính được kết nối với Internet và nó có
địa chỉ IP thực, vì vậy bất kỳ ai cũng
có thể truy cập vào máy tính đó và có thể ping nó.
Ứng dụng web được thực thi bởi máy chủ web được cài
đặt trên máy chủ của bạn, trên mục tiêu của bạn.
Do đó, bất cứ khi nào bạn yêu cầu một trang hoặc bạn chạy
ứng dụng web, nó thực sự được
thực thi trên máy chủ web và nó không được
thực thi trên máy tính của khách hàng.
Nó được thực thi tại máy chủ
web, và sau đó nó gửi một trang HTML sẵn sàng để
đọc cho người mục tiêu hoặc cho khách hàng.
Hãy xem một ví dụ.
Giả sử bạn đang sử dụng điện thoại hoặc trên máy tính và bạn muốn
truy cập facebook. com.
Vì vậy, bạn gõ vào facebook. com vào URL của bạn.
Điều này sẽ được dịch bằng máy chủ DNS sang địa
chỉ IP.
Có một máy chủ dịch mọi tên ,. com ,. edu, hoặc bất kỳ trang web nào có tên miền, vì vậy đây là một
tên miền, với địa chỉ IP có liên
quan của nó.
Vì vậy, bạn yêu cầu facebook. com, yêu cầu chuyển đến máy
chủ DNS,
nó dịch facebook. com tới IP nơi Facebook được lưu
trữ, sau đó
nó sẽ chuyển đến địa chỉ IP của Facebook, nó sẽ
thực thi trang mà bạn muốn bằng cách sử dụng tất cả các ứng dụng mà chúng
tôi đã đề cập và sau đó chỉ cần cung
cấp cho bạn một HTML sẵn sàng.
Những gì bạn nhận lại chỉ là một đánh dấu được
viết bằng HTML, là một ngôn ngữ đánh dấu, là kết quả của việc
thực thi chương trình.
Chương trình được thực thi trên máy chủ
và sau đó bạn chỉ nhận được kết quả.
Điều này rất quan trọng vì trong tương lai, nếu
chúng ta muốn thực thi bất cứ thứ gì
trên máy chủ web, nếu chúng ta muốn nhận một trình
bao, một trình bao
ngược hoặc một vi-rút được thực thi trên máy tính đích,
thì chúng ta cần phải gửi nó sang một ngôn
ngữ. mà máy chủ web hiểu.
Ví dụ, PHP.
Khi bạn thực thi nó ở đó, nó sẽ được thực thi
trên máy tính đó, không phải trên máy tính của bạn.
Bất kể người nào truy cập trang, web shell mà bạn sẽ gửi,
nếu nó được viết bằng PHP, bằng
ngôn ngữ mà máy chủ hiểu,
nó sẽ được thực thi
trên máy chủ chứ không phải
trên máy tính của bạn.
Do đó, nó sẽ cấp cho bạn quyền truy cập vào
máy chủ chứ không phải người đã truy cập vào máy chủ đó.
Mặt khác, JavaScript có một số trang web sử dụng
JavaScript.
JavaScript là một ngôn ngữ phía máy khách.
Nếu bạn quản lý để tìm một trang web
cho phép bạn chạy mã JavaScript, thì mã
sẽ được thực thi bởi các máy khách.
Mặc dù mã có thể được đưa vào máy chủ web,
nhưng nó sẽ được thực thi ở phía máy khách
và nó sẽ cho phép bạn thực hiện
mọi việc với máy khách chứ không phải máy chủ.
Điều rất quan trọng là phải phân biệt giữa ngôn ngữ phía
máy khách và ngôn ngữ phía máy chủ.