kb
-
소수 이야기kb 2011. 4. 3. 23:41
소수(prime number)란 {2,3,5,7,1,13, ...} 과 같이 1과 자신만으로 나누어지는 1보다 큰 양의 정수를 말한다. 소수에 관하여 알려진 사실 가운데 가장 확실한 사실은 "소수는 무한히 많다"는 것이 증명(Euclid's second theorem) 되었다. 이렇게 무한히 많은 소수들은 매우 불규칙하게 나타난다. 그러므로 수가 충분히 커졌을 때 특정 소수 다음에 어떤 소수가 나타날지 예측할 수 없다. 또한 소수를 만드는 공식을 찾기 위해 많은 수학자들이 노력을 기울였으나 아직까지 명쾌한 해답을 제시하지 못하고 있다. 지금까지 알려진 가장 긴 소수들의 등차수열은 1993년 Pritchard 에 의하여 발견된 11,410,337,850,553 + 4,609,098,694,200k (k =..
-
Zone Identifier ADS'skb 2011. 4. 3. 22:59
악성코드의 많은 부분은 인터넷을 통해 다운로드 받아진 파일이 실행되면서 감염되게 됩니다. 어떤 악성코드는 사용자를 속여 프로그램의 아이콘을 윈도우 기본 폴더 모양으로 만들어 놓고 사용자가 실수로 클릭하여 프로그램이 실행되게 하는 등 이른바 사외 공학적 기법을 이용하기도 합니다. 이러한 사용자의 실수 혹은 부주위를 줄여보고자, IE 에 보안 기능 중 IE 를 통해 다운로드 받은 파일을 실행하려고 할 때 "보안경고" 다이얼로그가 아래 그림과 같이 출력되게 됩니다. 참고로 요즘 사용하고 있는 MacBook Pro 노드북에 설치된 레오파드(leopard) 운영체재에서도 인터넷에서 다운로드 받은 파일은 사용자의 확인을 한번 더 거쳐 실행되도록 되어 있습니다. 이는 해당 파일의 ADS(Alternate Data S..
-
Internet Explorer 9 Securitykb 2011. 3. 25. 18:42
인터넷 익스폴러어 (Internet Explorer, 이하 IE) 9 정식버전이 얼마 전에 출시되었다. 필자는 IE 에 대해 여러 가지로 불만이 많아 파이어폭스(Firefox)를 메인으로 사용하고 있다가, 최근에 IE9 의 최신기술이 확인하고자 업무용 PC 에 설치해서 사용해 보고 있는 중이다. 결과는 만족스럽다. 가볍지는 않지만 무겁다고 까지는 느끼지 않았으며 필자가 관심있는 보안적으로도 많은 부분 완성도가 높아진 것으로 판단된다. 이 글에서는 IE 에 포함된 보안 기능들에 대해서 간략히 살펴보고자 한다. ActiveX Filterling 오른쪽 그림과 같이 IE 의 메뉴를 쫓아가면 ActiveX Filterling 기능을 활성화 시킬 수 있다. 활성화 되면 주소표시줄 옆에 ActiveX 필터링이 활성..
-
Address Space Layout Randomization (ASLR)kb 2011. 2. 6. 23:25
ASLR 기술은 PE 파일이 메모리에 로딩될 때 ImageBase 값을 랜덤하게 바꾸는 것입니다. 또한 해당 프로세스의 Stack, Heap 의 시작 주소도 실행될 때마다 랜덤하게 변경됩니다. DLL 파일은 메모리에 최초로 로딩되면서 그 후부터는 다른 프로세스에 매핑되는 개념이기 때문에 같은 DLL 파일에 대해서 프로세스 별로 매핑주소는 동일합니다. 이러한 특성으로 인해 시스템 DLL(ntdll, kernel32.dll 등…) 들은 부팅 시마다 매핑주소는 틀려지겠지만 일단 부팅되면 모든 프로세스에서 같은 주소에 매핑됩니다. What is ASLR? In short, when you boot a Windows Vista computer, we load system code into different loc..
-
How to debug MBR on the Bochskb 2010. 12. 27. 21:24
MBR(Master Boor Record)을 감염시키는 악성코드가 있다면 기존의 MBR을 어떻게 변경하여 원하는 동작을 실행시키는지 궁금할 것이다. MBR은 BIOS(Basic Input/Output System)에서 POST(Power On Self-Test)과정을 거쳐 정상적으로 완료된 후 다음으로 호출되는 곳으로 하드디스크의 첫번째 옵셋(Offset 0x00)에 위치한 512 바이트의 바이너리를 말하는 것이다. MBR은 MBR 마지막 부분에 위치한 4개의 Partition Table 에 정보를 읽어 Partition Table 의 Boot Indicator 가 실행가능한 값(0x80)을 가지고 있을 경우 부팅 디스크로 판단하여 제어권을 넘겨주는 기능을 담당한다. MBR 에대한 자세한 내용은 여기에서..