![Windows에서 SSL V3를 비활성화하려면 재부팅이 필요합니까? - 푸들 익스플로잇](https://rvso.com/image/658729/Windows%EC%97%90%EC%84%9C%20SSL%20V3%EB%A5%BC%20%EB%B9%84%ED%99%9C%EC%84%B1%ED%99%94%ED%95%98%EB%A0%A4%EB%A9%B4%20%EC%9E%AC%EB%B6%80%ED%8C%85%EC%9D%B4%20%ED%95%84%EC%9A%94%ED%95%A9%EB%8B%88%EA%B9%8C%3F%20-%20%ED%91%B8%EB%93%A4%20%EC%9D%B5%EC%8A%A4%ED%94%8C%EB%A1%9C%EC%9E%87.png)
우리는 수많은 Windows 서버에서 SSL V3를 비활성화하려고 합니다. 그 일환으로 레지스트리는 스크립트를 통해 원격으로 업데이트됩니다. 문제는 레지스트리 변경 후 재부팅이 많이 필요하다는 것입니다. 이를 해결할 수 있는 방법이 있습니까? 레지스트리 변경 후 더 이상 SSL V3를 허용하지 않도록 서버에서 서비스를 다시 시작할 수 있습니까?
편집: 좀 더 자세히 설명하면 "SSL V3 서버" 비활성화에 관한 것입니다. Windows 2012 R2 서버에서.
답변1
예... 아마... schannel.dll을 호출하는 응용 프로그램에 대해 이야기하고 있다면 말이죠.
"서버"에 대해 언급하셨고 프로토콜인 "SSlv3"에 대해서도 언급하셨습니다. 이 레지스트리 키를 변경하려면 재부팅이 필요합니다.
다음 Microsoft 문서를 읽어보세요.https://support.microsoft.com/en-us/kb/245030
이것이 기본적으로 이 주제의 성경입니다.
"CIPHERS 키 또는 HASHES 키에 대한 변경 사항은 시스템을 다시 시작하지 않고도 즉시 적용됩니다."라는 기사가 있습니다.
그러나 PROTOCOLS 키를 변경하고 있습니다. 다시 시작하세요.
편집하다:아, 가장 중요한 부분을 언급하는 것을 잊었습니다. 이 레지스트리 키를 변경하면 Schannel DLL을 호출하는 응용 프로그램에만 영향을 줍니다. (IIS, RDP, SQL Server 등) OpenSSL과 같은 타사 라이브러리를 사용하는 응용 프로그램에는 아무런 영향을 미치지 않습니다. 이러한 앱에서는 앱에 따라 재부팅이 필요한지 여부를 알 수 없습니다.
답변2
net stop http
및 를 사용하여 HTTP 서비스를 다시 시작할 수 있습니다 net start http
. 이는 이를 사용하는 응용 프로그램(예: IIS)에만 영향을 미칩니다.
또한 HTTP 서비스에 따라 모든 서비스를 다시 시작하고 사용 중인 다른 프로세스를 닫아야 합니다. \Device\Http\*
그렇지 않으면 서비스가 중지되지 않습니다.
이 모든 작업을 수행하는 PowerShell 스크립트는 다음과 같습니다. (이것은핸들.exe~에서https://live.sysinternals.com/여러 수준의 종속 서비스를 고려하지 않습니다.)
$depencies = Get-Service HTTP -DependentServices |? Status -eq Running
Stop-Service $depencies
.\handle.exe -nobanner -a \Device\Http\ |? { $_ -match '\s+pid:\s*(?<pid>\d+)\s+' } |% { $matches.pid } | gu |% { Stop-Process -Id $_ -Confirm }
Restart-Service HTTP
Start-Service $depencies
(Windows 7에서만 테스트했습니다.)