기록 , 그리고 습관
article thumbnail
Published 2023. 7. 27. 17:50
응용프로그램 보안 모듈 -1 MyProject

이전 포스팅에 작성한 실제로 개발하면서 적용한 보안모듈에 관해서 간략하게 포스팅해볼까 한다.

우선 제일 기본적으로 생각하는 보안모듈인 프로그램 위, 변조 감지 모듈을 생각해 봤다. 

 

위, 변조 감지모듈은 간단하게 생각하여 한 PC에 하나의 프로그램만이 실행되어야 하는데 해당 규칙을 지키지 않으려고

 

위, 변조를 통해 프로그램을 여러 개를 실행하여 이점을 챙기는 행위를 주변에서 포착하였다.  실제로 내 예전회사에서도

당한 피해이기도 하다. 그 경험을 바탕으로 원천 차단하기 위해 이런 보안 비책을 생각했다.

 

프로그램별로 고유의 식별자를 비교하여 실제 PC에 설치되어 있는 프로그램과 서버에 등록되어 있는 프로그램 정보들이

 

일치하면 정상적인 프로그램이지만 서버와 대조하여 등록된 정보중 그 어떤 하나와도 다른 게 있다면 즉시 로그인을 차단하고 로그인을 시도한 계정은 영구히 정지되고 해당 PC도  프로그램에서 차단해 버리는 개념이다.  

 

개념은 매우 간단하여 이 정도는 공개해도 된다 생각하여 포스팅을 작성 중에 있는 것이다. 

 

위반하는 규칙에 따라 정지 수위는 달라지지만 결국 영구계정 정지와 하드시리얼 차단, 메인보드 시리얼 차단이라는

강경대응을 약관에 두고 있다. 

 

   static void Main()
    {
        ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");

        foreach (ManagementObject wmi_HD in searcher.Get())
        {
            string serialNumber = wmi_HD["SerialNumber"].ToString();
            Console.WriteLine("Hard Disk Serial Number: " + serialNumber);
        }

        Console.ReadLine();
    }

이 소스 같은 경우 c#을 이용하여 사용자의 하드 시리얼넘버를 가지고 오는 방법이다. 다음은 메인보드 시리얼 넘버를 수집하는 소스를 적어보겠다.

 

 static void Main()
    {
        ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_BaseBoard");

        foreach (ManagementObject wmi_BB in searcher.Get())
        {
            string serialNumber = wmi_BB["SerialNumber"].ToString();
            Console.WriteLine("Mainboard Serial Number: " + serialNumber);
        }

        Console.ReadLine();
    }

 

이와 같이 시스템 정보를 이용하여 위, 변조 행위를 감지한 후 사용자 접근을 차단하는 방법이 있다. 

 

흔히들 말해 요즘 게임에서 말하는 하드 벤 하드 벤 거리는 게 이런 원리인 것으로 추청 된다. 

 

정확한 차단방법 및 위변조 감지 기술은 공개하지않는점 양해 바란다. 다음 포스팅은 비인가 프로그램 차단모듈에 대한

 

포스팅을 진행해보려한다. 

이상이다.

반응형

'MyProject' 카테고리의 다른 글

응용프로그램 보안 모듈-2  (0) 2023.07.27
나의 첫 실무 대비 포트폴리오  (0) 2020.12.06
profile

기록 , 그리고 습관

@무노문호

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!