Rate this post

Nhiều người có quyền truy cập vào Internet hơn bao giờ hết. Điều này đã thúc đẩy nhiều tổ chức phát triển các ứng dụng dựa trên web mà người dùng có thể sử dụng trực tuyến để tương tác với tổ chức. Mã được viết kém cho các ứng dụng web có thể bị lợi dụng để truy cập trái phép vào dữ liệu nhạy cảm và máy chủ web.

Trong hướng dẫn này, bạn sẽ học cách hack các trang web và chúng tôi sẽ giới thiệu cho bạn các kỹ thuật hack ứng dụng web và các biện pháp chống lại bạn có thể áp dụng để bảo vệ chống lại các cuộc tấn công như vậy.

Các chủ đề được đề cập trong hướng dẫn này

Hacking là gì?

Có được quyền truy cập vào một hệ thống mà bạn không được phép có quyền truy cập được coi là hack. Ví dụ: đăng nhập vào một tài khoản email không được phép truy cập, giành quyền truy cập vào một máy tính từ xa mà bạn không được phép truy cập, đọc thông tin mà bạn không được phép đọc được coi là hack. Có rất nhiều cách để hack hệ thống.

Các bài viết liên quan:

Ethical hacking là gì?

Ethical hacking còn được gọi là Hacking mũ trắng hoặc Kiểm tra thâm nhập. Hack theo đạo đức liên quan đến một nỗ lực được cho phép để có được quyền truy cập trái phép vào hệ thống máy tính hoặc dữ liệu. Hack theo đạo đức được sử dụng để cải thiện tính bảo mật của hệ thống và mạng bằng cách sửa lỗ hổng bảo mật được tìm thấy trong khi thử nghiệm.

Xem thêm Các bước hack hệ thống

Các hacker có đạo đức cải thiện tình hình an ninh của một tổ chức. Tin tặc có đạo đức sử dụng các công cụ, thủ thuật và kỹ thuật giống như các tin tặc độc hại đã sử dụng, nhưng với sự cho phép của người có thẩm quyền. Mục đích của việc hack theo đạo đức là cải thiện tính bảo mật và bảo vệ hệ thống khỏi các cuộc tấn công của những người dùng độc hại.

Các loại hacking chủ yếu

Malware

Nếu bạn đã từng thấy cảnh báo chống vi-rút bật lên trên màn hình của mình hoặc nếu bạn nhấp nhầm vào tệp đính kèm email độc hại, thì bạn đã có một cuộc gọi gần với Malware. Những kẻ tấn công thích sử dụng Malware để có được chỗ đứng trong máy tính của người dùng — và do đó, văn phòng họ làm việc — vì nó có thể rất hiệu quả.

“Malware” đề cập đến các dạng Malware khác nhau, chẳng hạn như vi rút và ransomware. Một khi Malware có trong máy tính của bạn, nó có thể tàn phá tất cả các loại, từ chiếm quyền kiểm soát máy của bạn, theo dõi các hành động và thao tác gõ phím của bạn, đến âm thầm gửi tất cả các loại dữ liệu bí mật từ máy tính hoặc mạng của bạn đến cơ sở nhà của kẻ tấn công.

Những kẻ tấn công sẽ sử dụng nhiều phương pháp khác nhau để đưa Malware vào máy tính của bạn, nhưng ở một số giai đoạn, nó thường yêu cầu người dùng thực hiện một hành động để cài đặt Malware. Điều này có thể bao gồm việc nhấp vào liên kết để tải xuống tệp hoặc mở tệp đính kèm trông có vẻ vô hại (như tài liệu Word hoặc tệp đính kèm PDF), nhưng thực sự có trình cài đặt Malware ẩn bên trong.

Xem thêm Phương pháp phân tích mã độc(malware)

Phishing

