Redis 데이터 소실 문제

잼구·2023년 11월 27일
0

문제 상황

토큰 저장용으로 띄워둔 레디스 서버 캐시가 랜덤한 간격으로 날아감.
(로그인이 풀린걸 보고 발견)
keys * 명령어로 검색하면 empty array 가 나온다.

문제

크롤링 봇의 공격
1. 기본 포트로(6379) 열려있고,
2. 인증이 필요없는 (비밀번호 설정 x) 레디스는
크롤링 봇이 돌아다니며 캐시를 다 날려버리는 스크립트를 심는다.

redis-cli monitor 커맨드로 켜놓고 날아가는 순간을 포착했다.

info 명령어 실행: 클라이언트가 Redis 서버의 정보를 조회합니다. 이는 일반적으로 서버의 상태를 확인하는 데 사용됩니다.

COMMAND 명령어 실행: 이 명령어는 클라이언트가 Redis 서버에서 사용 가능한 모든 명령어를 나열하고자 할 때 사용됩니다.

flushall 명령어 실행: 이 명령어는 Redis 서버에 있는 모든 데이터를 삭제합니다. 이는 매우 파괴적인 명령어이며, 서버에 저장된 모든 데이터를 잃게 됩니다.

set 명령어를 사용하여 의심스러운 스크립트 저장: 클라이언트가 backup1, backup2, backup3, backup4 등의 키로 의심스러운 스크립트를 Redis 서버에 저장합니다. 이 스크립트들은 외부 URL에서 쉘 스크립트를 다운로드하여 실행하는 명령어를 포함하고 있습니다. 이는 서버의 보안에 심각한 위협이 될 수 있는 명령어입니다.

해결방법

  1. 레디스에 비밀번호를 걸거나
  2. vpc 로만 접근하게 한다.
profile
잼구입니다

0개의 댓글