Tải bản đầy đủ (.docx) (15 trang)

báo cáo bài tập lớn học phần an toàn dữ liệu đề tài giấu thông tin trong ảnh

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 (296.56 KB, 15 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b><small>TRƯỜNG ĐẠI HỌC HẢI PHỊNGKHOA CƠNG NGHỆ THƠNG TIN</small></b>

<b>ĐẠI HỌC HẢI PHỊNG</b>

<b>BÁO CÁO BÀI TẬP LỚNHỌC PHẦN: AN TỒN DỮ LIỆUĐỀ TÀI : GIẤU THƠNG TIN TRONG ẢNH</b>

<b><small>HỌ VÀ TÊN: TRỊNH ĐẮC NAM Hồ Hoàng Vũ</small></b>

<b><small>GIẢNG VIÊN HƯỚNG DẪN: PGS.TS LÊ ĐẮC NHƯỜNG</small></b>

<b>I. Tổng quan về giấu tin trong ảnh1. Giới thiệu chung về giấu thông tin</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

Giấu thông tin (steganography) là một kỹ thuật nhúng thơng tin vào mộtnguồn đa phương tiện nào đó, ví dụ như file âm thanh, file ảnh, file text,... Nguồnđa phương tiện này được gọi là môi trường chứa. Mục đích của việc giấu thơng tinlà làm cho đối phương không thể nhận biết được sự tồn tại của thông tin đã đượcgiấu.

Mỗi kỹ thuật giấu tin gồm:

 Nhúng thông tin

 Trích rút thơng tin

Thuật tốn giấu tin được dùng để giấu thông tin vào một phương tiện chứa bằngcách sử dụng một khóa bí mật được dùng chung bởi người gửi và người nhận. Việcgiải mã thông tin chỉ có thể thực hiện được khi có khố. Sau khi giải mã, ta đượcthơng tin mật.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

Hình 1. Lược đồ thể hiện quá trình giấu tin

Hình 2. Lược đồ thể hiện q trình trích rút thơng tin

<b>2. Các cuộc tấn công steganography hoạt động như thế nào?</b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

Mặc dù có nhiều dạng steganography, nhưng cách phổ biến nhất là sử dụngmột công cụ được gọi là steghide (một cơng cụ dịng lệnh đơn giản để thực hiệnviệc giấu tin). Khi sử dụng steghide, tin tặc có xu hướng ẩn những payload trongcác điểm ảnh. Chúng chuyển đổi payload thành chương trình mã hóa Base-64 vàẩn nó trong siêu dữ liệu. Nó thường được thêm vào dưới những trường siêu dữ liệuvề chứng chỉ (certificate metadata) bởi trường chứng chỉ có độ dài vơ hạn và mãhóa Base-64 thường được sử dụng trong trường này cho các chứng chỉ.

Hình ảnh độc hại có thể được phát tán dưới dạng một tệp đính kèm hoặc tintặc có thể đăng hình ảnh trên một trang web cơng cộng kèm liên kết để cung cấppayload. Khi sử dụng phương pháp steghide, hình ảnh có thể bị sửa đổi một chúttrên các bit và byte, nhưng khi tin tặc nhúng payload vào siêu dữ liệu thì hình ảnhkhơng bị thay đổi chút nào. Điều này khiến cho việc phát hiện bằng mắt thường làgần như không thể.

Khi payload được phát tán, hầu hết các tin tặc tìm cách kết xuất mật khẩubăm của quản trị viên và kết nối thơng qua giao thức điều khiển máy tính từ xa(Remote Desktop Protocol - RDP) với các nút khác trên mạng. Chúng sẽ xâm nhập

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

càng nhiều máy tính càng tốt bằng cách triển khai ransomware và yêu cầu công tymà chúng đã xâm nhập phải trả tiền - một kế hoặc sinh lợi cao cho các tin tặc.

Các cuộc tấn công giấu tin trong ảnh là một xu hướng tấn công hấp dẫn chocác tác nhân đe dọa vì các bộ cơng cụ có thể dễ dàng truy nhập và tải xuống, đồngthời cũng bởi những cuộc tấn công này dễ dàng tránh được sự phát hiện của cácgiải pháp bảo mật truyền thống.

Về mặt kỹ thuật, những công cụ sử dụng cho các cuộc tấn cơng này thậm chícịn khơng được coi là những cơng cụ tấn cơng (hack). Chúng có thể được tảixuống qua Linux shell một cách đơn giản như lệnh apt-get cài đặt steghide hay apt-get cài đặt exiftool (ứng dụng xem, sửa, xóa siêu dữ liệu).

<b>3. Làm thế nào để các tổ chức có thể tránh được những kiểu tấn cơngnày?</b>

Tin tặc sử dụng giấu tin trong ảnh như một kỹ thuật lẩn tránh và kỹ thuậtphát tán, vì sau khi tin tặc có quyền truy nhập vào một máy tính trong mạng cơngty thì cả cơng ty sẽ mất quyền kiểm sốt. Sau đó các tin tặc thường triển khai mãđộc tống tiền (ransomware) hoặc payload khác mà chúng kiểm sốt được. Vì xu

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

hướng tấn cơng này thường hay bị bỏ ngỏ nên nhiều tổ chức dễ bị tấn cơng và cóthể phải chịu những thiệt hại nếu họ không chủ động hơn trong các chiến lược bảomật của mình.

Điều đầu tiên mà các tổ chức cần hiểu là những kiểu tấn công này rất tinh vivà khơng có q trình đào tạo về nhận biết lừa đảo nào cho người dùng cuối đểphát hiện những mối đe dọa này.

Việc triển khai các giải pháp bảo mật loại bỏ hồn tồn người dùng cuốikhỏi chương trình là cần thiết trong việc ngăn chặn những kiểu tấn công này khỏiviệc xâm hại dữ liệu và các mạng của doanh nghiệp. Công nghệ cung cấp phươngpháp tiếp cận cố định (deterministic approach) có thể xác định và chỉ cho phépthông qua những phần tử nội dung tốt với người dùng cuối – thay vì ngăn chặn mãđộc và phát hiện không đáng tin cậy - là cách tốt nhất để các tổ chức tự bảo vệmình.

Các chương trình phát hiện việc giấu tin được xây dựng có mục đích hiệnnay là bằng chứng chứng minh tính khả thi nhưng cịn chậm và có tỷ lệ phát hiệntương đối thấp nên chưa phù hợp với các công cụ bảo mật hiện đại hiện có trên thị

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

trường. Để chống lại những kiểu đe dọa này, các tổ chức cần ưu tiên và áp dụngcác chiến lược tập trung vào các môi đe dọa của lỗ hổng zero-day đang bị tin tặclợi dụng để nhắm mục tiêu vào tổ chức.

<b>4. Giấu tin trong ảnh</b>

Giấu tin trong ảnh là việc thực hiện giấu thông tin với môi trường chứa làcác file ảnh. Hiện nay, giấu tin trong ảnh chiếm tỉ lệ lớn trong các ứng dụng giấutin trong dữ liệu đa phương tiện bởi vì lượng thơng tin được trao đổi bằng hình ảnhlà rất lớn. Giấu tin trong ảnh có nhiều ứng dụng trong thực tế, ví dụ như trong việcxác định bản quyền sở hữu, chống xuyên tạc thông tin hay truyền dữ liệu một cáchan toàn,…

Các khái niệm thường được dùng trong giấu tin trong ảnh: Ảnh môi trường: Là ảnh gốc được dùng để nhúng thông tin. Thông tin nhúng: Là các thông tin mật cần gửi.

 Ảnh đã nhúng: Là ảnh gốc sau khi đã được nhúng thơng tin mật.

 Khóa mật: Là khóa tham gia vào q trình nhúng, được trao đổi giữa ngườigửi và người nhận.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Các yêu cầu trong giấu tin trong ảnh:

<i>Tính bền vững: Thể hiện khả năng ít bị thay đổi (về nội dung, hình dạng)</i>

trước những tấn cơng từ bên ngồi. Hiện nay, chưa có kỹ thuật giấu tin nào đảmbảo được yêu cầu này một cách tuyệt đối.

<i>Khả năng không bị phát hiện: Thể hiện ở việc khó xác định được đối tượng</i>

có chứa thơng tin mật hay khơng. Các kỹ thuật giấu tin hiện nay cố gắng đảm bảoyêu cầu này dựa vào hệ thống thị giác của con người.

<i>Khả năng lưu trữ: Thể hiện ở lượng thông tin được lưu trữ. Do cịn phải</i>

đảm bảo “khả năng khơng bị phát hiện” nên với những thông tin mật lớn, ta thườngchia nhỏ nó ra, nhúng nhiều lần và vào các đối tượng khác nhau.

<b>II. Giấu tin trong ảnh nhị phân</b>

Trong phần này, chúng ta sẽ đề cập đến một số kỹ thuật giấu tin sử dụng ảnhnhị phân làm môi trường giấu tin. Ảnh nhị phân bao gồm các điểm ảnh chỉ có màuđen (0) hoặc trắng (1). Các kỹ thuật được đề cập là các kỹ thuật đơn giản nhưngđáng tin cậy.

<i>Ví dụ về ảnh nhị phân:</i>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

 Để thực hiện việc giấu thông tin, ta thường chia nhỏ ma trận ảnh gốc Fthành các khối bit nhỏ hơn Fi. Sau đó, thực hiện việc giấu tin trên mỗikhối bit Fi nhỏ hơn đó.

 Một số thuật toán giấu tin trên ảnh nhị phân thường được dùng hiện naylà Wu-Lee hay CPT.

1. Một số phép toán cơ bản <b>Phép đảo bit</b>

Giá trị ban đầu Giá trị sau khi đảo

 <b>Phép SUM</b>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

SUM(F): Tổng các phần tử của ma trận FVí dụ:

Cho ma trận F

<i><small>F=</small></i>

[

<sup>1 0 1</sup><small>0 0 01 1 1</small>

]

=> Sum(F) = 1 + 0 + 1 + 0 + 0 + 0 + 1 + 1 + 1 = 5 <b>Phép XOR ⨁</b>

Cho ba ma trận A, B và C Giả sử A ⨁ B = C

Thì A[i,j] ⨁ B[i,j] = C[i,j]Quy tắc thực hiện phép ⨁:

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<i><small>A ⨁</small></i>B=

(

<sup>1 ⨁ 0 1 ⨁1 0 ⨁ 1</sup><small>1 ⨁ 1 0 ⨁ 0 1 ⨁ 1</small>

<small>0 ⨁ 1 1 ⨁1 1 ⨁ 0</small>

)

<small>=</small>

(

<sup>1 0 1</sup><small>0 0 01 0 1</small>

)

 <b>Phép nhân ⨂</b>

Cho ba ma trận A, B và C. Giả sử A ⨂ B = C

Thì A[i,j] * B[i,j] = C[i,j]Ví dụ:

Giả sử có 2 ma trận A và B: A=

(

<sup>1 3 5</sup><small>3 5 1</small>

<small>5 1 3</small>

)

và B=

(

<sup>2 4 6</sup><small>4 6 26 2 4</small>

)

<i><small>A ⨂</small></i>B=

(

<small>3∗4 5∗6 1∗2</small><sup>1∗2 3∗4 5∗6</sup>

<small>5∗6 1∗2 3∗4</small>

)

<small>=</small>

(

<small>12 30</small><sup>2</sup> <sup>12 30</sup><small>230212</small>

)

 <b>Phép AND</b>

Cho ba ma trận X, Y và Z. Giả sử X AND Y = Z

Thì X[i,j] AND Y[i,j] = Z[i,j]Quy tắc thực hiện phép AND:

X[i,j] Y[i,j] Z[i,j]

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

1 1 1

2. Một số kỹ thuật giấu tin sử dụng khóa K cố định

<i>Ý tưởng của kỹ thuật là chia nhỏ ảnh gốc F thành các đoạn Fi gồm k điểm ảnh</i>

liên tiếp và giấu trong mỗi đoạn Fi một bit thông tin. Sau khi giấu tin ta thu đượccác đoạn Fi' và các đoạn này tạo nên ảnh đã chứa thông tin F'. Trong quá trình tríchrút tin, ta lại chia ảnh F' thành các đoạn Fi' độ dài bằng k. Sau đó trích rút ở mỗiđoạn Fi' này một bit thông tin đã giấu.

<i>Thuật tốn giấu tin gồm hai bước:</i>

Q trình giấu tin (đối với mỗi đoạn bit Fi và một bit thông tin bi): Bước 1: Đặt Si = Sum(Fi) mod 2

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Nếu có nhiều điểm đen và có điểm trắng thì đảo một bit trắng thành đen. Break.Nếu có nhiều điểm trắng và có điểm đen thì đảo một bit đen thành trắng. Break.Nếu số điểm đen và điểm trắng xấp xỉ nhau thì chọn ngẫu nhiên một bit để đảo.Nếu chỉ có điểm đen (hoặc chỉ có điểm trắng) thì chọn bất kỳ một điểm ở đầu

hoặc cuối để đảo.

Sau cùng ta thu được đoạn Fi'.Q trình trích rút thơng tin:

Đối với mỗi đoạn Fi', bit thơng tin được giấu trong đó là

Ví dụ: > Các bit cần giấu là b = 10101, khóa K = 5 và ảnh F như sau: > >

> > Quá trình giấu tin: > - Xét F1 = 11100: > > Ta có S1= Sum(F1) mod 2 = 1 = b(1) > > => Không thay đổi gì cả. > > => Fi' = 11100 >>

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

> > - Xét F2 = 11000: > > Ta có S2 = Sum(F2) mod 2 = 0 = b(2) > > => Khơngthay đổi gì cả > > => F2' = 11000 > >

> > - Xét F3 = 01010: > > Ta có S3 = Sum(F3) mod 2 = 0 ≠ 1 = b(3) > > Lại cóF3 = 01010 > > => Chọn F3(2) để đảo > > => F3' = 00010 > >

> > - Xét F4 = 10101: > > Ta có S4 = Sum(F4) mod 2 = 1 ≠ 0 = b(4) > > Lại cóF4 = 10101 > > => Chọn F4(2) để đảo > > => F4' = 11101 > >

> > - Xét F5 = 00000: > > Ta có S5 = Sum(F5) mod 2 = 0 ≠ 1 = b(5) > > Lại cóF5 = 00000 > > => Chọn F5(5) để đảo > > => F5' = 00001 > > Khơng cịn khốiảnh nào để xét nữa nên ta kết thúc việc giấu tin. > > F' là ảnh thu được sau

Q trình trích rút thơng tin: > > - Xét F1' = 11100: > > b(1) = Sum(F1') mod 2= 1 > >

> > - Xét F2' = 11000: > > b(2) = Sum(F2') mod 2 = 0 > >

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

> > - Xét F3' = 00010: > > b(3) = Sum(F3') mod 2 = 1 > >> > - Xét F4' = 11101: > > b(4) = Sum(F4') mod 2 = 0 > >> > - Xét F5' = 00001: > > b(5) = Sum(F5') mod 2 = 1 > >> > Thông tin mật thu được: b = 10101

Sau khi kết phần I, chúng ta đã nắm được một số khái niệm cở bản về giấuthơng tin, một số phép tốn về ma trận cơ bản được sử dụng trong giấu thôngtin, cũng như kỹ thuật giấu tin cơ bản và đơn giản nhất trên ảnh nhị phân.

</div>

×