-
[ctf-d]사진 속에서 빨간색이...2021/Write-Ups 2022. 2. 15. 15:46
4팀 임예은
문제를 보면 사진 하나를 다운받을 수 있게 되어있고 빨간색이 이상하다고 합니다.
사진을 열어보면 개와 꽃이 같이 있는 사진이 있는데 꽃 부분이 빨간색인것을 보아 꽃 안에 플래그가 있다고 유추했습니다. Forensically로 사진을 열어서 꽃 부분을 확인해보았습니다.
..? 사진에서 확인 가능하듯이 이런 식으로 아무것도 보이지 않습니다. 아무래도 특정 부분에 숨겨두었다기보단 색 자체에 힌트가 있는 듯 합니다. 그래서 스테가노그래피에 대해 더 찾아보다가 LSB 스테가노그래피에 대해 알게되었습니다.
우선 LSB란 어떠한 크기에 데이터가 있다면 가장 낮은 위치(오른쪽)에 있는 비트를 의미합니다. LSB는 값이 조금이라도 오류가 난다면 반드시 값이 변하기 때문에, 프로그래밍 시 오류를 확인하기 위해 LSB를 가장 많이 확인한다고 합니다.
사진의 LSB를 변조하면 육안으로는 구분할 수 없지만 색상이 약간 변하는데, 이 변한 색상의 코드를 아스키 코드로 변환하여 문자열이 나오게끔 한 암호가 LSB 스테가노그래피입니다. 아마 이미지 속 빨간색도 완전한 빨간색이 아니라 일부 부분이 LSB 스테가노그래피에 의해 색상 코드가 약간 변했고, 색상코드를 아스키 코드로 변환하면 문자열 플래그가 나오는 방식으로 암호를 설정했을것 같습니다. LSB는 다른 비트들보다 중요도가 낮고, 변형했을때 알아보기가 쉽지 않기 때문에 플래그를 숨길 때 많이 이용되는 비트라고 합니다.
암알못의 암호핥기 – 스테가노그래피 – Hackerz on the Ship (wordpress.com)
위는 제가 LSB 스테가노그래피를 이해할 때 참고한 사이트입니다.
HxD를 열어보고 색상 정보를 확인하는 방법도 있겠지만, 너무 복잡하기 때문에 툴을 찾아서 문제를 해결하였습니다. 사이트에서 사진을 확인하면 다음과 같이 Hidden bits: 1에서 선명하게 플래그가 보이는 것을 알 수 있습니다.
플래그 tjctf{0dd5_4nd_3v3n5}를 입력하면 문제가 풀립니다.
'2021 > Write-Ups' 카테고리의 다른 글
[ctf-d] 저는 플래그를 이 파일에.. (0) 2022.02.15 [ctf-d] Find Key(Image) (0) 2022.02.15 [ctf-d] 오른쪽 위의 표지판을 읽을 수... (0) 2022.02.13 3팀_이은경 write-ups (HackCTF_Question?) (0) 2022.02.09 4팀 김세연 Write-Ups(cybergrabs_ctf First Telecommunication & Electronics) (0) 2022.02.08