Tất nhiên, rất có thể bạn sẽ không chỉ mở một tệp đính kèm ngẫu nhiên hoặc nhấp vào một liên kết trong bất kỳ email nào đến với bạn — phải có lý do thuyết phục để bạn thực hiện hành động. Những kẻ tấn công cũng biết điều này. Khi kẻ tấn công muốn bạn cài đặt Malware hoặc tiết lộ thông tin nhạy cảm, chúng thường sử dụng các chiến thuật Phishing hoặc giả làm ai đó hoặc điều gì đó khác để khiến bạn thực hiện hành động mà bình thường không làm. Vì chúng dựa vào sự tò mò và sự bốc đồng của con người, các cuộc tấn công Phishing có thể khó ngăn chặn.

Trong một cuộc tấn công Phishing, kẻ tấn công có thể gửi cho bạn một email có vẻ như là từ người mà bạn tin tưởng, chẳng hạn như sếp của bạn hoặc công ty mà bạn hợp tác kinh doanh. Email sẽ có vẻ hợp pháp và nó sẽ có một số cấp bách đối với nó (ví dụ: hoạt động gian lận đã được phát hiện trên tài khoản của bạn). Trong email, sẽ có một tệp đính kèm để mở hoặc một liên kết để nhấp vào. Khi mở tệp đính kèm độc hại, bạn sẽ cài đặt Malware vào máy tính của mình. Nếu bạn nhấp vào liên kết, nó có thể đưa bạn đến một trang web hợp pháp yêu cầu bạn đăng nhập để truy cập một tệp quan trọng — ngoại trừ trang web thực sự là một cái bẫy được sử dụng để lấy thông tin đăng nhập của bạn khi bạn cố gắng đăng nhập.

Để chống lại các nỗ lực Phishing, hiểu tầm quan trọng của việc xác minh người gửi email và tệp đính kèm / liên kết là điều cần thiết.

Xem thêm Tìm hiểu thêm về các cuộc tấn công Phishing.

SQL Injection

SQL (phát âm là “sequel”) là viết tắt của ngôn ngữ truy vấn có cấu trúc; đó là một ngôn ngữ lập trình được sử dụng để giao tiếp với cơ sở dữ liệu. Nhiều máy chủ lưu trữ dữ liệu quan trọng cho các trang web và dịch vụ sử dụng SQL để quản lý dữ liệu trong cơ sở dữ liệu của họ. Một cuộc tấn công chèn SQL nhắm mục tiêu cụ thể vào loại máy chủ này, sử dụng mã độc hại để yêu cầu máy chủ tiết lộ thông tin mà bình thường sẽ không. Điều này đặc biệt có vấn đề nếu máy chủ lưu trữ thông tin khách hàng cá nhân từ trang web, chẳng hạn như số thẻ tín dụng, tên người dùng và mật khẩu (thông tin xác thực) hoặc thông tin nhận dạng cá nhân khác, là những mục tiêu hấp dẫn và sinh lợi cho kẻ tấn công.

Một cuộc tấn công SQL injection hoạt động bằng cách khai thác bất kỳ một trong những lỗ hổng SQL đã biết cho phép máy chủ SQL chạy mã độc hại. Ví dụ: nếu máy chủ SQL dễ bị tấn công chèn ép, kẻ tấn công có thể truy cập hộp tìm kiếm của trang web và nhập mã buộc máy chủ SQL của trang web phải kết xuất tất cả tên người dùng và mật khẩu được lưu trữ cho Địa điểm.

Tìm hiểu SQL injection

XSS

Trong một cuộc tấn công SQL injection, kẻ tấn công sẽ truy lùng một trang web dễ bị tấn công để nhắm mục tiêu vào dữ liệu được lưu trữ của nó, chẳng hạn như thông tin đăng nhập của người dùng hoặc dữ liệu tài chính nhạy cảm. Nhưng nếu kẻ tấn công muốn trực tiếp nhắm mục tiêu người dùng của trang web, họ có thể chọn tấn công theo kịch bản trên nhiều trang web. Tương tự như cuộc tấn công SQL injection, cuộc tấn công này cũng bao gồm việc tiêm mã độc vào một trang web, nhưng trong trường hợp này, bản thân trang web đó không bị tấn công. Thay vào đó, mã độc mà kẻ tấn công đã tiêm vào chỉ chạy trong trình duyệt của người dùng khi họ truy cập trang web bị tấn công và nó sẽ theo dõi trực tiếp khách truy cập chứ không phải trang web.

