Language (82) 썸네일형 리스트형 Eclipse의 Color Theme적용하는 Plug-in http://marketplace.eclipse.org/content/eclipse-color-theme Preferences >> General >> Appearance >> Color Theme 에서 변경가능하다. scapy :: sniff 예제 특정 UDP 포트로 들어오는 데이터를 캡처하여 sequential하게 증가하는 특정값을 모니터링하는 소프트웨어이다. import socket import struct import time from threading import Thread from scapy.all import * DATA_FMT = "!IHHH%ds" UDP_PORT = 8080 captured_list = [] start_msginx = -1 expected_msginx = -1 missing_cnt = 0 captured_cnt = 0 def pkg_callback(pkg): global start_msginx global missing_cnt global expected_msginx global captured_cnt udp_la.. scapy :: Custom Protocol 추가 http://www.secdev.org/projects/scapy/doc/build_dissect.html#adding-new-protocols IP / UDP / CUSTOM_DL_HDR / CUSTOM_HDR 과 같은 네트워크 스택이 있다고 가정한다. CUSTOM_DL_HDR의 Destination UDP Port는 50481이며, 바로 뒤에 CUSTOM_HDR이 따라 오도록 한다. CUSTOM_DL_HDR는 [4 bytes] [2 bytes] [2 bytes] [2 bytes]로 구성되어 있다. CUSTOM_HDR는 [1 byte] [1 byte] [2 bytes]로 구성되어 있다. CUSTOM_DL_HDR과 CUSTOM_HDR Protocol 을 등록하기 위한 코드는 아래와 같다. from sca.. scapy :: pcap 파일 읽기 scapy 모듈을 활용하여 pcap 파일을 읽는 예제이다. 간단히 모든 패킷을 읽어들여 ARP 패킷 개수를 세는 프로그램이다. from scapy.all import * arps = [] pcap_data = rdpcap("test_arp.pcap") n_total = 0 for pkg in pcap_data: ip_layer = pkg.getlayer("ARP") n_total = n_total + 1 if ip_layer == None: # print "No ARP" continue arps.append(pkg) print "%02d / %02d ARP packets found. " % (len(arps), n_total) scapy on windows http://www.secdev.org/projects/scapy/doc/installation.html#windows Python으로 급하게 만들어 사용한 UDP Server 예제 프로젝트 진행간에 테스트 용도로 급하게 만들어 보았다. 역시 이럴때는 Python 만한게 없다. :) import socket if __name__ == '__main__': rcv_sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: rcv_sock.bind(("10.100.10.90", 8889)) except: print "Error at Binding" while 1: print "Listening..." data, addr = rcv_sock.recvfrom(65535) print "Got %s" % data Python을 이용한 Socket 프로그래밍에 관련된 자료는 아래의 문서를 참고한다. http://docs.python.org/lib.. Windows에서 시간측정 관련 자료 링크 http://andromedarabbit.net/wp/timimg/ C Macro 활용 다음에 참고하기 위해 쓴다. #define DebugRtiData(name) do { \ for (int i = 0; i < data_seq.length(); ++i) { \ if (info_seq[i].valid_data) { \ name##TypeSupport::print_data(&data_seq[i]); \ } \ } \ } while ( 0 ) 사용예 DebugRtiData(FCE_AIDLC_CTRL); 이전 1 ··· 4 5 6 7 8 9 10 11 다음