htools-org/wireshark-handshake-protocol
GitHub: htools-org/wireshark-handshake-protocol
一个用 Lua 编写的 Wireshark 协议解析插件,用于解码 Handshake 区块链命名协议的网络数据包。
Stars: 11 | Forks: 1
# Wireshark 的 Handshake 协议插件
这是一个用 Lua 编写的 Wireshark 解析器,用于解码 [Handshake](https://handshake.org) 数据包。
## 截图



## 进度
虽然所有数据包类型都已添加,但少数尚未经过测试。如果您能捕获到它们,请发送 pcap(或者确认它可以工作并通过 PR 添加一个勾号 :D)。
| Type | Packet | Parser | Tested |
| ---- | ----------- | ------ | ------ |
| 0 | VERSION | ✔️ | ✔️ |
| 1 | VERACK | ✔️ | ✔️ |
| 2 | PING | ✔️ | ✔️ |
| 3 | PONG | ✔️ | ✔️ |
| 4 | GETADDR | ✔️ | ✔️ |
| 5 | ADDR | ✔️ | ✔️ |
| 6 | INV | ✔️ | ✔️ |
| 7 | GETDATA | ✔️ | ✔️ |
| 8 | NOTFOUND | ✔️ | |
| 9 | GETBLOCKS | ✔️ | ✔️ |
| 10 | GETHEADERS | ✔️ | ✔️ |
| 11 | HEADERS | ✔️ | ✔️ |
| 12 | SENDHEADERS | ✔️ | ✔️ |
| 13 | BLOCK | ✔️ | ✔️ |
| 14 | TX | ✔️ | ✔️ |
| 15 | REJECT | ✔️ | ✔️ |
| 16 | MEMPOOL | ✔️ | |
| 17 | FILTERLOAD | ✔️ | ✔️ |
| 18 | FILTERADD | ✔️ | |
| 19 | FILTERCLEAR | ✔️ | |
| 20 | MERKLEBLOCK | ✔️ | ✔️ |
| 21 | FEEFILTER | ✔️ | |
| 22 | SENDCMPCT | ✔️ | ✔️ |
| 23 | CMPCTBLOCK | ✔️ | ✔️ |
| 24 | GETBLOCKTXN | ✔️ | ✔️ |
| 25 | BLOCKTXN | ✔️ | ✔️ |
| 26 | GETPROOF | ✔️ | ✔️ |
| 27 | PROOF | ✔️ | ✔️ |
| 28 | CLAIM | ✔️ | |
| 29 | AIRDROP | ✔️ | ✔️ |
| 30 | UNKNOWN | ✔️ | |
## 安装
只需将此仓库克隆到 Wireshark 的插件目录。
**请确保目录名为 `handshake`,而不是其他名称。**
```
cd ~/.local/lib/wireshark/plugins/
git clone https://github.com/htools-org/wireshark-handshake-protocol handshake
```
然后,重启 Wireshark 或重新加载插件(`Ctrl` + `Shift` + `L`)。
大功告成!
## 用法/示例
安装完成后,Handshake 数据包将被自动解码。
**Packet Details**(数据包详情)面板将包含一个名为 **Handshake Protocol Data** 的新树。展开它以探索该数据包。
一些实用的显示过滤器:
```
// Filter by a specific packet type
handshake && handshake.type == 0;
// [add more]
```
## 贡献
随时欢迎贡献!
为了保持代码整洁,每种数据包类型都有其独立的文件,并且大部分都有注释。
如果您计划添加新类型,一个好的起点是复制 `packet_version.lua` 并替换其中的 `name`、`type`、`fields` 和 `parse`。
记得在 `handshake.lua` 中添加新类型!
## 反馈
如果有任何缺失的内容或需要更多信息,请随时[创建新 issue](https://github.com/htools-org/wireshark-handshake-protocol/issues/new)。
## 许可证
[MIT](https://choosealicense.com/licenses/mit/)
## 致谢
- [Bitcoin 协议文档](https://en.bitcoin.it/wiki/Protocol_documentation)
- [hsd codebase](https://github.com/handshake-org/hsd/blob/2d1cbe9c17b0ad4e8858c06a8f85625dbee35ba9/lib/net/packets.js)
- [使用 Lua 创建 Wireshark 解析器](https://mika-s.github.io/wireshark/lua/dissector/2017/11/04/creating-a-wireshark-dissector-in-lua-1.html)
标签:DNS枚举, Handshake 协议, HNS, Lua, PCAP, rizin, Wireshark, 区块链, 句柄查看, 开发库, 开源, 插件, 数据包解析, 网络协议分析, 网络安全工具, 网络抓包, 解压器