Một trong những cách phổ biến nhất mà kẻ tấn công có thể triển khai tấn công kịch bản trên nhiều trang web là bằng cách đưa mã độc hại vào một nhận xét hoặc một tập lệnh có thể tự động chạy. Ví dụ: họ có thể nhúng một liên kết đến một JavaScript độc hại trong một nhận xét trên blog.

Các cuộc tấn công tập lệnh trên nhiều trang web có thể gây tổn hại đáng kể đến danh tiếng của trang web bằng cách đặt thông tin của người dùng vào nguy cơ rủi ro mà không có bất kỳ dấu hiệu nào cho thấy bất kỳ điều gì độc hại thậm chí đã xảy ra. Bất kỳ thông tin nhạy cảm nào mà người dùng gửi đến trang web — chẳng hạn như bằng chứng xác thực, thông tin thẻ tín dụng hoặc dữ liệu cá nhân khác — có thể bị lấy cắp thông qua tập lệnh trên nhiều trang web mà chủ sở hữu trang web không nhận ra rằng đã có sự cố ngay từ đầu.

Xem thêm Công cụ Sniffing & Spoofing trong kali linux

DoS

Hãy tưởng tượng bạn đang tham gia giao thông trên con đường nông thôn một làn xe, với những chiếc xe nhức nhối đến xa mắt có thể nhìn thấy. Thông thường con đường này không bao giờ có nhiều hơn một hoặc hai chiếc xe hơi, nhưng một hội chợ hạt và một sự kiện thể thao lớn đã kết thúc cùng lúc, và con đường này là con đường duy nhất để du khách rời thị trấn. Con đường không thể xử lý lượng xe cộ đông đúc, và do đó, nó bị lùi lại đến mức không ai có thể rời đi được.

Về cơ bản, đó là những gì xảy ra với một trang web trong cuộc tấn công từ chối dịch vụ (DoS). Nếu bạn làm ngập một trang web với nhiều lưu lượng truy cập hơn mức mà nó được xây dựng để xử lý, bạn sẽ làm quá tải máy chủ của trang web và rất khó để trang web cung cấp nội dung của nó cho những khách truy cập đang cố gắng truy cập.

Tất nhiên, điều này có thể xảy ra vì những lý do vô thưởng vô phạt, chẳng hạn nếu một tin bài lớn bị phá vỡ và trang web của một tờ báo bị quá tải với lưu lượng truy cập từ những người cố gắng tìm hiểu thêm. Nhưng thông thường, loại quá tải lưu lượng này là độc hại, vì kẻ tấn công làm ngập một trang web với lượng truy cập quá lớn để về cơ bản đóng cửa nó đối với tất cả người dùng.

Trong một số trường hợp, các cuộc tấn công DoS này được thực hiện bởi nhiều máy tính cùng một lúc. Kịch bản tấn công này được gọi là Tấn công Từ chối Dịch vụ Phân tán (DDoS). Kiểu tấn công này thậm chí còn khó khắc phục hơn do kẻ tấn công xuất hiện đồng thời từ nhiều địa chỉ IP khác nhau trên thế giới, khiến việc xác định nguồn gốc của cuộc tấn công càng khó khăn hơn đối với các quản trị viên mạng.

Tìm hiểu thêm về các cuộc tấn công từ chối dịch vụ.

Session Hijacking và Man-in-the-Middle Attacks

Khi bạn ở trên internet, máy tính của bạn có rất nhiều giao dịch qua lại nhỏ với các máy chủ trên khắp thế giới để họ biết bạn là ai và yêu cầu các trang web hoặc dịch vụ cụ thể. Đổi lại, nếu mọi thứ diễn ra như bình thường, các máy chủ web sẽ phản hồi yêu cầu của bạn bằng cách cung cấp cho bạn thông tin bạn đang truy cập. Quá trình hoặc phiên này xảy ra cho dù bạn chỉ đang duyệt hay khi bạn đang đăng nhập vào một trang web bằng tên người dùng và mật khẩu của mình.

