지난 며칠 동안 우리 웹사이트에 갑자기 많은 회원이 있다는 사실을 발견했습니다. 이 회원들은 모두 비슷하지만 백엔드 시스템을 통해서만 회원을 추가할 수 있습니다. 그들은 백엔드 비밀번호를 변경한 후에도 계속 나타납니다. 백엔드 작업 로그에 작업 정보가 없습니다.
백그라운드에서 추가할 수 있는 필드 중 회사 필드가 없어 어떻게 공격을 받았는지 명확하지 않습니다.
삽입된 데이터는 다음과 같습니다.
웹사이트의 회원 데이터는 다음과 같습니다.
PHPz2017-05-16 13:06:56
먼저 방화벽을 확인해보세요. 웹사이트에 특별한 포트 요구 사항이 없으면 80을 열면 됩니다. 3306, 22 등과 마찬가지로 회사 내부망에만 접속이 가능합니다.
둘째, 데이터베이스, 백엔드 등의 비밀번호를 모두 변경하세요. (비밀번호는 더 길고 대문자와 소문자로 이루어져야 하며 특수 기호가 있어야 합니다.)
셋째, 회사에서만 백엔드에 접근할 수 있어야 하는 경우 URL을 최대한 숨기도록 노력하세요. 또한 테스트를 수행하세요(예: 회사 네트워크만 백그라운드에서 액세스하도록 허용)
넷째, 프론트에서 회원등록이 있는 경우 인증번호 및 보안체크가 있는지 확인하세요. (즉, 동일한 IP일 경우 회원등록 사이에 시간차가 있어야 합니다.)
위의 작업을 완료한 후 프로그래머가 시스템 로그, 데이터베이스 로그, 프로그램 로그 등을 확인하고 프로그램 코드에 허점이 있는지 확인하십시오
巴扎黑2017-05-16 13:06:56
SQL 주입 공격일 수도 있습니다. SQL 비밀번호를 변경하더라도 프로덕션 환경에서는 여전히 올바른 비밀번호를 구성해야 합니다. SQL 취약점을 수정하지 않으면 여전히 일부 데이터를 주입하고 모든 SQL을 교체할 수 있습니다. PDO::가 포함된 문 준비 매개변수 바인딩 메서드를 작성한 다음 문제가 해결되었는지 관찰합니다. 또한, 시스템을 내부적으로 사용하는 경우에는 외부망에 개방하여 내부 IP를 통해 접속해서는 안 된다.
PHPz2017-05-16 13:06:56
바인드 바이두 클라우드 관찰. 그런 다음 데이터베이스 계정을 IP
Sql 주입에 바인딩하고 처리되지 않은 양식이 있는지 확인해야 합니다
習慣沉默2017-05-16 13:06:56
인증을 추가하면 더 좋겠지만, 인증식별도 하는 경우도 있는데, IP가 너무 자주 동작한다면 이 IP의 동작을 제한해 보세요! 물론 전문가는 웹사이트의 가치에 따라 IP 공격을 계속 변경할 수도 있습니다.
滿天的星座2017-05-16 13:06:56
데이터베이스가 격리되어 있나요?
또한 SMS 전송 인터페이스가 이전에 확인 없이 지속적으로 요청되어 SMS 서비스를 사용할 수 없게 되었습니다
.