Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/chrism09/knx-bus-dump
Packet Sniffing & AnalysisIoT SecurityForensicsNetwork SecurityDigital ForensicsHardware & IoT Security
GitHubchrism09/knx-bus-dump

KNX-Bus-Dump

KNX 버스에서 TPUART와 Calimero Project 스위트를 통해 수신하고 패킷에서 데이터를 Wireshark 호환 파일 hex 덤프로 덤프하는 도구입니다.

저장소 보기
1244년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

KNX 버스 덤프

KNX는 인기 있는 빌딩 자동화 프로토콜로, 스마트 빌딩의 센서, 액추에이터 및 기타 구성 요소를 상호 연결하는 데 사용됩니다. KNX 버스 덤프 도구는 Calimero 자바 라이브러리(이 도구를 위해 기여한)를 사용하여 KNX 버스를 통해 전송되는 텔레그램을 기록합니다. 특히, 이 도구는 TPUART 연결을 통해 KNX 버스에 액세스하지만 다른 연결 매체를 사용하도록 변경할 수 있습니다. 텔레그램은 Wireshark 호환 16진수 덤프 파일로 덤프됩니다. 타임스탬프는 제공되며 나노초 정밀도의 UTC 시간으로 정규화되어 데이터 분석 및 텔레그램의 타임라인을 제공합니다. 16진수 덤프 파일은 Wireshark로 가져올 수 있으며, Wireshark의 cEMI 디섹터를 사용하여 KNX 텔레그램을 분석하도록 구성할 수 있습니다.

이 도구는 KNX 센서, 액추에이터 및 기타 KNX 장치의 프로토콜 분석에 사용할 수 있습니다. 예를 들어, 이 도구를 사용하여 KNX 장치를 이해하고 비정상적인 KNX 텔레그램을 발견했습니다. 또한 이 도구는 KNX 버스를 통해 전송되는 관련 프로토콜 및 데이터의 모든 세부 정보를 노출하므로 KNX 장치의 보안 분석에 이상적입니다.

Tcpdump와 Wireshark는 기본 KNX 텔레그램( TCP/IP 패킷이 아님)을 다루기 때문에 KNX 버스를 통해 전송되는 텔레그램을 덤프하는 데 사용할 수 없습니다. Wireshark와 tcpdump는 TCP/IP 패킷인 KNXnet/IP 패킷을 덤프할 수 있습니다. KNXnet/IP는 TCP/IP 네트워크를 통해 KNX 버스에 명령과 데이터를 보내기 위한 프로토콜입니다.

사전 요구 사항

이 도구는 Calimero Java 라이브러리와 함께 작동하도록 설계되었으며, TPUART 연결을 위해 Raspberry Pi 3 또는 4와 Raspberry Pi HAT와 호환됩니다.

환경 설정을 위한 몇 가지 가이드는 다음과 같습니다.

  1. KNX Raspberry PiHAT 사용 방법
  2. Raspberry Pi 및 Calimero Suite 설정

참고: 다음 단계는 이 가이드에 따라 환경을 설정했다고 가정합니다.

사용법

16진수 덤프 생성하기

  1. KNXBusDump.java 파일을 Calimero 프로젝트 스위트의 introduction/src/main/java/ 폴더에 넣습니다.

  2. introduction 폴더로 이동합니다.

  3. 프로그램을 실행하려면 다음을 실행하면 됩니다.

    root@kitploit:~
    ./gradlew run -Pcalimero.serial.tpuart.maxInterByteDelay=60000 -DmainClass=KNXBusDump
    

    일반적인 오류 해결 방법은 아래 문제 해결 가이드를 참조하세요.

  4. 이제 버스에서 메시지가 전송될 때까지 기다리면 덤프된 텔레그램이 KNXBusDump-Telegrams.txt 파일에 저장됩니다.

  5. Ctrl-C를 사용하여 도구를 취소하면 파일을 Wireshark로 가져와 분석할 준비가 완료됩니다.

16진수 덤프 분석하기

