
CodeIgniter <=2.1.4 세션 쿠키 복호화 취약점
PoC 스크립트로, _xor_encode() 메서드를 사용하는 CodeIgniter <= 2.1.4 세션 쿠키를 디코딩합니다.
전체 세부 사항은 다음 블로그 게시물에서 확인할 수 있습니다: https://www.dionach.com/blog/codeigniter-session-decoding-vulnerability
break.py 이것은 메인 스크립트이며, 대상 URI가 주어지면 쿠키를 획득하고 세션 키를 무차별 대입(brute force) 시도합니다. 이 스크립트가 쿠키를 찾았지만 복호화에 실패하면 서버에 Mcrypt가 설치되어 있어 해당 공격에 취약하지 않은 것입니다. testkey.py 이 스크립트는 제공된 (해시된) 키를 사용하여 세션 쿠키를 즉시 디코딩합니다(이 키는 break.py를 사용하여 획득한 후 스크립트에 추가해야 합니다). encrypt.php 이 스크립트는 CodeIgniter에서 사용하는 암호화 함수를 기반으로 하며, 암호화되지 않은 쿠키(직렬화된 PHP 배열)를 받아 제공된 키를 사용하여 암호화합니다(이 키는 스크립트에 추가해야 합니다).
애플리케이션을 공격하는 단계는 다음과 같습니다: