1. Trang chủ
  2. » Luận Văn - Báo Cáo

trình bày cụ thể các bước thực hiện tool quét tìm phát hiện các loại lỗ hổng bảo mật

67 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Trình Bày Cụ Thể Các Bước Thực Hiện Tool Quét Tìm Phát Hiện Các Loại Lỗ Hổng Bảo Mật
Tác giả Nguyễn Quốc Cường
Trường học Trường Đại Học
Chuyên ngành Bảo Mật Thông Tin
Thể loại bài luận
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 67
Dung lượng 6,21 MB

Nội dung

Trình bày cụ thể các bước thực hiện Tool quét, tìm, phát hiện các loại lỗ hổng bảo mật:· Password Crack ToolsBạn sử dụng WFuzz như thế nào?Bạn có thể tìm thấy WFuzz trong phần Phân tích

Trang 1

Trình bày cụ thể các bước thực hiện Tool quét, tìm, phát hiện các loại lỗ hổng bảo

mật:

· Password Crack Tools

Bạn sử dụng WFuzz như thế nào?

Bạn có thể tìm thấy WFuzz trong phần Phân tích ứng dụng web của menu Kali

Linux.

Trang 2

Để sử dụng WFuzz, bạn cần cung cấp các đối số sau:

1 Tải trọng để kiểm tra ứng dụng mục tiêu

2 Tham số để đưa trọng tải vào

3 URL ứng dụng đích

Ngoài ra, chúng tôi thường cần cung cấp một cookie để wfuzz để nó tiếp cận đúng

thành phần dễ bị tấn công Điều này được thực hiện bằng cách thêm đối số -b

<cookie> Điều này là bắt buộc nếu bạn cần xác thực để truy cập vào phần của ứng

dụng mà bạn muốn tấn công.

Để hiểu cách sử dụng wfuzz, giả sử rằng chúng ta có trang đăng nhập sử dụng SQL

để truy vấn nếu người dùng cung cấp tên người dùng hoặc mật khẩu hợp lệ Khi

chúng tôi gửi biểu mẫu đăng nhập, biểu mẫu sẽ đăng tên người dùng và mật khẩu

làm thông số Nếu tên người dùng và mật khẩu hợp lệ, người dùng sẽ được đưa đến

trang chào mừng Trong tất cả các trường hợp khác, họ sẽ gặp lỗi thông báo tên

người dùng hoặc mật khẩu không hợp lệ.

Trang 3

Với các biểu mẫu đăng nhập như thế này, chúng tôi thường muốn kiểm tra khả năng

bị chèn SQL Đây là một nhiệm vụ mà wfuzz sẽ là hoàn hảo cho Để bắt đầu, chúng

ta cần xác định cách dữ liệu được gửi đến chương trình phụ trợ khi nó được người

dùng gửi Để làm điều này, chúng ta có thể sử dụng một công cụ như Burp Suite để

chặn gói tin được gửi khi nhấn nút gửi Làm điều này sẽ cho chúng ta thấy dữ liệu

bài đăng được định dạng như thế nào.

Từ điểm chặn này, chúng ta có thể thấy rằng dữ liệu được chuyển đến máy chủ ở

định dạng “tên người dùng = đầu vào & mật khẩu = đầu vào” Chúng tôi có thể yêu

cầu wfuzz gửi dữ liệu ở định dạng này và nó sẽ có thể gửi yêu cầu đăng bài đến

trang đăng nhập thành công Để làm điều này, chúng ta có thể sử dụng lệnh:

Tệp wfuzz -c -z, / usr / share / wordlists / wfuzz / Injutions / SQL.txt -d “username

= admin & password = FUZZ” -u <TARGET_URL>

Để chia nhỏ lệnh này, chúng ta có thể xem mỗi đối số cung cấp những gì cho

wfuzz Để bắt đầu, cờ làm cho đầu ra của màu đầu cuối, điều này chỉ làm cho kết -c

quả dễ đọc hơn Cờ chỉ định tải trọng sẽ sử dụng để làm mờ trang web Đối số -z

được cung cấp là một tệp, được đặt tại

