[server] mysql 사용자 비밀번호가 약한 이유는 무엇입니까?

“강력한 mysql 사용자 비밀번호가 필요하지 않기 때문에 이미 서버에 액세스 할 수 있기 때문에”조정에 대한 논쟁이있었습니다. 라이브 비즈니스 웹 사이트에서 표준 영어 사전 단어 인 4 자리 비밀번호에 대해 이야기하고 있습니다.

본인의 지식과 경험으로 답변에 영향을 미치지 않으면 서 관심없는 제 3 자 소스의 답변을 보여 드리고자합니다. 누구든지 이것에 대해 관심이 있습니까? 프로그래밍 / 실용적인 답변을 부탁드립니다.



답변

이 주장을 한 사람은 “누군가가 발에 들어가면 완전히 접근 할 수있을 것”이라고 말하는 것 같습니다. 이 논리에 따라 방화벽은 내부 네트워크의 모든 암호가 필요하지 않습니다.

강력한 암호는 네트워크 침입으로 인한 피해를 제한하기위한 한 단계입니다. 네트워크의 작은 부분이 손상되었다고해서 패배 할 이유가 없습니다.


답변

그것은 실제로 ‘ 심층 방어 ‘라는 개념으로 돌아가서 적어도 강력한 암호는 암호를 느리게하여 발견하고 차단할 수 있습니다. 나는 문이있는 공동체를위한 하나의 열쇠와 모든 집의 문 열쇠를 갖는 비유를 좋아한다.


답변

MySQL 서버 설정 방법에 따라 다릅니다. 홈 (127.0.0.1) IP 외부의 요청 만 수락하면 적당히 더 안전합니다.

원격 IP를 허용하는 시나리오에서는 훨씬 더 큰 거래가됩니다.

또한 침입시 강력한 보안을 유지하는 것이 좋습니다. 가능한 한 적은 거리를 유지하는 것이 좋습니다.


답변

회계의 소액 현금 상자에 자물쇠가 있습니까? 그렇다면 왜 그렇습니까? 건물에 물리적 보안이 없습니까?


답변

강력한 mysql 사용자 비밀번호가 필요하지 않기 때문에 이미 서버에 액세스 할 수 있기 때문에

mysql은 네트워크 간 클라이언트-서버 환경에서도 사용할 수 있기 때문에 기본적으로 필요하지 않습니다. 기본적으로 사용자 / 패스는 데이터베이스 (3306 포트를 열고 서버를 공개적으로 볼 수있는 오프 사이트)에 액세스 할 수 있습니다. ).


답변

실제로 다른 방법이 될 수 있습니다. mysql에 액세스 할 수 있으면 서버 OS 자체에 액세스 할 수 있습니다.

  1. MySQL LOAD_FILE 및 SELECT … INTO OUTFILE 쿼리를 통해 mysql 사용자는 기본 파일 시스템에서 파일을 읽고 쓸 수 있습니다. mysql 사용자가 액세스 할 수있는 모든 파일 (MySQL은 루트로 실행됩니까?) linux / UNIX에서 SELECT LOAD_FILE ( ‘/ etc / passwd’)를 쿼리하고 웃어보십시오. 만약 mysqld가 root로 동작한다면 SELECT LOAD_FILE ( ‘/ etc / shadow’)를 시도하고 sysadmin이 울리는 것을 볼 수 있습니다.
  2. 리눅스에서 mysql 사용자 “root”는 서버의 “mysql”사용자 (mysqld를 실행하는 사용자)와 동일한 암호를 사용합니다. 그런 다음이 암호가 사소한 경우 (또는 medusa / hydra와 같은 자동화 도구로 찾을 수있는 경우) 데이터베이스 서버에 직접 SSH / 텔넷을 연결하고 바보 일 수 있습니다.

답변

누군가 서버에 대한 루트 액세스 권한을 얻는 경우 MySQL 비밀번호가 필요하지 않습니다. 그러나 서버에서 루트가 아닌 웹 사용자가 아닌 앱만 실행할 수있는 경우에도 강력한 MySQL 비밀번호로 데이터를 저장할 수 있습니다. 그러나 대부분의 해킹은 웹에서 발생하므로 해커가 웹 계정에 액세스하여 PHP 파일에서 DB 비밀번호를 추출 할 수 있습니다.

MySQL 서버가 localhost 이외의 곳에서 연결을 수락하지 않는다고 가정하면이 모든 것이 가능합니다. 그렇다면 강력한 PW가 필요합니다.