-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Add Telegram Desktop fuzzers #14110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Add Telegram Desktop fuzzers #14110
Conversation
This adds fuzzing support for Telegram Desktop's MTProto protocol and encryption implementation. Project repository: https://github.com/telegramdesktop/tdesktop Fuzzer branch: https://github.com/telegramdesktop/tdesktop/tree/ossFuzz/fuzzing Fuzzers included (8 total): MTProto Protocol Stack: - mtproto_v0_fuzzer: Basic MTProto v0 protocol parsing - mtproto_v1_obfuscated_fuzzer: SHA256-based obfuscated handshake - mtproto_vd_padded_fuzzer: Padded protocol with anti-DPI - tl_serialization_fuzzer: Type Language binary serialization - aes_ctr_obfuscation_fuzzer: AES-256-CTR connection obfuscation Private Message Encryption: - aes_ige_encryption_fuzzer: AES-IGE mode used for all messages - message_key_derivation_fuzzer: SHA1/SHA256 key derivation - auth_key_management_fuzzer: 2048-bit authorization key handling Technical details: - Standalone design with zero dependencies on tdesktop codebase - Fast build time (~10 seconds for all 8 fuzzers) - Performance: 17,000 - 326,000 exec/sec depending on fuzzer - Sanitizers: AddressSanitizer, UndefinedBehaviorSanitizer, MemorySanitizer - Total fuzzer code: 2,435 lines All fuzzers have been tested locally with libFuzzer and pass check_build verification.
vah13 is integrating a new project: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are you a Telegram maintainer? we need approval from maintainers that they are okay with this integration and will respond to issues found.
I assume we're waiting for telegramdesktop/tdesktop#29878 as well?
|
||
help_url: "https://github.com/telegramdesktop/tdesktop/" | ||
|
||
view_restrictions: none |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you double confirm this is intended and also matches the policy of Telegram?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not a telegram maintainer, but I'm on the way to integrating OSS-Fuzz with TG.
This adds fuzzing support for Telegram Desktop's MTProto protocol and encryption implementation.
Project repository: https://github.com/telegramdesktop/tdesktop
Fuzzer branch: https://github.com/telegramdesktop/tdesktop/tree/ossFuzz/fuzzing
Fuzzers included (8 total):
MTProto Protocol Stack:
Private Message Encryption:
Technical details:
All fuzzers have been tested locally with libFuzzer and pass check_build verification.