Trang 4

mỗi chương trình trong / usr / share / wordlists Bên trong thư mục wfuzz, bạn sẽ

tìm thấy tất cả các danh sách từ phổ biến mà wfuzz được thiết lập để sử

dụng Trong trường hợp này, tôi đã sử dụng danh sách từ khóa SQL injection để

xem xét các lỗi SQL phổ biến Bạn có thể dễ dàng thêm vào các danh sách này hoặc

tạo danh sách của riêng mình nếu bạn có các trường hợp thử nghiệm cụ thể mà bạn

muốn áp dụng.

Sau đó, chúng tôi sử dụng cờ -d để chỉ định dữ liệu nào sẽ đăng lên máy chủ Như

chúng ta đã thảo luận, định dạng là “tên người dùng = INPUT & password =

INPUT” Trong trường hợp này, tôi đặt tên người dùng thành quản trị và đặt mật

khẩu thành FUZZ Wfuzz được thiết lập để thay thế từ khóa FUZZ bằng các từ

trong tệp tải trọng được cung cấp, vì vậy trong ví dụ này, chúng tôi đang đưa các từ

khóa SQL injection vào tham số mật khẩu Cuối cùng, chúng tôi cung cấp URL

mục tiêu và chạy ứng dụng Khi điều này được thực hiện, chúng tôi sẽ nhận được

một đầu ra, tương tự như những gì được hiển thị bên dưới.

Trang 5

Điều này hiển thị cho bạn mã phản hồi của từng truy vấn đã được nhập vào, từ đó

cho bạn biết liệu truy vấn có thành công hay không Phản hồi 200 có nghĩa là truy

vấn đã hoàn thành ok, điều này cho thấy rằng không có lỗi hoặc chuyển hướng nào

xảy ra Đầu ra này trong trường hợp này sẽ là một lần thử không thành công Các

nỗ lực hiển thị mã phản hồi 302 có nghĩa là chuyển hướng đã xảy ra Với biểu mẫu

đăng nhập của chúng tôi, chuyển hướng có nghĩa là chúng tôi đã xác thực thành

công, do đó, điều này cho thấy rằng SQL injection đã thành công cho các đầu vào

Trang 6

Điều này minh họa một ví dụ đơn giản về cách wfuzz có thể được sử dụng để làm

mờ các ứng dụng web Thông qua việc sử dụng các danh sách từ khác nhau và các

yêu cầu đăng bài, bạn có thể dễ dàng bắt và sửa các lỗ hổng trước khi chúng bị

người dùng độc hại tìm thấy.

· Debug Tools

Cài đặt Flutter

Flutter cần một số điều kiện tiên quyết để cài đặt và có một yêu cầu hệ thống tiêu

chuẩn Vui lòng xem qua hướng dẫn từng bước này để cài đặt Flutter trên hệ điều

hành windows của bạn.

Xin lưu ý rằng bạn phải cài đặt Android Studio và định cấu hình Android SDK,

Trình quản lý AVD, như được giải thích trong liên kết được đề cập ở trên.

Sau khi cài đặt thành công Flutter, bạn có thể kiểm tra bằng cách gõ lệnh sau vào

dấu nhắc lệnh.

flutter doctor

Nếu mọi việc suôn sẻ, lệnh sẽ cung cấp đầu ra như hình dưới đây.

flutter doctor

Doctor summary (to see all details, run flutter doctor -v):

