Suhosin의 끝; 다음은 무엇인가요?

여러 해 동안, 나는 열정적으로 사용해왔다 수호신 SQL 인젝션 및 기타 일반적인 웹 공격으로부터 방어하기 위해 Apache2 또는 PHP-FPM Nginx 웹 서버에서 PHP5의 모든 구현과 함께. 사실, PHP5는 매우 재앙적이었다, 핵심 보안 측면과, 기능 및 모듈 측면에서 수호신이 제공하는 중요한 강화 없이 사용하는 것을 상상할 수 없었다.
PHP5가 더 이상 지원되지 않고 내 레거시 프로그램이 모두 사라진 지금, 나는 PHP7의 여러 구현과 사용 가능한 수호신 패치가 없는 상태로 남아 있다.
비록, 기술적으로 PHP에 수호신을 추가하는 것이 여전히 가능하긴 하지만 7.0 그리고 7.1 (프리 알파 - 생산용이 아님), 프로젝트는 오래전에 사라졌다고 말하는 것이 공정하며 PHP7은 이미 그것이 문제를 일으킬 수 있음을 증명했다 이전 버전처럼. PHP7의 WAF와 핵심 보안에 새로운 추가 기능을 생각하고 있는데, 이것들이 제가 가져온 몇 가지 해결책:
나쁜 기능 또는 불필요한 기능 비활성화
PHP 내에 내장된 위험한 함수들이 많아 위험할 수 있으므로 기본적으로 'php.ini' 내에서 비활성화해야 합니다. 아래 명령어를 사용해 설정 파일을 찾아 vi나 nano로 기능을 비활성화할 수 있습니다.
php -i | grep "php.ini"주의하세요: 여러 버전의 PHP를 동시에 실행 중이거나 프로그램이 다른 서드파티 애플리케이션의 일부로 설치되어 있다면, 여러 개의 'php.ini'이 설치되어 있을 가능성이 높으며, 웹서버에서 어떤 것이 로드되었는지 명확하지 않습니다. 올바른 버전을 편집하고 있는지 확인하세요 (php -v).
'php.ini' 파일의 끝에 아래 줄을 추가하세요, 파일을 저장했는지 확인하세요, 그리고 웹 서버를 재시작하세요. 이 PHP 함수들에 대해 배울 수 있습니다 이 주소에서. 측정된 행동으로, 애플리케이션에 부정적인 영향을 미치지 않도록 하나씩 추가하는 것이 좋습니다.
disable_functions = popen, eval, leak, exec, shell_exec, curl_exec, curl_multi_exec, parse_ini_file, mysql_connect, system, phpinfo, escapeshellarg, escapeshellcmd, passthru, symlink, show_source, mail, sendmail, proc_open, proc_nice, proc_terminate, proc_get_status, proc_close, pfsockopen, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuidRegister Globals 및 Base64 비활성화
Register Global은 URL의 입력 배열을 코드 내 변수로 변환할 수 있게 해주는 PHP의 기능입니다. 따라서, 잠재적으로 취약한 코드는 HTTP GET 또는 POST 요청을 사용하여 악성 배열을 전달할 수 있는 공격자에 의해 악용될 수 있습니다.
Register Globals는 'php.ini'의 끝에 아래 줄을 추가하여 쉽게 비활성화할 수 있습니다. 변경 사항을 실행하기 위해 웹 서버를 재시작하는 것을 잊지 마세요.
register_globals = OffRegister Globals와 마찬가지로, Base64는 악의적인 백도어로 이어질 수 있는 또 다른 불필요한 기능입니다.. 아래 라인을 'php.ini' 파일 끝에 추가하여 Base64 디코더를 영구적으로 비활성화할 수 있습니다..
base64_decode = OffMore from me
포스트 면책 조항
견해, 정보, 또는 표현된 의견은 전적으로 작성자의 개인 의견이며, 반드시 작성자의 고용주 또는 그가 속한 조직의 의견을 나타내는 것은 아닙니다..
이 게시물에 포함된 정보는 일반적인 정보 제공 목적으로만 사용됩니다.. 정보는 파르하드 모피디가 제공했으며, 그는 정보를 최신 및 정확성 유지하기 위해 노력하지만, 어떠한 진술이나 보증도 하지 않습니다, 명시적이든 암시적이든, 완전성, 정확성, 신뢰성, 웹사이트의 적합성 또는 가용성. 파르하드는 어떠한 진술이나 보증도 하지 않습니다. 또는 어떠한 정보, 어떤 목적을 위한 게시물에 포함된 제품 또는 관련 그래픽.
또한, AI는 제안을 제공하고 일부 내용이나 문장을 개선하는 도구로 사용될 수 있다. 아이디어, 생각, 의견, 최종 제품은 원본이며 저자가 만든 인간 제작물입니다.





