Thứ Tư, 21 tháng 12, 2016

Sử dụng SPIKE và BURP cho việc bảo mật máy tính

HTTP proxy là một công cụ được sử dụng rộng rãi bởi các chuyên gia bảo mật máy tính. Tuy vậy không phải chuyên gia nào cũng hiểu thấu đáo được hết các khía cạnh bảo mật của máy tính. Bài này sẽ giới thiệu cho các bạn cách sử dụng một HTTP proxy như thế nào. 
Các HTTP Proxy và bạn

Thế giới bảo mật máy tính là một thế giới biến đổi không ngừng. Luôn có người khai thác các lỗ hổng và người vá lỗ hổng bảo mật trong các chương trình. Nói ai đó có thể hiểu biết tất cả các khía cạnh bảo mật mạng máy tính là một điều không tưởng. Vì bản chất của bảo mật máy tính và tính chất nhiều khía cạnh của nó, bất cứ chuyên gia bảo mật nào cũng cần phải chọn một lĩnh vực chuyên sâu nào đó cho chính mình. Một trong số đó là lĩnh vực bảo mật ứng dụng web với nhiều hình thái của nó. Tại sao chúng tôi lại nói là trong nhiều hình thái của nó? Đó là vì không phải tất cả các website đều được viết trên cùng một ngôn ngữ. Chúng cũng không chia sẻ tất cả cấu hình giống nhau hay hỗ trợ các chương trình phụ trợ như nhau.

Bảo mật ứng dụng web là một lĩnh vực đáng quan tâm trong thực tế cuộc sống. Các ứng dụng web ngày càng được mở rộng trên Internet với vô số ứng dụng khác nhau. Những ứng dụng đó được thiết kế cho các máy khách có thể sử dụng và tương tác với nó. Một điều nữa là bộ mặt trước công chúng của một công ty trên Internet được tạo bởi các chuyên gia lập trình không có nghĩa là không có lỗi. Và một điều nữa là không thể viết một mã hoàn hảo mà không quan tâm đến ngôn ngữ được sử dụng.

Điều này dẫn đến một khía cạnh khác của bảo mật ứng dụng web. Thường thì một số lượng lớn ứng dụng web được viết mã đều rơi vào tình trạng vẫn chưa đảm bảo tốt được chất lượng. Các lập trình viên hầu như đã cảm thấy hạnh phúc khi họ kết thúc được dự án đúng thời gian và tốn rất ít thời gian cho việc kiểm định lại mã đã được viết. Có một số công cụ bên ngoài có thể cho phép chúng ta kiểm định được mã nhưng một số trong chúng chưa thật sự đáng tin cậy. Những công cụ tốt thì hầu như rất đắt đỏ.

Tất cả những người không phải là lập trình viên cũng có thể biết điều đó, đó là khó khăn lớn trong việc viết mã. Nó cũng đặc biệt đúng khi nói đến chương trình phần mềm dành cho các doanh nghiệp với hàng nghìn dòng mã tạo nên một chương trình như vậy. Nhiều khi lập trình viên nắm tốt được công việc trong một chu trình phần mềm nhưng họ có thể không hiểu nhiều về giao thức mà họ đang tạo mã cho nó.

Vậy khi một lập trình viên kết thúc việc viết một ứng dụng web mà anh ta được giao nhiệm vụ thì cũng là lúc chúng ta cần phải kiểm tra lại nó và tìm xem có bất kỳ lỗ hổng nào không hoặc những trục trặc nhỏ trong đó hay không. Cách nào tốt nhất để giải quyết vấn đề kiểm tra này? Đây thực sự là một câu hỏi hay. Câu hỏi đưa chúng ta quay trở về mục đích của loạt bài này. Việc kiểm tra một ứng dụng web mới toanh tốt nhất là sử dụng HTTP proxy. Đây thực sự là một công cụ tuyệt vời, công cụ này sẽ cho phép các chuyên gia phát triển có thể tương tác được với ứng dụng web theo nhiều cách mà một web session điển hình sẽ không tạo lại. Chuyên gia phát triển có thể chặn yêu cầu phía trình khách và thay đổi hầu hết các trường bên trong để nhấn mạnh vào ứng dụng web.

