본문 바로가기

IT 정보/컴퓨터

VHD와 Bit Locker로 완벽 보안? 공간 만들기

반응형

어플리케션들을 Thinapp로 포터블화 해서 쓰고는 있지만
레지에는 정보가 안남는다고 해도 등록정보나 다른것들로 인해 문제가 될 수 있습니다.
그걸 방지하기 위해 몇가지를 더 하고 있습니다.

1. 파일명 변경 - 이름으로 검색 시 걸리니까 제 개인적인 이름으로 바꿉니다.
   (예) UltraISO.exe ==> Honor ISO.exe

2. 등록정보 제거 - 파일의 속성-자세히를 열어 보면 프로그램 정보들이 있습니다.
   이 정보들은 레지에 실행 정보로 등록되서 검색시 걸릴 수 있습니다.


   usboffice에 회원분이 이 정보들을 제거할 수 있는 프로그램을 제공하고 있습니다.
   http://usboffice.kr/zbxe/1601

3. VHD 파일에 넣습니다.
   윈도우 7 에서는 가상디스크 공간인 VHD를 만들 수 있습니다. 

   이 VHD를 만들고 연결하고 거기에 포터블 프로그램들을 넣어두고 VHD를 닫으면 검색 안됩니다.

4. Bit Locker로 암호화 하기
   위에서 만든 VHD에다가 Bit Locker로 암호화를 해 놓으면
   VHD파일을 발견하더라도 열어 볼 수가 없습니다.
   제어판의 시스템 보안에 보시면 Bit Locker메뉴가 있습니다.
   VHD를 연결해서 드라이브로 보이게 하고 암호화를 진행하시면 됩니다. 


5. 자동으로 VHD 열고 암호 풀기
   사실 VHD를 저렇게 일일이 연결하기 시키고 암호 입력하고 그렇게 쓰기엔 좀 번거러운 점이 있습니다.
   이걸 한방에 해결해서 프로그램 하나 실행시키면 자동으로 연결하고 암호 입력하게 했습니다.
   AutoIT으로 만들었구요. 다른 랭귀지 툴로도 충분히 만들 수 있을겁니다.
5.1 VHD연결, 해재
   VHD연결 및 해제는 diskpart 를 실행해서 다 처리합니다. 이 명령들을 batch 파일로 만들어서 실행하게 하면 됩니다.

VHD 연결 명령어
sel vdi file="VHD 파일명" # VHD 파일명 선택
attach vdi                      # VHD 연결
assign Letter="L"           # PE로 부팅해서 command창에선 먹히는데 윈도우에선 디스크 관리자에 의해 할당되는걸 쓸거에요



연결 해제 명령어

sel vdi file="VHD 파일명" # VHD 파일명 선택
detach vdi                    # VHD 연결 해제

프로그램내에서 작성
 FileWrite($BatFile,  "@echo off" & @CRLF)
 FileWrite($BatFile,  "echo sel vdi file=""" & $sVHDFILE & """ > %temp%\vhd.txt" & @CRLF)
if FileExists ($sBit_Drive & ":\") Then   ; 해당 Drive가 존재하는지 체크
 FileWrite($BatFile,  "echo detach vdi >> %temp%\vhd.txt" & @CRLF)   ; VHD 연결 해제
Else
 FileWrite($BatFile,  "echo attach vdi >> %temp%\vhd.txt" & @CRLF)    ; VHD 연결
EndIf

 FileWrite($BatFile,  "echo exit >> %temp%\vhd.txt" & @CRLF)
 FileWrite($BatFile,  "diskpart /s %temp%\vhd.txt" & @CRLF)               ; diskpart /s Script파일명 으로 실행
 FileClose($BatFile)

ShellExecuteWait (@TempDir & "\vhdMount.bat", "", @TempDir, "", @SW_HIDE)

5.2 암호 자동 입력
   암호야 뭐 직접 입력해도 됩니다. 하지만 자주 사용하다 보면 귀찮죠.
   이 프로그램을 누구나 알 수 있다면 문제가 되지만 이프로그램도 잘 숨겨놓고 혼자 쓰면 뭐...
   그리고 전 이프로그램을 숨겨놓고 단축키를 눌렀을때 실행되도록 해놨습니다.
   어떤 순간에 해제하고 뭐 하고 하기 힘드니까 단축키 하나만 누르면...

   로직을 보면 우선 암호 입력창이 뜨길 기다렸다가 뜨면 Activate 시킵니다.
   그리고 Editbox에 암호와 Enter를 입력하면 자동으로 암호가 해제됩니다.

Sleep(2000)
Local $iPid=ProcessExists ("BdeUnlockWizard.exe")
if  $iPid <> 0 Then
 WinActivate ("BitLocker 드라이브 암호화")   ;(J:)")
 Local $handle = WinGetHandle("BitLocker 드라이브 암호화")
 If @error Then
  MsgBox(4096, "Error", "Could not find the correct window")
 Else
  ; Send some text directly to this window's edit control
  ControlSend($handle, "", "Edit1", "암호" & @CR)
 EndIf
EndIf

이것들은 꼭 프로그램을 숨긴다에 사용하기 보단
문서나 사진들 보안을 요하는 데이터들을 숨길때도 사용가능합니다.
5번의 프로그램 못 하는 분들도 VHD와 Bit Locker만으로도 충분히 보안을 유지할 수 있습니다.
반응형