Wireshark에서는 16진수 덤프에서 패킷을 가져오고 디섹터를 지정하여 패킷을 분석할 수 있습니다.

  1. Wireshark를 시작한 후 초기 로딩이 완료될 때까지 기다립니다. 그런 다음 File -> Import From Hex Dump... 를 클릭합니다.

  2. 이를 올바르게 구문 분석하려면 태그가 있는 정규 표현식(regex)을 제공해야 합니다.

    root@kitploit:~
    ^\s*(?<time>\d{4}-\d\d\-\d\dT(\d\d\:){2}\d\d.(\d){6}[Z])\s(?<seqno>\d{6})\s+(?<data>[0-9a-fA-F]*)$
    
  3. 소스로 16진수 덤프 파일을 선택합니다.

  4. 새 대화 상자에서 Regular Expression 탭으로 변경하고 상자에 정규 표현식을 붙여넣습니다.

  5. 데이터 인코딩이 Plain hex 인지 확인합니다.

  6. Timestamp format 텍스트 상자에 도구에서 생성된 패턴을 지정해야 합니다.

    root@kitploit:~
    %Y-%m-%dT%H:%M:%S.%fZ
    

    참고: 타임스탬프 형식은 반드시 이 형식과 정확히 동일해야 합니다. 그렇지 않으면 타임스탬프가 구문 분석되지 않습니다.

  7. Encapsulation 섹션에서 Encapsulation Type 을 Wireshark Upper PDU Export 로 변경합니다.

  8. ExportPDU 를 선택하고 cemi 디섹터를 지정합니다.

  9. 이제 파일을 가져와 텔레그램을 분석할 수 있습니다.

샘플 출력

Wireshark 타임스탬프:

해당 16진수 덤프 파일

참고: 강조 표시된 시간은 정규화된 UTC 시간입니다. 시간 옆에 표시된 시간대와 관계없이 항상 올바른 UTC 시간입니다.

고려 사항:

  1. cemi 디섹터는 텔레그램의 메시지 코드(MC) 부분부터 시작합니다. 매체 유형은 고려하지 않습니다.
  2. TPCI가 빨간색으로 강조 표시된 이유는 디자인 선택 때문입니다. 디섹터는 패킷이 Unnumbered Data Packet(UDP)임을 확인합니다. 즉, KNX 표준에 따라 시퀀스 번호는 일반적으로 0으로 설정됩니다. 그러나 일부 장치에서는 이를 0이 아닌 값으로 설정하기도 합니다. 이 경우 1로 설정되었습니다. 디섹터는 시퀀스 번호가 0인지 확인합니다. 이 경우 0이 아니므로 시퀀스 번호가 0이어야 한다는 오류 메시지가 나타납니다.

문제 해결 가이드

이 설정 가이드에 따라 프로그램을 실행할 때 발생할 수 있는 일반적인 오류입니다. 오류를 해결하는 데 도움이 되길 바라는 해결 방법을 제공합니다.

KNX 서버 검색 프로그램 대신 버스 덤프 실행

모든 명령을 정확히 입력했는지 확인하세요. "Dmainclass"로 명령을 실행하면 기본적으로 Discover KNX Servers 프로그램이 실행됩니다. 반드시 "DmainClass"여야 합니다.

TPUART 포트의 초기 상태를 가져올 수 없음

KNXD(이 가이드에 따라 설치한 경우)가 실행 중이 아닌지 확인하세요. 이 가이드를 따르는 경우 KNXD가 동일한 포트를 사용하고 있으며 한 번에 하나의 프로세스만 직렬 포트를 사용할 수 있습니다.

Wireshark: "Can't initialize scanner: Unknown error"

위에서 16진수 덤프 파일의 내용을 복사하여 붙여넣은 경우 추가 개행 문자가 누락되었을 수 있습니다. 예를 들어 "SampleData1.txt"의 경우 GitHub 표현에는 4줄의 데이터가 표시되지만 실제로는 4줄의 데이터 와 개행 문자입니다. 따라서 한 가지 가능한 해결 방법은 가져오는 파일의 마지막 데이터 바이트 뒤에 "Enter" 키를 누르는 것입니다.

샘플 출력 시도

이 저장소에는 스크린샷을 만드는 데 사용된 샘플 파일 데이터가 Sample-KNXBusDump-Telegrams.txt 에 포함되어 있습니다. 직접 테스트하려면 이 파일을 Wireshark로 가져오시기 바랍니다.

테스트 시나리오

이 도구는 로컬 KNX 테스트베드에서 테스트되었습니다.

도구 다운로드