Tiếp cận vấn đề

Trước khi vào vấn đề chúng tôi sẽ giới thiệu cho bạn một số thông tin về nền tảng cho chủ đề này, đây là một điều quan trọng khi chúng ta tiếp cận với một vấn đề mới nào đó. Hai HTTP proxy mà chúng ta sẽ quan sát và sử dụng là SPIKE và BURP. Cái thứ nhất được viết bởi Dave Aitel của Immunitysec, thành phần đi sau được viết bởi một số người khác.

Bây giờ là thời điểm cài đặt SPIKE proxy, đừng cho rằng bạn sẽ download được nó ngay bây giờ từ đường liên kết trong đoạn trên vì bạn sẽ nhận được một thông báo rằng cần có một bộ thông dịch Python cho SPIKE làm việc. Chính vì vậy bạn hãy download Python ở đây trước. Bạn cần phải cung cấp cho nó một địa chỉ email, nhưng chỉ cần như vậy là đủ. Khi đã download và cài đặt được Python bạn cần phải đặt SPIKE tại đường dẫn gốc của ổ C (c:\). Từ đây bạn mở cửa sổ lệnh của DOS, mở thư mục SPIKE. Bạn cần phải đọc file README.txt để cấu hình đúng cho trình duyệt web của mình.

Hình 1

Hình 2
Bước cuối cùng là đánh vào đó “runme.bat”. Khi đã thực hiện điều đó, bạn nhập tiếp trong thanh bar url của trình duyệt web http://spike/ và sẽ thấy được SPIKE. Chúc mừng bạn đã cài đặt và cấu hình một HTTP proxy. Những gì cần phải làm với tiếp lúc này? Câu trả lời rất dễ dàng. Hãy có một chút thư giãn với máychủ web. Trong trường hợp tôi đã cài đặt Apache web server trên Vmware khác cho mục đích kiểm tra của chúng ta. Điều này sẽ cho phép chúng ta chơi với SPIKE trong môi trường thử nghiệm được kiểm soát. Vẫn chưa có gì được làm với máy chủ web và tôi cài đặt một website của riêng trên đó.

Thời điểm kiểm tra

Bất cứ khi nào thực hiện bất kỳ công việc gì thì bạn cũng nên có một số biểu mẫu của packet sniffer đang chạy trong chế độ nền. Điều để có thể thẩm định đầu ra của công cụ mà bạn đang chạy trong trường hợp khác biệt và có các kết quả lạ. Cũng không khác biệt đối với trường hợp của chúng tôi. Tôi đã nghĩ đến tcpdump từ MicroOLAP, thành phần sẽ làm việc tốt với with Windows XP SP2. Nó cũng hoàn toàn miễn phí đối với người dùng gia đình.

Sau khi cài đặt được công cụ này, chúng ta đã có được packet sniffer chạy trong chế độ nền. Lúc này sẽ bắt nó chỉ ghi các gói giữa máy tính mà SPIKE đang chạy và máy tính mà Apache web server đang chạy. Điều đó sẽ giảm được số lượng các gói mà máy tính đang tấn công có thể quan sát khác. Bạn cũng có thể lọc kỹ hơn điều đó bằng cách chỉ thị tcpdump để ghi các gói với cổng 80 trong nó. Ví dụ của tcpdump này bạn có thể xem ở hình dưới.

Hình 3
Bạn có thể thấy trên hình có 945 gói đã thu được trước khi hủy session của tcpdump. Đây là hành động chạy chế độ nền khác mà tôi đang chạy trên máy tính của mình. Điều đó cho thấy tại sao bạn muốn một bộ lọc chọn tương đối hẹp khi chạy các kiểm tra thí nghiệm hoặc trong thực hiện các công việc thực. Chúng ta có thể thấy nhiều điều, ở đây có một số phần cần phải lưu tâm trước khi chuyển sang học về cách sử dụng một HTTP proxy như thế nào. Đây cũng có thể là một bài tập về nhà trước khi chuyển sang vấn đề mới ở các phần sau.

Không có nhận xét nào:

Đăng nhận xét