이전 포스팅에 작성한 실제로 개발하면서 적용한 보안모듈에 관해서 간략하게 포스팅해볼까 한다.
우선 제일 기본적으로 생각하는 보안모듈인 프로그램 위, 변조 감지 모듈을 생각해 봤다.
위, 변조 감지모듈은 간단하게 생각하여 한 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 |