반응형

Hacking 8

SSP(Stack Smashing Protector) 끄기

현재 나의 리눅스는 우분투12.04 LTC이다. 책을 보면서 혼자 교재에 나온 오버플로우 샘플코드를 쳐서 컴파일 시키는데제대로 작동하지 않는 것이다. *** stack smashing detected ***: ./overflow_example terminated======= Backtrace: =========/lib/i386-linux-gnu/libc.so.6(__fortify_fail+0x45)[0xb763edd5]/lib/i386-linux-gnu/libc.so.6(+0xffd8a)[0xb763ed8a]./overflow_example[0x80485c9]/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0xb75584d3]./overflow_exampl..

Hacking/System 2012.08.05

Port Scanning 탐지 기법

우리가 만든 Simple Port Scanner를 통해 보안이 일정 수준 이상인 서버를 스캐닝 했다가는 스캐닝 했다고 딱 걸리기 쉽습니다.그 이유는 포트 스캐닝이 일정한 패턴을 가지고 접근하기 때문이죠.특히 TCP Scanning의 경우는 ACK을 보내기 때문에 여러분의 정보가 그대로 노출 될 가능성이 높죠. 공격을 하면 방어 스킬이 올라가고, 이로 인해 다시 공격 스킬이 올라가는 지속적인 순환속에서 우리의 보안 기술들을 나날히 발전하는 것이죠. 즉, 우리는 간단한 포트 스캐너와 같은 인위적인 침입에 대해 경고 및 접근 차단등 탐지 기법에 대해서 알아볼 것입니다. 아래는 그 중에서 가장 유명한 문서입니다. [ Phrack Magazine Volume 8, Issue 53 July 8, 1998, arti..

Hacking/Network 2012.07.10

Simple Port Scanner 업그레이드 No.1

Simple Port Scanner의 경우 실행시켜보면 알겠지만,매우 느리다는 것을 알 수 있다. 그 이유는 기본 TCP 접속을 통해서 해당 포트번호가 열렸는지를 체크할 때 걸리는 Timeout 세팅 때문이다.Windows의 경우 레지스트리에 세팅이 되어 있는데, 72초라고 하네.http://serverfault.com/questions/193160/which-is-the-default-tcp-connect-timeout-in-windows 아무튼 이러한 Timeout * 루프 카운트를 하게 되면 엄청난 시간이 걸리게 되는 것은 인지상정! 결국 Timeout + 한번에 한번만 접속 시도하는 Loop 때문에 생기는 문제다. 그럼 이것을 병렬처리하면 당연히 속도가 빠르지 않겠는가? 병렬처리를 위해 우리는 t..

Hacking/Network 2012.07.10

무선공유기, 해커에겐 ‘정보공유기’… IP만 알면 개인정보 ‘술술’

출처 : http://news.naver.com/main/read.nhn?mode=LSD&mid=shm&sid1=102&oid=020&aid=0002349642비밀번호따위 필요 없이 그냥 IP만 알면 공유기 해킹이 가능하다는 결론.우와..역시 공부를 더 많이 해야겠다.. ■ 인기제품 해킹 시연해보니 [동아일보] 국내 가정과 공공 장소에서 많이 사용하는 인터넷 무선공유기에 비밀번호를 설정해 놓더라도 인터넷주소(IP)만 알면 이 공유기를 사용하는 노트북이나 스마트폰 이용자들의 개인정보를 손쉽게 해킹할 수 있는 것으로 나타났다. 이는 동아일보와 코스콤이 10, 11일 공동 주최하는 해킹방어대회 및 정보보안 국제회의 ‘Secuinside 2012’에 앞서 3일 실시한 시연(試演)에서 확인됐다. 최근 와이파이 접..

Hacking 2012.07.10

Simple Port Scanner 업그레이드 시키기

포트 스캐닝 기법에는 방식에 따라 여러가지로 나뉘며, 이때마다 매번 코드를 제작해야 하는 귀찮음을 벗어나기 위해기존 Simple Port Scanner의 소스코드를 조금 수정하도록 한다.1차 리팩토링! gcc SimplePortScanner.c -o SimplePortScanner SimplePortScanner.c #include #include #include #include #include #include #include #include "printfColor.h" #defineSUCCESS1 #defineFAILED-1 const int start_port= 1; const int end_port= 65535; char *host_addr; int option = -1;// PORT SCANNIN..

Hacking/Network 2012.07.07

Port Scanning 기법 - SYN scanning

Half-Open Scanning SYN패킷을 이용한 포트 스 캐닝 기법이다.앞서 명기한 Connect 스캔에 비하여 신뢰성은 조금 떨어지지만 진단대상의 로그를 남기지 않을 수 있다는 장점이 있다. 해당 스캐닝 기법은 동일하게 SYN 패킷을 보내 고 SYN+ACK패킷을 받음으로써 포트의 개방 여부를 파악한다.하지만 SYN+ACK 패킷을 받은후 에 RST 패킷을 보내어 세션을 종료하는 점이 Connect 스캔과 다른 점이라 할 수 있다. 스캐닝 기법중 Half-Open Scanning 을 구현하기 위해서는 RAW Socke을 사용하는 소켓 프로그래밍 기법이 필요하다. 기존의 TCP 세션 확립은 Bind( ), Connect( ), Listen( ), Accept( ) 등의 함수를 활용한 소켓 프로그래밍 기..

Hacking/Network 2012.07.07

Port Scanning 기법 - TCP scanning

Connect 스캔으로도 불리우는 방법이다. TCP Session과정에서필요로하는3-WAY Handshake 방법을 사용한 포트 스캐닝 기법으로 가장 신뢰성이 높은 장점이 있다. 하지만 개방된 포트와의 세션성립이 마지막 단계까지 이어지고 해당 연결이 설림(ESTABLISHED) 상태로 변환 되기 때문에 로그가 남는 단점이 존재한다. SYN 패킷을 보냄으로써 포트스캐닝을 시작하는 이 기법은 진단 대상으로부터 SYN+ACK 패킷이 오면 ACK 패킷을 다시 보냄으로써 해당 포트의 개방 여부를 파악한다. ResultsOpen PortIn case of an open port the process is as follows:Closed PortIn case of a closed port on the target i..

Hacking/Network 2012.07.07

초간단한 Port Scanner 만들기

Port Scan이란? 네트워크에서 각 컴퓨터가 연결하기 위해서는 항구가 개방되듯이 Port또한 개방(open)되어 있어야 합니다. 예를 들면 ssh를 접속하기 위해서는 기본적으로 22번 포트를 열고, ftp는 21번, http는 80번 포트를 열어서 해당 네트워크 연결을 유지하지요. 즉 이러한 해당 서비스를 제공하기 위해서는 해당 번호의 포트를 무조건 개방해야 된다는 결론이죠. 이러한 열려있는 포트를 알아야 역으로 뚫고 들어갈 수 있겠죠. 열려있는 포트가 어떠한 것들이 존재하는지 검색하는 것을 Port Scan이라 하는 거죠. 이러한 포트 스캔을 거의 예술의 수준으로 승화시킨 'NMAP'라는 툴도 있습니다만, 여기서는 리눅스에서 직접 개발하는 소스코드를 제작해 보죠. (http://sosal.tisto..

Hacking/Network 2012.07.07
반응형