많은 기술 전문가와 마찬가지로 Internet Explorer 레거시 스크립팅 엔진(jscript.dll)의 새로운 치명적인 취약점과 이것이 어떻게 적극적으로 악용되고 있는지에 대한 최근의 권고를 읽었습니다. 그 자체로 이런 일이 일어날 수 있습니다. 하지만 저를 짜증나게 한 것은 웹을 둘러싼 암울함과 파멸의 전조였습니다. 이 문제를 분석하고 우아한 방식으로 완화할 수 있는지 확인하는 데 거의 집중하지 않고 대부분 당황합니다.
실제로 Microsoft는 해결 방법을 나열했습니다. 영향을 받는 라이브러리에 대한 액세스를 거부할 수 있습니다. 그러나 이것은 또한 부작용을 일으킵니다. 인쇄, 그룹 정책 편집기에 대한 액세스 및 기타 몇 가지 문제와 관련된 문제가 나타날 수 있습니다. 그래서 앉아서 생각했습니다. 실제로 시스템을 완전히 불안정하게 만들지 않고 취약점의 영향을 줄일 수 있는 방법이 있을까요?
문제의 범위
취약점은 (Internet Explorer) 스크립팅 엔진에 존재합니다. 이는 이 엔진을 호출하는 모든 프로그램이 잠재적으로 메모리 손상을 유발할 수 있고 잠재적으로 임의의 코드 실행으로 이어질 수 있음을 의미합니다. 일반적으로 이는 Internet Explorer, 아마도 Microsoft Office 및 일반적인 가정 환경에서는 찾아볼 수 없는 이상한 레거시 응용 프로그램을 의미합니다.
해결책은 Internet Explorer를 실행하지 않고 다른 프로그램에서 이상한 파일이나 링크를 열지 않는 것입니다. 이것은 상관없이 항상 사실입니다. 문제는 이 취약점을 유발할 수 있는 페이지에 대해 Internet Explorer를 "우연히" 열면 어떻게 됩니까?
인터넷 익스플로러를 실행하지 마세요
Windows에는 오랫동안 특정 응용 프로그램을 허용하지 않는 옵션이 있습니다. 이는 레지스트리 또는 그룹 정책 편집기(프로 버전 사용자용)를 통해 구현될 수 있으며 나열된 프로그램이 실행되지 않도록 합니다. 특히 gpedit.msc를 실행하고 사용자 구성> 시스템으로 이동한 다음 지정된 Windows 응용 프로그램을 실행하지 마십시오.
라는 정책을 엽니다.
정책을 활성화합니다. 그런 다음 옵션:에서 표시를 클릭하고 허용되지 않는 응용 프로그램 목록에 iexplore.exe를 추가합니다.
이제 이것은 광고된 대로 작동하지만 Windows 탐색기나 시작 메뉴를 사용하여 프로그램을 실행하는 경우에만 가능합니다. 다른 방법을 통한 액세스를 차단하지 않으며 애플리케이션이 jscript.dll 라이브러리를 사용하는 것을 중지하지도 않습니다. 걱정하지 마세요, 우리는 거기에 갈 것입니다. 저는 천천히 선형적으로 발전하고 있습니다.
마찬가지로 응용 프로그램을 추가하기 위한 레지스트리 경로는 다음과 같습니다.
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies
이미지 파일 실행 옵션(IFEO)
우리는 GWX 컨텍스트에서 이 매우 유용하고 강력한 기능에 대해 이야기했습니다. 이를 사용하여 시스템의 프로그램이 작동하는 방식을 변경할 수 있습니다. 기본적으로 디버거 기능을 사용하여 iexplore.exe 실행을 기본 동작에서 빈 cmd 셸 실행으로 변경합니다. 기본적으로 아무것도 하지 않고 Javascript 라이브러리를 호출하지 않는 더미 실행입니다.
이렇게 하면 Internet Explorer를 "실행"할 수 있지만 전체 실행은 단순히 종료되는 명령 프롬프트 셸의 생성일 뿐입니다. 즉, Internet Explorer를 어떻게 호출하든 실제로 실행되지 않으므로 jscript.dll 라이브러리가 메모리에 로드되는 위험이 줄어듭니다.
이제 이것은 Internet Explorer에만 영향을 미치며 jscript.dll 함수를 참조하는 잘못된 포함 개체가 포함된 문서를 표시하는 Microsoft Word와 같은 다른 프로그램이 라이브러리를 사용하는 것을 막지는 않습니다. 그러나 특히 Internet Explorer와 같은 네트워크 가능 프로그램에서 라이브러리가 사용되는 위험을 줄입니다. 시스템의 다른 도구에 여전히 이 라이브러리가 필요할 수 있지만 반드시 외부 네트워크 리소스에 연결할 필요가 없다면 위험이 줄어듭니다.
The cool part about IFEO is that it does not require anything beyond setting the registry key. If you want to revert back, just delete the Debugger string, and you will have the old functionality back.
Lastly, if you use anti-malware software, some may see this as a potential IFEO Hijack. Be aware of this fact, and then move on, and perhaps even embrace a smarter way of doing computer security. But that's a topic for another time.
Let's talk about jscript.dll
Now, my work above does not fix the problem. It works around it by reducing the chance of Internet Explorer running. The proper fix is to update the library. Technically, you could "just" copy the new patched version over the old one, and you're done. But the Windows Update mechanism is a bit more complex.
So the mitigation is to remove the executable permission from the library. You can do it on the command line, as the advisory says, or you can do it using Windows Explorer. The reason for the command line is to take ownership of the (system) library, to be able to change its security settings. Alternatively, you can manipulate the permissions by opening cmd (or explorer) through ExecTI, a utility that lets you run programs with the highest privileges, as I've shown you in my list of must-have Windows admin utilities.
What you want to do is remove the Read &execute checkbox mark for all of the listed groups or users. But then, the side effects! For example, the aforementioned Group Policy editor will not launch correctly if execute is denied for Administrators. This also emphasizes the importance of running as standard user, as you could have no execute for Jscript for Users, and you would still be able to use Internet Explorer then, without any effect on system functionality.
Group Policy Editor with JScript.dll not allowed to execute. Messed-up layout.
But then, since this is all there is to it, you can disable Read &execute, and toggle it when you need it, until you can apply the official patch - provided you actually want to apply it. In some scenarios, you might not want to, or be able to, and you might even have to use Internet Explorer. But this is not likely in the home setup. And I'm not talking enterprise security here. So lower your pitchforks. Finally, you can do the same thing for Internet Explorer - remove the execute permission.
Other things - local scripting
Then, if you do need to use Internet Explorer, you can disable Active Scripting under Internet Options. This is old news really, so I'm not going to focus too much on this here. A more practical thing is to avoid accidentally executing Javascript files stored on your local disk, through the Microsoft Based Script Host. This is the default, even on Windows 10. But in reality, there are very few reasons why you'd need to run Javascript files locally, outside the context of your browser.
What you want to do is create a dummy Javascript file, something like file.js. Right click> Open with, and then select a text editor of some kind (under More apps). This means that even if you do double-click on a locally stored Javascript file, it will open as a text file.
결론
Don't let panic be your compass. Some security problems are serious and require scrutiny. But others are not necessarily as dreadful as they may seem, based on the Internet chatter. In this case, yes, this is not a good thing. On the other hand, not running Internet Explorer pretty much solves it. Also, don't be an n00b and randomly execute files left and right, and you should be fine.
In this article, I tried to give you a somewhat calmer overview of what gives, and the options you have. Most importantly, you can use the fabulous magic of IFEO to prevent Internet Explorer from running, no questions asked. This way, you reduce the risk of nonsense, be it an old game launcher that hard-codes to iexplore.exe for messages or announcements, or your own twitchy fingers. You can also disable the execute permissions for the library, and if your system is set up with a standard user, you might not even need to compromise on reduced functionality due to the disabled library. 우리는 거기에 갈. Enjoy your Webz.
건배.