Phiên giữa máy tính của bạn và máy chủ web từ xa được cấp một ID phiên duy nhất, ID này sẽ giữ riêng tư giữa hai bên; tuy nhiên, kẻ tấn công có thể chiếm quyền điều khiển phiên bằng cách chụp ID phiên và đóng giả là máy tính đưa ra yêu cầu, cho phép chúng đăng nhập với tư cách người dùng không nghi ngờ và có quyền truy cập vào thông tin trái phép trên máy chủ web. Có một số phương pháp mà kẻ tấn công có thể sử dụng để lấy cắp ID phiên, chẳng hạn như tấn công theo kịch bản trên nhiều trang web được sử dụng để chiếm đoạt ID phiên.

Kẻ tấn công cũng có thể chọn chiếm quyền điều khiển phiên để chèn chúng vào giữa máy tính yêu cầu và máy chủ từ xa, giả vờ là bên kia trong phiên. Điều này cho phép chúng đánh chặn thông tin theo cả hai hướng và thường được gọi là cuộc tấn công giữa các bên.

Tìm hiểu thêm về các cuộc tấn công man-in-the-middle.

Credential Reuse 

Người dùng ngày nay có rất nhiều thông tin đăng nhập và mật khẩu nên hãy nhớ rằng họ rất muốn sử dụng lại thông tin đăng nhập ở đây hoặc ở đó để làm cho cuộc sống dễ dàng hơn một chút. Mặc dù các phương pháp hay nhất về bảo mật đều khuyên bạn nên có mật khẩu duy nhất cho tất cả các ứng dụng và trang web của mình, nhiều người vẫn sử dụng lại mật khẩu của họ — một thực tế là những kẻ tấn công dựa vào.

Khi những kẻ tấn công có một bộ sưu tập tên người dùng và mật khẩu từ một trang web hoặc dịch vụ bị vi phạm (có thể dễ dàng có được trên bất kỳ trang web chợ đen nào trên internet), chúng biết rằng nếu chúng sử dụng chính những thông tin đăng nhập này trên các trang web khác thì có khả năng chúng sẽ để đăng nhập. Cho dù bạn có hấp dẫn đến mức nào khi sử dụng lại thông tin đăng nhập cho email, tài khoản ngân hàng và diễn đàn thể thao yêu thích của bạn, có thể một ngày nào đó diễn đàn sẽ bị tấn công, cho phép kẻ tấn công dễ dàng truy cập vào email và tài khoản ngân hàng của bạn. Khi nói đến thông tin đăng nhập, sự đa dạng là điều cần thiết. Trình quản lý mật khẩu có sẵn và có thể hữu ích khi quản lý các thông tin đăng nhập khác nhau mà bạn sử dụng.

Đây chỉ là một lựa chọn các kiểu và kỹ thuật tấn công phổ biến. Nó không nhằm mục đích toàn diện và những kẻ tấn công tiến hóa và phát triển các phương pháp mới nếu cần; tuy nhiên, nhận thức và giảm thiểu các loại tấn công này sẽ cải thiện đáng kể tình trạng bảo mật của bạn.

Xem thêm 50+ công cụ tấn Wireless Attack của kali linux

Ứng dụng web là gì? Các mối đe dọa trên web là gì?

Ứng dụng web (hay còn gọi là trang web) là một ứng dụng dựa trên mô hình máy khách-máy chủ. Máy chủ cung cấp quyền truy cập cơ sở dữ liệu và logic nghiệp vụ. Nó được lưu trữ trên một máy chủ web. Ứng dụng khách chạy trên trình duyệt web của khách hàng. Các ứng dụng web thường được viết bằng các ngôn ngữ như Java, C # và VB.Net, PHP, ColdFusion Markup Language, v.v. các công cụ cơ sở dữ liệu được sử dụng trong các ứng dụng web bao gồm MySQL, MS SQL Server, PostgreSQL, SQLite, v.v.

