티스토리 뷰

728x90
반응형

 

 

한번에 복합적인 인코딩/디코딩이나 암복호화 연산을 수행하기 좋은 도구를 찾았습니다!

 

워게임 문제를 풀다보면 hex 값을 ascii 로 변환하고 다시 이 ascii 값이 base64 인코딩 형태일 때 디코딩이 필요할 수 있습니다. 단순한 인코딩 디코딩 뿐만 아니라 XOR 또는 Base64와 같은 간단한 인코딩, AES, DES 및 Blowfish와 같은 보다 복잡한 암호화, 바이너리 및 16진수 덤프 생성, 데이터 압축 및 압축 해제, 해시 및 체크섬 계산, IPv6 및 X.509 구문 분석, 문자 인코딩 변경 등이 포함됩니다. 또 오픈소스프로젝트로써 수많은 전문가들이 함께 작업하여 효율적인 연산으로 빠르게 각 종 기능들을 수행한다고하니 너무나도 좋을 수밖에요. 무엇보다 별도로 코드를 작성할 필요없이 모든 것이 웹 인터페이스로 조작 가능해서 초보자들도 손쉽게 사용할 수 있다는 점에서 큰 장점이라고 볼 수 있는 것 같습니다.

 

그 도구는 이름하여 CyberChef 입니다.

 

아래 URL에서 도구를 사용해볼 수 있습니다.

https://gchq.github.io/CyberChef/

 

CyberChef

 

gchq.github.io

만약에 예를 들어서 아래 hex(16진수) 값을 해석해본다고 해봅시다.

36 34 2b 55 36 34 2b 55 37 4a 32 30 36 37 69 55 36 36 47 63 36 72 65 34 37 4a 65 51 49 4f 79 59 70 4f 79 4c 6f 43 44 71 73 6f 50 73 6e 59 51 67 37 5a 6d 59 37 4a 69 42 37 5a 57 70 36 34 75 49 36 34 75 6b 4c 67 3d 3d

그러면 input 에 위 내용을 아래 이미지와 같이 붙여넣습니다.

CyberChef 의 가장 좋은 점은 가끔 자동으로 사용자가 입력한 input 에 대해서 해석해주기도 합니다. 단 해석이 가능할 경우에는 Output 의 우측에 마법봉과 같은 모양이 나와야 합니다. 마법봉 모양이 나왔을 때, 해당 마법봉을 누르게 되면 자동으로 어떤 인코딩이나 암호화가 적용되었는지 파악해서 복호화해줍니다.

결과적으로 CyberChef 에서는 알아서 Hex(16진수) 값을 ascii 로 변환하였고, 다시 base64 인코딩으로 보이는 텍스트 문자열을 base64 디코딩해줬습니다. 이로써 결과적으로 Output 에 복호화된 내용이 정상적으로 나온 것을 확인할 수 있습니다. Output 내용은 아래와 같습니다.

돔돔이블로그에 오신 것을 환영합니다.

 

이처럼 자동으로 분석하고 파악해서 결과를 나타내기도 하지만, 만약에 자동으로 해주지 않을 경우에는 왼쪽의 Operations 항목들을 Drag and Drop 방식으로 마우스로 가져와서 사용할 수도 있습니다.

 

아래는 해당 프로젝트의 github 주소입니다. 어떤 기능이 있는지는 더 자세하게 보고 싶으시다면, 해당 페이지에서 살펴보실 수 있습니다.

https://github.com/gchq/CyberChef

 

GitHub - gchq/CyberChef: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis

The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis - GitHub - gchq/CyberChef: The Cyber Swiss Army Knife - a web app for encryption, encoding, compressio...

github.com

 

실제로 웹관련 버그바운티, 워게임, CTF, 모의해킹에서 정말 많이 사용하는 도구이기도 하므로 모르셨던 분이라면 꼭 사용하시길 추천하는 도구 중에 하나입니다!

 

- 끝 -

 

728x90
반응형
댓글