2013-12-11 1 views
1

나는 루아의 Wireshark에 대한 커스텀 해부학자를 연구 중입니다.루아 디시 전트에서 패킷을 복호화합니다.

프로토콜의 특정 PDU는 AES를 사용하여 암호화되며이를 해독하여 Wireshark에 명확한 콘텐츠를 표시 할 수 있습니다. 이것이 루아 딕셔너리 (lua dissector)에서 가능한가요? 그리고 암호 해독을 위해 어떤 API를 사용할 수 있습니까?

데이터 해독 장치를 만들기 위해 c/C++ 해부기를해야합니까?

답변

3

개인적으로 나는 lua-crypto을 사용하지만 OpenSSL이 필요합니다. lua-wiki을 확인할 수 있습니다. 최근 this AES 구현 bgcrypto에 대한 래퍼를 만듭니다. 외부 종속성은 없지만 실제 작업에서는 아직 사용하지 않습니다.

+0

흥미롭고 흥미로운 것은 OSX, Windows 및 Linux 모두에서 lua-crypto가 작동할까요? –

+0

Windows에서 사용합니다. 그리고 Linux Mint와 travis에서 테스트를합니다. – moteus

1

Wireshark (2.0)는 암호 API를 LUA 디 시커에 노출시키지 않으므로 루아 디 시터에서 구현해야합니다.

순수 루아 솔루션의 경우 lua-lockbox (Lua wiki에서 언급 한대로)을 사용할 수 있습니다. 성능이 필요하지만 프로토 타이핑에 유용 할 수있는 경우에는 권장되지 않습니다.

빠른 AES 암호 해독 구현은 일반적으로 예를 들어, 네이티브 라이브러리를 사용

  • LuaCrypto -이
  • lcrypt을 유지 보이지 않지만, OpenSSL을 사용 - libtomcrypt을 사용하지만 하나 더 개발 없을 것 같다
  • 이 라이브러리 중 어떤 것도 내 요구를 만족하지 않기 때문에, 나는이 이유 libgcrypt를 기반으로하는 새로운 개발

:

  • Wireshark는 이미 SSL 암호 해독과 같은 항목에 대해 Libgcrypt에 연결됩니다.
  • Libgcrypt 라이브러리는 충분히 많은 암호와 해시를 지원합니다.
  • Libgcrypt는 널리 사용 가능하며 적극적인 개발 팀이 있습니다.
  • Luagcrypt API는 간단하고 문서화되어 있습니다.

결과는 luagcrypt이며 Wireshark (Linux, OS X, Windows)에서 지원하는 플랫폼에서 작동합니다. KDNET 해부기구에서 사용되는이 commit은 lua-lockbox에서 luagcrypt 로의 변형을 보여줍니다.