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 (5.28 MB, 26 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<small>Ngơ Thị Lan</small>
PHAN TÍCH, DANH GIA CÁC CONG CỤ NGUON MỞ ĐIÊN HÌNH CHO
KIEM TRA LO HONG BAO MAT UNG DUNG WEB
<small>Chun ngành: Khoa hoc máy tính</small>
Mã số: 60.48.01.01
TĨM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI -2015
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><small>Luận văn được hồn thành tại:</small>
HỌC VIEN CƠNG NGHỆ BƯU CHÍNH VIÊN THONG
<small>Người hướng dẫn khoa học: PGS.TSKH Hồng Đăng Hải</small>
<small>11801017077. ...5...Phản biện 2:... 0G. TH In n0 0000 050</small>
<small>Luận văn sẽ được bảo vệ trước Hội đông châm luận văn thạc sĩ tại Học viện</small>
<small>Cơng nghệ Bưu chính Viễn thơng</small>
<small>Có thê tìm hiệu luận văn tại:</small>
<small>- Thư viện của Học viện Cơng nghệ Bưu chính Viễn thơng</small>
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">Những năm gần đây ti lệ các website tồn tại lỗ hồng bao mật khá cao, không chỉ ở trong nước mà còn trên thế giới. Theo một số liệu thống kê đã được cung cấp
[3]. tỉ lệ các website tồn tại lỗ héng bao mật ở Việt Nam lên đến 40%. Trong khi đó
tỉ lệ này ở khu vực Châu Á là 36%, Châu Âu 15%, Châu Mỹ 5% và Châu Phi 33%. Việc tan công một lỗ hong web đã trở nên khá dé dàng với những kẻ tan cơng, trong khi việc phịng ngừa từ phía quản trị mạng, quản trị Website cịn lỏng lẻo, nhất là
<small>đôi với các cơ quan, tô chức Nhà nước.</small>
Những lỗ hồng bảo mật tổn tại trên website chủ yếu xuất phát từ việc thiếu quy trình kiểm tra đánh giá cũng như kinh nghiệm về lập trình an tồn của đội ngũ lập trình viên. Đặc biệt, một số lượng lớn các website có lỗ hồng là của các ngân hàng mới thành lập hoặc cơ cấu lại, chưa có sự đầu tư đúng mức về an ninh
Với mong muốn đưa ra được giải pháp phịng ngừa cơng cụ phát hiện lỗ
hồng bảo mật hữu hiệu nhằm giúp cho các cơ quan, tổ chức Nhà nước trong việc
“Phân tích, đánh giá các cơng cụ nguồn mở điền hình cho kiểm tra lỗ hồng bao mật
ứng dụng web”. Mục đích hướng tới của luận văn là nghiên cứu tìm hiểu về lỗ hồng
bảo mật ứng dụng web; phân tích, đánh giá một sỐ cơng cụ mã nguồn mở điển hình cho kiểm tra lỗ hồng bảo mật ứng dụng web; thực hiện thử nghiệm kiểm tra một lỗ
<small>hơng bảo mật điên hình của ứng dụng web với một công cụ mã nguôn mở.</small>
Kết quả của luận văn là một module kiểm thử phát hiện lỗ hồng bảo mật <small>website có thê phục vụ cho các tô chức, cơ quan Nhà nước.</small>
<small>Luận văn bao gơm các nội dung chính sau:</small>
<small>- Nghiên cứu về các lỗ hổng bảo mật điển hình trên website theo tiêu chuẩn</small>
<small>OWASP.</small>
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">- Phan tích, đánh giá phương pháp phát hiện lỗ hồng bao mật và một số cơng cụ mã nguồn mở điền hình cho kiểm tra lỗ hồng bảo mật ứng dung web.
- _ Xây dựng mơ hình hệ thống và một module phát hiện một lỗ hồng bảo mật
<small>điển hình là lỗ hong SQL Injection và triển khai thử nghiệm, đánh giá kết</small>
<small>quả.</small>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">Các phương pháp bảo vệ an tồn thơng tin dữ liệu có thé chia làm ba nhóm
Bảo vệ an tồn thơng tin bằng biện pháp hành chính.
Bảo vệ an tồn thơng tin bằng các biện pháp kỹ thuật phần cứng. Bảo vệ an tồn thơng tin bằng biện pháp kỹ thuật phần mềm.
<small>Khái niệm về an tồn thơng tin rat rộng, song nhìn chung gơm các nội dung</small>
<small>bảo vệ thơng tin như sau:</small>
<small>Tính bí mật: Bảo vệ thơng tin đối với chủ sở hữu hợp pháp, chống kẻ bất hợp</small>
pháp (khơng có qun truy nhập) xem được thơng tin.
Tính tồn vẹn: Bảo vệ thơng tin chống bị sửa đổi trái phép.
Tính khả dụng: Bảo vệ đề thơng tin ln sẵn có đối với người truy nhập hợp
Tính xác thực của thông tin: bao gồm xác thực đối tác, xác thực thơng tin trao đơi.
Tính chống chối bỏ: đảm bảo người gửi thơng tin khơng thê thối thác trách
<small>nhiệm về thơng tin mà mình đã gửi.</small>
Trong thời gian vài năm vừa qua, các hệ thống thông tin của Việt Nam, đặc
<small>biệt là các ứng dụng web nói chung và các trang tin điện tử (Website) nói riêng đã</small>
<small>trở thành mục tiêu tân cơng của nhiêu nhóm tội phạm mạng ở cả trong nước và</small>
nước ngồi. Tổng kết tình hình an ninh mạng nửa đầu năm 2015 cho thấy trung bình mỗi tháng xuất hiện hơn 1.000 trang giả mạo Facebook nham lay cắp thông tin
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">tài khoản, lừa tiền người dùng. Ngoài ra, 13.9 triệu tin nhắn rác được phát tán mỗi ngày, 30% website ngân hàng tồn tại lỗ hồng... Đây là những nét chính trong bức tranh về an tồn thơng tin nói chung tại Việt Nam trong 6 tháng đầu năm [3.2.4].
<small>Object References)</small>
<small>1.2.6.L6 dit liệu nhạy cam (Sensitive Data Exposure)</small>
<small>Level Access Control)</small>
<small>and Forwards)</small>
<small>1.3. Các giải pháp đảm bảo an tồn thơng tin cho các trang tin điện tử</small>
1.3.1. Một số giải pháp an toàn kiến trúc hệ thong - Một số giải pháp an toàn mạng VPN:
- Một số giải pháp an toàn mạng WLAN
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">1.3.2. Một số giải pháp an toàn phương tiện kết nối - Một số giải pháp an toàn Router
1.3.3. Giải pháp an tồn hệ thống phịng thủ và bảo vệ
<small>- Giải pháp an toàn Firewall</small>
<small>- Giải pháp an toàn Anti-virus</small>
1.3.4. Giải pháp an toàn hệ thong máy chủ
<small>- Giải pháp an toàn máy chủ Unix/Linux</small>
<small>- Giải pháp an toàn máy chủ Windows</small>
<small>1.3.5. Giải pháp an toàn máy chủ phục vụ web- Giải pháp đảm bảo an toàn máy chủ</small>
<small>- Giải pháp an toàn Webserver</small>
<small>- Giải pháp an toàn Cơ sở dtr liệu</small>
Chương | đã trình bày khái qt về an tồn thơng tin, van dé an tồn bảo mật
<small>cho ứng dụng web nói chung và trang tin điện tử (website) nói riêng. Nội dung</small> chương cũng đã trình bày về hiện trang an tồn bảo mật website, các lỗ héng bảo
mật điền hình trên website, các giải pháp đảm bảo an toàn trang tin điện tử. Thông qua chương này ta cũng nắm được một cách tổng quan về bảo mật ứng dụng web, lỗ hồng bảo mật của ứng dụng web, các biện pháp phịng chống tấn cơng, bảo đảm an
tồn ứng dụng web. Chương sau chúng ta sẽ đi sâu tìm hiểu các phương thức phát
<small>hiện, một số cơng cụ điểm hình cho kiểm tra phát hiện lỗ hồng bảo mật cho ứng</small>
<small>dụng web.</small>
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8"><small>DUNG WEB</small>
OWASP (Open Web Application Security Project) là 1 dự án mở về bao mật
ứng dung web [10-12], dự án là sự cỗ gắng chung của cộng đồng với mục đích giúp các doanh nghiệp có thể phát triển, mua và bảo trì các ứng dụng web một cách an
<small>tồn. OWASP cung câp cho cơng đơng nhiêu ngn “tài ngun” khác nhau:</small>
« _ Cơng cụ và tiêu chuẩn về an tồn thơng tin
« _ Các bộ chn về kiểm tra bảo mật ứng dụng, lập trình an toan và kiểm định
mã nguồn
« Cac thư viện và tiêu chuan điều khién an tồn thơng tin « Cac nghiên cứu mới nhất về bảo mật ứng dụng web
« Cac maillist uy tín về thơng tin bảo mật ...
Tất cả những gì OWASP cung cấp đều là miễn phí và mở cho bắt cứ ai có nhu cầu nâng cao bảo mật thông tin. Điều này giúp OWASP ko bị phụ thuộc vào các nhà tài
<small>trợ, đưa ra những thông tin chính xác, khách quan, khơng thiên vi va có giá tri ứng</small>
dụng cao. Các thành viên chủ chốt của OWASP đều là các tình nguyện viên, bao gồm Ban quản trị, Ban điều hành toàn cầu, lãnh đạo các chi nhánh, lãnh đạo các dự
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9"><small>STTTiéu chiChi tiéu</small> <sup>Phuong</sup>
phap <small>SQL Injection</small> - Chiếm quyền điều khiển Website, cơ sở
dữ liệu của hệ thống
- Giả mạo danh tính, sửa đổi, xáo trộn dữ liệu, thay đổi & phơi bày đữ liệu, ăn cắp,
<small>thêm xóa đữ liệu.</small>
- Upshell, Chiếm quyền điều khiển Server,
- Giả mạo danh tính, sửa đổi, xáo trộn dữ liệu, thay đổi & phơi bay dit liệu, ăn cắp,
<small>thêm xóa đữ liệu.</small>
- Upshell, Chiếm quyền điều khiển Server, <small>Local attack</small>
<small>CRLF- Cross Site Scripting vulnerabilities</small>
<small>- Proxy and web server cache poisoning</small>
<small>- Web site defacement</small>
<small>- Hijacking the client’s session- Client web browser poisoning</small>
<small>câu hình bảo vệ username và passwordbảo vệ file trong .htaccess.</small>
<small>Black-box</small>
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">5 Remote - Thực thi những câu lệnh có thé gây ton | Black-box Commands hại cho hệ thơng như xóa database, người
<small>execution dùng xem được nội dung file config,</small>
<small>- Deface Website. Tuy nhiên nó chỉ chạy</small>
trên trình duyệt phía client và chỉ tắn công vào bề mặt Website, không làm thay đổi
<small>Website trên Server.</small>
<small>dụng web</small>
<small>Kiểm tra 16 hong bảo mật đối với ứng dụng web chính là việc làm thé nào dé</small>
có thê chỉ ra những lỗ hồng đang tồn tại trên hệ thống một cách đầy đủ và khoa học nhất. Điều này quả là một công việc rất khó khăn. Chính vì vậy, người ta đã tìm cách đưa ra các phương pháp kỹ thuật kiểm tra dé nhằm đơn giản hố cơng việc này, đồng thời đảm bảo đủ tin cậy rằng hệ thống sau khi được kiểm tra sẽ có được một báo cáo day đủ và chính xác nhất có thé. Các phương pháp kiểm tra lỗ hồng bảo mật pho biến nhất hiện nay là: phương pháp đánh giá hộp đen, đánh giá hộp trắng, đánh giá hộp xám. Mỗi phương pháp kiểm tra trên đều có những ưu và nhược điểm riêng, chúng ta sẽ xem xét một cách chi tiết ở phần sau đây [3,2].
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">Phương pháp kiểm tra hộp den (Black Box) các lỗ hồng bảo mật trên ứng dung web thực hiện kiêm tra các ứng dụng từ bên ngồi, phía giao diện người dùng.
Tức là quan sát các dữ liệu được chuyên đến ứng dụng và các dữ liệu từ ứng dụng
xuất ra mà biết mã nguồn hay hệ thống bên trong. Quá trình chuyền dữ liệu từ bên ngồi đến ứng dụng có thể thực hiện bằng thủ công hoặc sử dụng công cụ tự
Phương pháp kiểm tra hộp trắng (White Box) các lỗ hong bao mật trên ứng dụng web là kiểm tra, phân tích, tìm kiếm lỗi trực tiếp trên mã nguồn của ứng dụng. Phương pháp này thường được thực hiện bởi nhà phát triển. Quá trình xác định lỗ hồng dựa trên mã nguồn có thé được thực hiện thủ công hoặc bang cong cu.
<small>Phương pháp kiểm tra hộp xám (Grey Box) được sử dụng để kiểm tra khi</small>
những thông tin được biết bên trong hệ thống mang tính hạn chế. Thực chất đây là phương pháp kết hợp giữa kiểm tra Black Box và White Box. Trong phương pháp
này, kiểm tra viên có thé được xem tài liệu thiết kế, truy cập CSDL. Với những
thơng tin có được, kiểm tra viên có thể có kịch bản kiểm tra tốt hơn khi lên kế hoạch kiểm tra. Việc kiểm tra có thé được tiến hành với vai trò người dùng cuối hoặc nhà phát triển phần mềm [3,2].
<small>dụng web</small>
<small>2.4.1. Công cụ Acunetix</small>
Acunetix là công cụ thương mại với các khả năng kiểm tra lỗi bảo mật rất
mạnh và được xếp thứ 3 trong s6 các công cụ thương mại [12]. Acunetix hỗ trợ tất cả các phương thức kiểm tra như kiểm tra thủ công hoặc kiểm tra tự động. Công cu
<small>này cho phép quét thông qua máy Client với mọi ứng dụng web. Với mỗi công</small>
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">nghệ. Tuy nhiên Acunetix đưa đến người sử dụng với phí rất đắt, với 3995 USD/1năm cho một bản quyên.
<small>2.4.2. Công cụ AppScan</small>
AppScan là công cụ thương mại rất mạnh dùng dé quét các lỗ hồng bao mật
ứng dụng web [3,2,15]. Cơng cụ này có thể qt được những ứng dụng phát triển
trên nền tảng công nghệ khác nhau, mạnh hơn Acunetix đối với việc quét các ứng dụng phát triển băng PHP. Ví dụ, với lỗ hong rất phổ biến là Local File Inclusion, nếu quét bằng Acunetix thì độ chính xác là 57,35% cơng cụ AppScan là 100%. Ngồi ra AppScan là một cơng cụ dễ sử dụng, sau khi quét có thé đưa ra những báo
cáo rõ ràng và đầy đủ. Công cụ này đứng đầu trong bảng xếp hạng về tính năng
trong số các cơng cụ thương mại. Tuy nhiên mức phí hàng sử dụng hàng năm tất
cao, 17700 $/1năm cho một bản quên [3,15]
<small>2.4.3. Công cụ Nikto</small>
Là một phần mềm mã nguồn mở với tính năng Web Server Scanner, tinh
năng kiểm tra các máy chủ Web [3,15]. Bao gồm hơn 3200 phương thức nhận diện
các file, lỗi logic nguy hiểm, hỗ trợ hơn 625 phiên bản Web Server, bao gồm những lỗi trên 230 Web Server khác nhau. Tính năng Scan kết hợp với các Plugins luôn được update tự động đảm bảo đưa ra kết quả đầy đủ và chính xác nhất. Là một công cụ rất hữu hiệu nhưng không được update thường xuyên. Các lỗi mới nhất thường được update chậm và khơng thể tìm thấy.
<small>2.4.4. Cơng cụ WebScarab</small>
Webscarab là một framework được viết bằng Java phục vụ cho việc phân
<small>tích những ứng dụng web với hai giao thức hỗ trợ HTTP và HTTPS [3,15]. Đây là</small>
công cụ miễm phí, việc sử dụng khơng hồn tồn tự động và yêu cầu người kiểm tra
phải có kiến thức chắc về an tồn ứng dụng web, nên có thể coi đây là cơng cụ khó
<small>sử dụng so với các cơng cụ có phí khác. WebScarab có khả năng phi lại hoặc thay</small>
đổi tham số ứng dụng trước khi đi trình những yêu cầu, phản hồi giữa trình duyệt và
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">ứng dụng web. Ngồi ra, cơng cụ cịn cho phép thực hiện một số chức năng hữu ích
<small>khác như [3,2,15]:</small>
<small>2.4.5. Công cụ OWASP ZAP.</small>
ZAP là sản pham open-source, nguồn .
ZAP cho phép người dùng có thé thực hiện nhiều tác vụ nhằm dị tìm điểm u trên ứng dung web.
ZAP cung cấp công cụ quét tự động cũng như một bộ cơng cụ cho phép tìm các lỗ hồng an ninh băng phương pháp thủ công.
Chương 2 đã trình bày về các lỗ hồng bảo mật điển hình cho ứng dụng web theo tiêu chuẩn OWASP; đưa ra tiêu chí và các chỉ tiêu đánh giá mức độ an toàn bảo mật cho các ứng dụng web; phân tích, so sánh các phương pháp kiểm tra lỗ hồng bảo mật ứng dụng web; phân tích, đánh giá một số công cụ phần mềm nguồn
<small>mở kiểm tra lỗ hồng bảo mật ứng dụng web. Trên cơ sở phân tích, đánh giá các</small>
cơng cụ, ta có thể lựa chọn công cụ phần mềm nguồn mở phù hợp để xây dựng một ứng dụng thử nghiệm kiêm tra lỗ hơng bảo mật như sẽ được trình bày trong chương
tiếp theo.
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14"><small>Hình 3. 1 Quy trình rà quét của lỗ hỗng</small>
Các bước ở phương pháp này bao gồm:
- Footprinting: Ở bước này hacker tìm hiểu các thông tin về Website và hệ thống để thu thập được càng nhiều thông tin càng tốt, hacker có thể sử dụng các cơng cụ sẵn có hoặc open soure dé thu thập thông tin.
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">- Scanning: Sau khi đã thu thập đầy đủ các thông tin cần thiết, hacker sẽ bat đầu rà quét các port giao tiếp của Website và người dùng, nắm biết được các port đang mở, các giao dịch đang được thực hiện, các giao thức đang được sử dụng dé duy trì và truyền tải lưu lượng của Website và các lỗi của Website.
- Exploit: Là bước quan trong dé chứng minh được rang lỗ hồng trên Website thu được từ các cơng cụ rà qt có thực sự gây ra những ảnh hưởng cho hệ thông hay mat mát dir liệu hay ko, hacker có thé tan cơng khai thác thử nghiệm các lỗ hồng đó, thường thì những lỗ hồng được các công cụ rà quét tim được thì đều có
<small>các cơng cụ khai thác chúng, tùy vào từng 16 hơng mà có các cơng cụ chun biệt.</small>
- Update patches: Ở bước này thơng thường thì Người quản trị mới có quyền thực hiện, người kiểm thử có thể gửi các văn bản thơng báo hướng dẫn hỗ trợ cho
<small>Người quản tri thực hiện</small>
- Report: Bước này bao gồm các báo cáo phân tích các tình huống, lỗ hồng được đặt ra và đã tìm được nếu được các mỗi nguy hiểm mà Website đang gặp phải, đưa ra các hình thức, biện pháp khắc phục, chi phí khắc phục cho phía khác hàng
được biết.
<small>Nhập địa chỉ URL</small>
Kiểm tra lỗ hông SQL Injection:
</div>