반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- hacking
- 윈도우 커널 드라이버
- vcruntime140.dll
- 포너블
- Network Byte Order
- pcap packet capture
- 개발하기
- HackCTF
- Windows Kernel Debug
- arudino
- 윈도우 커널 디버깅
- 해킹
- Windows Kernel
- 시스템해킹
- IAT Hooking
- pwnable
- Windows Kernel Driver
- C언어 패킷캡쳐
- pcap packet
- packet capture
- Windows
- 바이트 오더
- 네트워크 바이트 오더
- 개발 환경 준비
- vcruntime.dll
- windows kernel debugging
- apphelp.dll
- ucrtbase.dll
- 윈도우 커널
- Msvcrt.dll
Archives
- Today
- Total
미친해커
[Wireshark] Tree에 Item을 추가해 데이터 시각화하기 본문
반응형
이번 포스팅에서는 와이어샤크의 Tree(트리)에 TreeItem을 생성하고 생성된 TreeItem에 Item을 추가해 데이터를 보다 보기 좋게 시각화하려고 한다.
이전 포스팅을 읽지 않았다면 읽는 것을 추천한다.
How to add TreeItem to Wireshark
dissector의 인자로 들어오는 root를 이용해 TreeItem을 생성할 수 있다.
MyProto = Proto.new("MyProto", "My Custom Protocol")
function MyProto.dissector(buf, pinfo, root)
pinfo.cols.protocol = "MY_PROTOCOL"
local st = root:add(MyProto, "MY PROTOCOL DATA", buf(0, buf:len()))
end
DissectorTable.get("tcp.port"):add(8080, MyProto)
위 코드는 MY PROTOCOL DATA
라는 이름의 트리 아이템을 추가하는 코드이다. 생성된 트리 아이템을 변수에 저장해야 하위에 아이템을 생성할 수 있다.
How to add Sub-Item for TreeItem
위에서 생성한 트리 아이템에 아이템을 추가해 데이터를 보기 좋게 만들 수 있다.
st:add(buf(0), "Data: " .. buf(0):bytes():tohex())
위 이미지와 같이 아이템이 생성된 것을 확인할 수 있다.
생성된 아이템을 클릭해보면 아래에 해당되는 데이터가 파란색으로 하이라이트 되는 것을 볼 수 있는데 이는 자동적으로 되는 것이 아니라 st:add 함수에서 첫 번째 인자로 해당 범위를 지정해주는 것이다.
st:add(buf(0, 2), "Data: " .. buf(0, 2):bytes():tohex())
위 코드를 예로 들자면 buf(0, 2) 는 TCP 프로토콜 Payload의 오프셋 0부터 2바이트를 아이템의 범위로 지정해준다는 의미이다. 맨 위의 예시에서는 offset만 지정해주고 length는 지정하지 않았기 때문에 오프셋 0부터 모든 데이터가 범위로 지정됐다.
반응형
'Wireshark > Lua Script' 카테고리의 다른 글
[Wireshark] Dissector로 프로토콜 만들기 (0) | 2022.07.28 |
---|---|
[Wireshark] Lua Script 개발 환경설정 (0) | 2022.07.28 |
Comments