[√] Flutter (Channel stable, 2.0 6, on Microsoft Windows [Version

[√] VS Code, -bit edition (version 64 1.56 2)

[√] Connected device ( available) 1

• No issues found!

Thiết lập mã Visual Studio cho Flutter

Trang 7

Tôi có thể thiên vị nhưng Visual Studio Code là trình soạn thảo mã và IDE yêu

thích của tôi Visual Studio Code (VS Code) đi kèm với hỗ trợ gỡ lỗi và thực thi

của ứng dụng Flutter và bạn có thể cài đặt từ đây Sau khi cài đặt, bạn cần cài đặt

phần mở rộng Flutter cho VS Code.

Bây giờ là lúc tạo ứng dụng Flutter.

1 Chuyển đến tùy chọn menu View> Command Palette

2 Gõ “Flutter” và chọn Flutter: New Application Project

3 Tạo hoặc chọn thư mục mẹ cho thư mục dự án mới.

4 Nhập tên dự án, chẳng hạn như tryIt , và nhấn Enter

5 Bạn sẽ thấy rằng một dự án được tạo trong vài giây Vui lòng mở

tệp main.dart nếu nó không tự động mở.

Nếu bạn đang sử dụng bất kỳ trình chỉnh sửa nào khác, chẳng hạn như IntelliJ, vui

lòng nhấp vào liên kết này để thiết lập chúng.

Chạy ứng dụng Flutter

Chúng tôi sẽ sử dụng Trình giả lập Android Studio để chạy ứng dụng và kiểm tra

các thay đổi Vui lòng xem ở cuối bảng điều khiển VS Code Bạn sẽ thấy phiên bản

Flutter và môi trường để chạy ứng dụng (nó là Chrome theo mặc định trong ảnh

chụp màn hình bên dưới).

Nhấp vào Chrome(web-javascript) Nó sẽ mở ra một hộp lựa chọn để khởi động

trình giả lập Android Chọn tùy chọn trình giả lập di động để khởi chạy nó.

Bạn sẽ sớm thấy trình giả lập di động xuất hiện Vì tôi đang sử dụng cấu hình phần

Trang 9

Bây giờ hãy nhấp vào Run tùy chọn menu và Start Debugging

Xin lưu ý, bạn phải main.dart mở tệp trong trình chỉnh sửa Mã VS trong khi bắt đầu

gỡ lỗi từ tùy chọn menu 'Chạy' Ngoài ra, quá trình tải lần đầu tiên của ứng dụng

trong trình giả lập có thể mất một lúc.

Sau khi khởi chạy, ứng dụng có thể trông như thế này.

Trang 11

Hãy thực hiện một số thay đổi đối với ứng dụng

Chúng tôi sẽ thay đổi màu chính và một số văn bản để làm cho ứng dụng phù hợp

với bài viết này Thực hiện các thay đổi sau trong build() chức năng của MyApp lớp

trong main.dart tệp:

Thay thế title giá trị Flutter Demo thành Flutter & Bugfender Demo Thay đổi primarySwatch giá trị từ màu xanh lam sang màu hồng (hoặc bất kỳ màu gì bạn thích).

Trong tiêu đề 'giá trị thuộc tính' của hàm MyHomePage tạo, hãy thay đổi văn bản từ Flutter Demo Home Page thành Flutter & Bugfender Demo

Bây giờ, hãy chuyển sang build() chức năng của _MyHomePageState lớp Trước

tiên, hãy tìm và thay thế văn bản You have pushed the button this many

times: bằng We will log thecounterto Bugfender once you push it

Khi bạn lưu các thay đổi của mình, bạn sẽ thấy ứng dụng đã thay đổi, như trong

hình bên dưới.

Trang 13

Sử dụng Bugfender với Flutter

Tuyệt quá! Chúng tôi có một ứng dụng Flutter cơ bản chạy trên trình giả lập di

động Bây giờ là lúc để định cấu hình SDK Bugfender với ứng dụng Flutter.

Để bắt đầu mọi thứ, hãy tạo một tài khoản với Bugfender Sau khi đăng nhập, hãy

tạo ứng dụng Bugfender cho các ứng dụng web bằng cách sử dụng tùy chọn SDK

Web Bạn có thể làm theo hướng dẫn từng bước này để tạo ứng dụng Bugfender và

bạn sẽ tìm thấy khóa API sẵn sàng cho mình Hãy giữ nó an toàn.

Khi bạn đã tạo ứng dụng của mình, bảng điều khiển Bugfender sẽ cho phép bạn

theo dõi nhật ký, sự cố, phản hồi và sự cố Đây là cách trang tổng quan của tôi

trông:

Bảng điều khiển Bugfender với một ứng dụng

Cài đặt Plugin Bugfender cho Flutter

Mở dấu nhắc lệnh ở thư mục gốc của thư mục dự án và chạy lệnh sau.

flutter pub add flutter_bugfender

Thao tác này sẽ thêm một dòng như thế này vào dự án của bạn: pubspec.yaml

dependencies:

flutter_bugfender: ^2.0.0

Trang 14

Bây giờ trình soạn thảo của bạn có thể chạy một lệnh ngầm flutter pub get Bạn

cũng có thể chạy điều này một cách rõ ràng từ dấu nhắc lệnh.

Sử dụng Plugin Bugfender cho Flutter

Để sử dụng plugin và bắt đầu ghi các hoạt động vào Bugfender, hãy nhập plugin

vào main.dart tệp bằng dòng sau.

import 'package:flutter_bugfender/flutter_bugfender.dart';

Bây giờ chúng ta hãy thử đăng nhập một thứ gì đó từ ứng dụng vào

Bugfender Chúng tôi sẽ thêm nhật ký giống như Initialized Bugfender khi ứng

dụng xuất hiện lần đầu tiên Để làm điều đó, bạn có thể ghi đè initState() phương

thức của _MyHomePageState lớp như sau:

Bây giờ chúng ta có thể tạo initPlatformState() hàm Ở đây, chúng tôi đang khởi tạo

Bugfender bằng cách sử dụng khóa API mà chúng tôi đã tạo ban đầu Sau đó,

chúng tôi ghi lại một tin nhắn:

Trang 15

}

Thao tác này sẽ làm mới ứng dụng trong trình giả lập Tiếp theo, vui lòng truy cập

bảng điều khiển Bugfender Bạn sẽ thấy một mục nhập cho phần Android SDK bên

dưới Device

Nhấn vào nó Bạn sẽ tìm thấy nhật ký chúng tôi đã gửi từ ứng dụng Cùng với nhật

ký này, Bugfender cũng thu thập một số thông tin meta như gói và ID android mà

bạn có thể thấy trong nhật ký.

Ghi nhật ký tương tác

Đã đến lúc thực hiện việc ghi nhật ký vào Bugfender một cách tương tác Ứng

dụng có một nút và khi chúng ta nhấp vào nó, nó sẽ tăng lên counter 1 Còn chúng

ta ghi lại giá trị bộ đếm này thì sao? Để làm điều đó, vui lòng chuyển

đến _incrementCounter() phương thức của _MyHomePageState lớp và thêm một

bản ghi vào _counter giá trị.

Trang 16

Gửi phản hồi từ ứng dụng tới Bugfender

Tiếp theo, chúng tôi sẽ sử dụng API của Bugfender sendFeedback để gửi phản hồi

từ ứng dụng Đầu tiên, hãy thêm một nút phản hồi.

Trang 17

Vì vậy, bây giờ khi chúng tôi nhấn nút phản hồi, phản hồi của người dùng sẽ được

gửi đến Bugfender Đây là cách ứng dụng trông như thế nào sau khi thay đổi.

Trang 19

Quay lại bảng điều khiển Bảng điều khiển Bugfender và duyệt

đến FEEDBACK tab Bạn sẽ tìm thấy một phần có tên là 'Phản hồi của người

dùng' Đây là cùng một phản hồi mà chúng tôi đã gửi từ ứng dụng.

Bạn có thể đi sâu vào phản hồi bằng cách nhấp vào nó và bạn sẽ thấy chi tiết Tại

đây, bạn có thể thay đổi trạng thái phản hồi và gửi nó dưới dạng sự cố tới kho lưu

trữ GitHub.

Gửi sự cố từ ứng dụng tới Bugfender

Được rồi, bây giờ chúng ta có thể tạo một vấn đề và gửi nó đến dịch vụ

Bugfender Để làm điều đó, hãy thêm một nút nữa với một trình xử lý báo chí.

Tiếp theo, chúng ta sẽ xác định _repotIssue hàm Ở đây, trước tiên chúng tôi gửi

nhật ký lỗi và sau đó gửi vấn đề với tiêu đề và thông tin chi tiết.

void _reportIssue() {

FlutterBugfender.error('Reporting issue');

Trang 20

FlutterBugfender sendIssue("Issue Found" "We have found an issue in the ,

counter");

}

Bây giờ, nếu chúng ta nhấn vào nút có biểu tượng báo cáo lỗi, ứng dụng sẽ gửi

nhật ký lỗi và sự cố tới Bugfender.

Trang 22

Đi tới bảng điều khiển Bugfender và duyệt đến ISSUES tab Bạn sẽ thấy vấn đề

được ghi ở đó Vui lòng bấm vào đó để xem thông tin chi tiết.

Chế độ xem chi tiết có thể giống như hình ảnh bên dưới Như trường hợp phản hồi,

bạn cũng có thể thay đổi trạng thái và tạo sự cố trên GitHub.

Nếu bạn nhận thấy nhật ký, bạn sẽ tìm thấy nhật ký lỗi được gửi từ ứng dụng.

Các API quan trọng hơn từ Bugfender để sử dụng

Bugfender có nhiều phương thức API khác mà bạn có thể sử dụng để gửi nhật

ký Đây là danh sách các phương pháp mà chúng tôi chưa sử dụng trong ứng dụng

của mình nhưng bạn có thể thử.

await FlutterBugfender.fatal("Fatal sent!");

await FlutterBugfender.error("Error sent!");

await FlutterBugfender.warn("Warning sent!");

await FlutterBugfender.info("Info sent!");

await FlutterBugfender.debug("Debug sent!");

await FlutterBugfender.trace("Trace sent!");

await FlutterBugfender.setDeviceString("user.email" "example@example.com" , );

Trang 23

print(await FlutterBugfender.sendIssueMarkdown("Test Issue with markdown",

"Issue _value_ **goes** here!"));

await FlutterBugfender.setForceEnabled( true );

await FlutterBugfender.setForceEnabled( false );

await FlutterBugfender.forceSendOnce();

print(await FlutterBugfender.getDeviceUri());

print(await FlutterBugfender.getSessionUri());

Ok, vậy thôi! Chúng tôi có một ứng dụng Flutter được tích hợp với Bugfender và

chúng tôi biết cách gửi các loại nhật ký khác nhau đến nó.

· Packet Sniff Tools

Wireshark

Chụp hình Trang Web đăng nhập trên máy ảo Windows 10 Pro, có hiển thị thông

tin tên đăng nhập và mật khẩu dưới dạng đã bị mã hóa

Trang 25

2 Chuẩn bị bắt đầu quét lỗ hổng Rapid7 từ IoT Security.

1 Đăng nhập với tư cách chủ sở hữu hoặc quản trị viên đã bật tính năng

quét lỗ hổng bảo mật.

2 Vì IoT Security chỉ hỗ trợ một lần quét lỗ hổng bảo mật của một thiết

bị nên hãy đảm bảo rằng không có quá trình quét nào khác của thiết bị này hiện

đang được tiến hành.

Nhấp chuột

Báo cáo

Báo cáo quét lỗ hổng bảo mật

và kiểm tra cột Trạng thái Nếu bạn thấy

Xử lý

đối với thiết bị bạn muốn quét, hãy đợi cho đến khi quá trình quét hiện tại kết thúc

trước khi bắt đầu quá trình quét mới.

Khi bạn thấy thiết bị chưa được quét, bạn có thể tiếp tục quét mới.

Chỉ bắt đầu quét thiết bị hiện không hoạt động (và sẽ không hoạt động cho đến khi

quá trình quét hoàn tất).

Thiết bị

, rồi bấm vào mục nhập trong cột Tên thiết bị cho thiết bị bạn muốn quét.

4. Ở đầu trang Chi tiết thiết bị, nhấp vào menu Hành động, sau đó nhấp

vào

Trang 26

5. Đọc thận trọng về cách quét các thiết bị đang hoạt động và nếu thiết bị

hiện không hoạt động,

Tiếp tục

.

3 Đặt các thông số cho quá trình quét mà bạn muốn Rapid7 thực hiện.

Trang 27

- Đây là một nhóm các công cụ quét tại chỗ, qua đó công việc quét được phân phối

để cung cấp khả năng cân bằng tải và khả năng chịu lỗi Họ quét các thiết bị trên

mạng nội bộ của bạn.

- Đây là một công cụ quét tại chỗ duy nhất để quét các thiết bị trong mạng nội bộ

của bạn.

3 Công cụ quét được lưu trữ trên máy chủ Rapid7

- Đây là một công cụ quét mà Rapid7 lưu trữ trên đám mây Nó cho phép bạn quét

các thiết bị công khai trên mạng của mình (ví dụ: máy chủ web và email) và xem

chúng như một kẻ tấn công bên ngoài mà không có quyền truy cập.

Các mục trong danh sách này được gọi từ API Rapid7, vì vậy danh sách công cụ

quét của bạn có thể khác nhau tùy thuộc vào cấu hình Rapid7 của bạn.

Hồ sơ Rapid7

: Chọn một trong các cấu hình quét lỗ hổng bảo mật, chẳng hạn như sau:

- Sử dụng hồ sơ này để quét toàn bộ các lỗ hổng dựa trên mạng, các bản vá và

kiểm tra lớp ứng dụng Nó chỉ quét các cổng mặc định Nó sử dụng Web Spider để

thăm dò các trang web để tìm hiểu cấu trúc thư mục, thư mục mặc định, tệp, liên

kết bị hỏng và liên kết không thể truy cập được Sau đó, nó phân tích dữ liệu này

để tìm các lỗi bảo mật và các vấn đề khác do lỗi phần mềm hoặc lỗi cấu hình.

2 Kiểm tra đầy đủ mà không có Web Spider

Trang 28

- Hồ sơ này giống như Full Audit ngoại trừ nó không bao gồm Web Spider để quét

các trang web.

Để có danh sách đầy đủ các cấu hình quét (hoặc các mẫu như Rapid7 đề cập đến

chúng), hãy xem phụ lục các mẫu quét Rapid7

Trang web Rapid7

: Chọn vị trí đặt thiết bị được quét.

4. Nhấp chuột

Quét

.

Tùy thuộc vào loại quét bạn chọn, có thể mất từ vài phút đến nửa giờ, và đôi khi

thậm chí lâu hơn Tuy nhiên, quá trình quét thường mất 20-30 phút Nếu có sự cố,

chẳng hạn như máy quét không thể tiếp cận thiết bị mục tiêu, nỗ lực cuối cùng sẽ

hết hiệu lực sau hai giờ.

Sau khi Rapid7 hoàn tất quá trình quét, nó sẽ báo cáo lại cho IoT Security Nếu có

bất kỳ Lỗ hổng và Phơi nhiễm Phổ biến (CVE) nào được phát hiện, IoT Security

ngay lập tức cập nhật điểm số rủi ro và CVE trên trang Chi tiết thiết bị Cập nhật

CVE trên

Trang 29

Rủi ro

Các lỗ hổng

trang không được tạo ngay lập tức và có thể mất đến 24 giờ để xuất hiện Rapid7

cung cấp Bảo mật IoT với số ID CVE của lỗ hổng bảo mật, mức độ nghiêm trọng

(CVSS) và số cổng dịch vụ IoT Security truy xuất mô tả cho CVE từ trang web

của Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) Ví dụ: mô tả cho

CVE-2001-0142 đến từ trang NIST này

Trang 30

5 Sau khi quá trình quét hoàn tất, hãy xem kết quả.

Bạn có hai tùy chọn để xem báo cáo:

Trang 31

Lấy dữ liệu ra khỏi tín hiệu thô

Trang 32

Giữ cái nhìn tổng quan ngay cả trên các giao thức phức tạp

Ghi lại và gửi tín hiệu

Ngày đăng: 27/04/2024, 09:29

HÌNH ẢNH LIÊN QUAN

Bảng điều khiển Bugfender với một ứng dụng - trình bày cụ thể các bước thực hiện tool quét tìm phát hiện các loại lỗ hổng bảo mật
ng điều khiển Bugfender với một ứng dụng (Trang 13)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w