Skip to content

[태호] MySQL 보안설정

BaeJ1H021 edited this page Dec 11, 2023 · 1 revision

MySQL이 해킹당했음

image (2)

해결 3줄 요약

  • 외부접속 계정의 계정명, 비밀번호 변경
  • 외부접속 계정의 권한을 SELECT, INSERT, UPDATE, CREATE, DELETE로 제한
  • 외부접속 계정의 로그인 시도 3회 이상 실패 시 9999초 동안 계정 잠금

추정 원인

  • 계정명을 추론하기 너무 쉬웠음 (root or admin 사용)
  • 비밀번호가 너무 쉬웠음 (1234 사용)

해결

  • 해킹당한 데이터베이스를 drop 했음

    • DROP DATABASE ALGOCEAN
  • root의 계정명을 변경 (localhost)

    • USE MYSQL;
    • UPDATE USER SET root USER=’변경할계정명’ WHERE USER=’root’;
    • FLUSH PRIVILEGES;
  • 변경된 계정명의 PASSWORD를 변경

    • ALTER USER '변경된 계정명'@'localhost' IDENTIFIED BY ‘변경할 비밀번호';
  • 외부 접속을 허용하기 위해 계정생성

    • CREATE USER '계정명'@'%' IDENTIFIED BY '비밀번호';
  • 외부 접속 허용 계정의 권한을 제한

    • GRANT SELECT, UPDATE, CREATE, DELETE, INSERT PRIVILEGES ON algocean.* TO 'AKAPSDOPA'@'%';
    • FLUSH PRIVILEGES;
    • ALTER USER ‘변경된 계정명'@'%' IDENTIFIED BY '비밀번호' FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 9999;
      • 3회 비밀번호 오류시 계정을 9999시간 잠금
      • root 계정에서 계정 잠금을 풀 수 있음 (UNLOCK ACCOUNT)
  • root 계정명 변경은 피해야함

    • root 계정명 변경 시 권한설정에 대한 부분을 건드리지 않아도 admin과 관련된 권한들이 잘려나가서 root 계정을 복구할 수 없음

🌊 ALGOCEAN

TEAM : 강서(대문)구

기획

아키텍처

스프린트 계획회의

데일리스크럼

팀 회고

개발 일지

태호

more

지호

more

지은

more

승규

more

멘토링 일지

Clone this wiki locally