/////
Search
Duplicate

레디스 해킹으로 ElastiCache 전송 중 암호화 적용

기록 날짜
2024/02/05 23:00
작성자
김재윤
주제
Redis
ElastiCache

문제

EC2 위에 올려둔 Redis가 해킹.. 당했다.
이 글의 상황과 같은 현상을 겪었다.
종종 로그인 되어서 레디스에 저장된 리프레쉬 토큰이 초기화가 되었고, keys * 명령 시 backup1, backup2, backup3, backup4 가 저장이 되어 있었다.
글을 읽고 나도 범인을 잡아보려고 레디스 모니터링을 해보았지만 4시간의 모니터링에도 등장하지 않았다..가 드디어 찾아왔다.

해결

전송 중 암호화레디스 인증 토큰 등록으로 해결
위의 현상은
1.
기본 포트인 6379 포트를 사용
2.
암호화 미적용
일 때 일어나며, 스크립트를 저장하고 있었다. 보안 상 좋지 않아 보여서 암호화를 해두어 해결하고자 했다.
우선 난 이번 프로젝트때 ElastiCache for Redis 를 사용 예정이었고, 암호화 되어 있지 않은 기존에 사용하던 ElastiCache 인스턴스를 마이그레이션 후 적용하는 방법도 있지만, 아직 사용 중이진 않아서 새로 인스턴스를 생성했다.
생성할 때 보안 탭에서 전송 중 암호화를 체크 후, 액세스 제어를 Redis 인증 기본 사용자 액세스로 선택하고, Redis 인증 토큰을 원하는 토큰으로 선택하면 된다. 위에 나온 건 예시로 작성한 거고, 당연히 실제 암호는 아니다.
redis-cli -h <host-ip> -p <host-port> --tls -a <Redis-인증토큰>
Shell
복사
이후 생성이 되면, 다음과 같이 입력을 하면 접속이 된다.
인텔리제이에서 접속을 하려면 고급 탭에서 ssltrue 로 변경하고, ssh 터널링을 적용하면 된다.
연결 성공!