Hầu hết các ứng dụng web được lưu trữ trên các máy chủ công cộng có thể truy cập được qua Internet. Điều này khiến chúng dễ bị tấn công do khả năng tiếp cận dễ dàng. Sau đây là các mối đe dọa ứng dụng web phổ biến.

Xem thêm Kiểm tra lỗ hổng bảo mật Cross-Site Request Forgery (CSRF)

Làm thế nào để bảo vệ trang web của bạn khỏi bị tấn công?

Một tổ chức có thể áp dụng chính sách sau để tự bảo vệ mình khỏi các cuộc tấn công của máy chủ web.

SQL Injection– làm sạch và xác thực các thông số người dùng trước khi gửi chúng đến cơ sở dữ liệu để xử lý có thể giúp giảm nguy cơ bị tấn công thông qua SQL Injection. Các công cụ cơ sở dữ liệu như MS SQL Server, MySQL, v.v. hỗ trợ các tham số và các câu lệnh chuẩn bị sẵn. Chúng an toàn hơn nhiều so với các câu lệnh SQL truyền thống.

DOS– tường lửa có thể được sử dụng để loại bỏ lưu lượng truy cập từ địa chỉ IP đáng ngờ nếu cuộc tấn công là DoS đơn giản. Cấu hình mạng và Hệ thống phát hiện xâm nhập phù hợp cũng có thể giúp giảm khả năng thành công của một cuộc tấn công DoS. Xem thêm Các loại firewall trong thực tế

Cross Site Scripting – xác thực và làm sạch các tiêu đề, các tham số được truyền qua URL, tham số biểu mẫu và giá trị ẩn có thể giúp giảm các cuộc tấn công XSS.

Cookie / Session Poisoning– điều này có thể được ngăn chặn bằng cách mã hóa nội dung của cookie, hết thời gian chờ cookie sau một thời gian, liên kết cookie với địa chỉ IP của ứng dụng khách đã được sử dụng để tạo ra chúng.

Form Tampering – điều này có thể được ngăn chặn bằng cách xác thực và xác minh thông tin đầu vào của người dùng trước khi xử lý.

Code Injection – điều này có thể được ngăn chặn bằng cách coi tất cả các tham số là dữ liệu chứ không phải là mã thực thi. Sanitization và Validation có thể được sử dụng để thực hiện điều này.

Defacement – một chính sách bảo mật phát triển ứng dụng web tốt phải đảm bảo rằng nó bịt kín các lỗ hổng thường được sử dụng để truy cập vào máy chủ web. Đây có thể là cấu hình phù hợp của hệ điều hành, phần mềm máy chủ web và các phương pháp bảo mật tốt nhất khi phát triển ứng dụng web.

Xem thêm Cách để trở thành Hacker

Các bước tiến hành hack website hoặc hệ thống

Chủ yếu có 5 giai đoạn trong việc hack. Không nhất thiết hacker phải làm theo 5 bước này một cách tuần tự. Đó là một quy trình từng bước và khi được làm theo sẽ mang lại kết quả tốt hơn.

Reconnaissance hoặc information gathering

Giai đoạn trinh sát là giai đoạn đầu tiên của quá trình hack. Giai đoạn này còn được gọi là thu thập thông tin và in dấu chân. Giai đoạn này rất tốn thời gian. Trong giai đoạn này, chúng tôi quan sát và thu thập tất cả các mạng và máy chủ thuộc về một tổ chức. Chúng tôi sẽ tìm hiểu mọi thứ về tổ chức như tìm kiếm trên internet, kỹ thuật xã hội, quét mạng không xâm nhập, v.v. Tùy thuộc vào mục tiêu, giai đoạn Trinh sát có thể kéo dài ngày, tuần hoặc tháng. Mục đích chính của giai đoạn này là tìm hiểu về mục tiêu tiềm năng càng nhiều càng tốt. Chúng tôi thường thu thập thông tin về ba nhóm, như sau:

  • Những người liên quan
  • Tổ chức
  • Mạng

