-
Image 1bpp, 2bpp LSB Steganography$ 포렌식 $/$ 포렌식 기술적 이론 $ 2019. 11. 7. 09:33
LSB (Least Significant Bit) 알고리즘 이란? (255, 255, 255) 11111111
LSB 해석 그대로 최하위 비트에 데이터를 은닉하는 스테가노 그래피 방법중 하나 입니다.
설명은 아래와 같습니다.
원본 사진 및 음원파일 즉, 멀티미디어 파일에 메시지를 은닉 시키는데 최 하위 비트인 가장 오른쪽 비트에 은닉을 시켜 둡니다.
그리고 은닉 시킨 데이터는 다시 아래와 같은 방식으로 추출합니다.
이번에는 1bpp , 2bpp 를 이용한 LSB Steganography 를 소개 해드리려고 합니다.
bpp란? bit per pixel의 줄인말로 색을 표현 할 때 사용하는 단위 입니다.
기본적인 Image LSB Steganography를 1bpp LSB Steganography 라고 이야기 합니다.
1픽셀에 1개의 데이터를 은닉 시킨다. 라는 의미를 가지고 있습니다.
그렇다면 2bpp LSB Steganography는 1픽셀에 2개의 데이터를 은닉 시킨다. 라는 의미를 가지게 됩니다.
지금껏 은닉방법은 이렇습니다.
맨오른쪽 비트에 문자열을 비트화 시킨 비트 문자열을 하나씩 넣는 기법입니다.
위에 그림에도 있지만 아래에 다시 작성해 보겠습니다.
01111011
11010110
10101101
11011101
11010010 + A라는 문자열을 은닉한다. => A -> 01000001 에서 각각의 비트를 원본 데이터 맨오른쪽에 넣습니다.
10011001
11110100
10111000
이런식으로 들어가게 된뒤에 해당 비트가 색상이 되어서 사진으로 나오게 되는데 가장 오른쪽의 1비트가 변한다 해도 사람의 눈으로는 판별이 불가능 합니다. 그렇기 때문에 사람이 봤을땐 똑같은 사진 처럼 보이는 것입니다.
해당 사진을 다시 복호화 할땐 다음과 같이 하면 됩니다.
01111010 & 1 = 0
11010111 & 1 = 1
10101100 & 1 = 0
11011100 & 1 = 0
11010010 & 1 = 0
10011000 & 1 = 0
11110100 & 1 = 0
10111001 & 1 = 1
AND 1 을 하면 맨 마지막 비트를 추출 할 수 있습니다.
그리고 문자열로 변환 하면 A 가 되는 것이죠!
경우의 수는 총 24개 입니다.
R G B 각각 8비트씩 있기 때문에 24개 인데 이는 StegSolve 툴에서 총 24개의 선택지를 확인 하실 수 있습니다.
이번에는 2bpp LSB Steganography에 대해서 이야기 해보겠습니다.
2017년에 작성된 Performance Analysis of LSB-based Data Hiding Techniques 이라는 논문을 확인해 보면 2bpp 와 관련된 내용이 있습니다.
2-bit LSB replacement and 2-bit XOR embedding , 즉, 2비트를 lsb 하고 xor 하라는 의미 입니다.
실제로 어떠한 문제에 2bpp LSB Steganography를 다뤘습니다.
해당 문제에서는 이렇게 적용이 되었습니다.
(R,G,B) = (34, 11, 11) = (00100010 , 00001011, 00001011)
1 = R&1 ^ G&1
0 = B&1 ^ G&1
위의 2개의 연산을 한후 나온 결과를 하나의 변수에 쭉 이어 붙여서 결국에는 8개씩 끊어서 HEX 값으로 넣는 형식의 문제 였습니다.
이런식으로 8개씩 끊으면 89 50 4E 47 과 같은 PNG 파일의 HEX 값이 만들어 지면 서 문제가 해결되는 문제 였습니다.
G를 기준으로 R, B를 연산해서 데이터를 은닉 하는 방법은 참신 했던 것 같습니다.
레퍼런스
https://www.iaras.org/iaras/filedownloads/ijsp/2017/003-0019(2017).pdf
'$ 포렌식 $ > $ 포렌식 기술적 이론 $' 카테고리의 다른 글
프리패치 파일 분석(Prefetch File Analysis) (0) 2019.11.07 Adam7 Algorithm Encoding을 이용한 PNG FILE Steganography Analysis (0) 2019.11.07 Forensics Analysis of Recycle Bin (0) 2019.10.14 디스크 분석을 위한 vmdk 변환 및 가상 이미지 부팅! (0) 2019.09.18 디렉터리 엔트리 분석 [Directory Entry Analysis] (0) 2019.07.20