정윤상이다.

.Net Framework가 솔직히 모르겠다. 걍 취약점이 나왔으니 업데이트 한다.


해당 취약점은 CVE-2017-8759(https://www.cvedetails.com/cve/CVE-2017-8759/)으로 원격 코드실행이 가능하다.


해당하는 버전은 다음과 같다.

Microsoft .NET Framework 2.0

Microsoft .NET Framework 3.5, 3.5.1

Microsoft .NET Framework 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7


해당 취약점 조치 업데이트가 2017년 9월 12일에 배포가 되었다. 

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-8759



자세히보면 패치대상이 되는 OS와 .Net Framework이 다르다.


Versions or editions that are not listed are either past their support life cycle or are not affected.

To determine the support life cycle for your software version or edition, see Microsoft Support Lifecycle.

라고 해당 글 상단에 있다.


그러니까 일단 Windows 7은 .Net Framework 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7에 대해서 조치해야 한다.


추가적으로 Windows OS 별로 기본적으로 가지고 있는 .Net Framework가 있다.

https://blogs.msdn.microsoft.com/astebner/2007/03/14/mailbag-what-version-of-the-net-framework-is-included-in-what-version-of-the-os/


해당 글 보면 Windows 7은 .Net Framework 3.5.1을 기본적으로 가지고 있다. 그래서 3.5.1에 대한 업데이트는 필수다.


그럼 .Net Framework 4.5.2와 4.6~4.7에 대해서 설치 여부를 확인하고 업데이트를 진행해야 한다.


.Net Framework 4.5.2 설치 여부는 다음의 레지스트리를 확인하면 된다.

1. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.5.2

2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full의 Release가 379893

여기 값은 4.5.2 이상의 .Net Framework가 설치되면 덮어씌어진다.

즉, 4.6이 설치된 경우 Release 값이 높아진다.


이와 같은 방식으로 


.Net Framework 4.6

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.6

.Net Framework 4.6.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.6.1

.Net Framework 4.6.2

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.6.2

.Net Framework 4.7

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.7


와 같이 찾으면 된다.


업데이트가 완료되었는지 확인하기 위해서는


HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages에서

Package_[#]_for_kb[number]~[string]~[OS_version]~~[update_version] 양식의 InstallClient값이 WindowsUpdateAgent 확인 


예를 들어, Package_for_KB4040966~31bf3856ad364e35~x86~~6.1.1.0


참고사이트

https://blogs.msdn.microsoft.com/dotnet/2016/10/11/net-framework-monthly-rollups-explained/

https://support.microsoft.com/ko-kr/help/318785/how-to-determine-which-versions-and-service-pack-levels-of-the-microso

https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed#net_c

https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies


저작자 표시
신고
댓글 로드 중…

최근에 게시된 글