Chủ động: Trong trinh sát chủ động, chúng tôi trực tiếp tiếp xúc với mục tiêu để lấy thông tin. Để quét mục tiêu, chúng ta có thể sử dụng công cụ Nmap.

Bị động: Trong trinh sát bị động, chúng tôi gián tiếp thu thập thông tin về mục tiêu. Chúng tôi có thể lấy thông tin về mục tiêu từ các trang web công khai, mạng xã hội, v.v.

Xem thêm infomation gathering

Scanning

Sau khi thu thập tất cả thông tin của tổ chức mục tiêu, các lỗ hổng có thể khai thác được quét bởi tin tặc trong mạng. Trong lần quét này, hacker sẽ tìm kiếm các điểm yếu như các ứng dụng đã lỗi thời, các dịch vụ đang mở, các cổng mở và các loại thiết bị được sử dụng trên mạng.

Quét có ba loại:

Quét cổng: Trong giai đoạn này, chúng tôi quét mục tiêu để lấy thông tin như hệ thống đang hoạt động, cổng đang mở, các hệ thống khác nhau đang chạy trên máy chủ.

Quét lỗ hổng: Trong giai đoạn này, chúng tôi kiểm tra mục tiêu để tìm các điểm yếu có thể bị khai thác. Quá trình quét này có thể được thực hiện bằng các công cụ tự động. Với website chúng ta cần theo dõi các lỗ hổng sau: SQL Injection, DOS, Cross Site Scripting, Cookie / Session Poisoning, Form Tampering, Code Injection, Defacement,…

Lập bản đồ mạng: Trong phần này, chúng tôi vẽ một sơ đồ mạng với thông tin có sẵn bằng cách tìm các bộ định tuyến, cấu trúc liên kết của mạng, máy chủ tường lửa và thông tin máy chủ. Trong quá trình hack, bản đồ này có thể đóng vai trò là một phần thông tin quan trọng.

Xem thêm:

Gaining access

Trong giai đoạn này, tin tặc có được quyền truy cập vào dữ liệu nhạy cảm bằng cách sử dụng kiến ​​thức của giai đoạn trước. Tin tặc sử dụng dữ liệu này và mạng để tấn công các mục tiêu khác. Trong giai đoạn này, những kẻ tấn công có một số quyền kiểm soát các thiết bị khác. Kẻ tấn công có thể sử dụng các kỹ thuật khác nhau như brute-force để có được quyền truy cập vào hệ thống.

Xem thêm:

Maintaining access

Trong giai đoạn này, để duy trì quyền truy cập vào các thiết bị, tin tặc có nhiều lựa chọn khác nhau, chẳng hạn như tạo một cửa sau. Một cuộc tấn công liên tục vào mạng có thể được duy trì bởi tin tặc bằng cách sử dụng cửa hậu. Không sợ bị mất quyền truy cập vào thiết bị, hacker có thể thực hiện một cuộc tấn công vào thiết bị mà họ đã giành được quyền kiểm soát. Ngoài trời ồn ào. Khả năng một hacker bị phát hiện khi một cửa hậu được tạo ra. Cửa hậu để lại dấu vết lớn hơn cho IDS (hệ thống phát hiện xâm nhập). Sử dụng cửa hậu, hacker có thể truy cập vào hệ thống bất kỳ lúc nào trong tương lai.

Xem thêm:

Clearing Tracks

Một hacker có đạo đức sẽ không bao giờ muốn để lại dấu vết về các hoạt động trong khi hack. Vì vậy, tất cả các tệp liên quan đến cuộc tấn công, anh ta phải xóa nó. Mục đích chính của giai đoạn xóa dấu vết là xóa tất cả các dấu vết mà qua đó không ai có thể tìm thấy anh ta.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now