Commit Graph

371 Commits

Author SHA1 Message Date
Artyom Gavrilov
2884cb72f9 fix: проверка указателя перед разыменованием 2025-02-05 23:50:10 +03:00
Artyom Gavrilov
34271ece2c fix: восстановление проверки fseek
Вероятно в этом месте должна была быть проверка вызова fseek.
2025-02-05 23:50:10 +03:00
Artyom Gavrilov
ad6b84a961 fix: проверка ftell на возвращаемое значение 2025-02-05 23:50:10 +03:00
Artyom Gavrilov
5f20220d4e fix: изменение типа переменной на подходящий
По стандарту ftell возвращает long.
2025-02-05 23:50:10 +03:00
Artyom Gavrilov
6cc23a2991 fix: изменение проверки fseek
По стандарту fseek при неудаче возвращает любое значение кроме нуля.
2025-02-05 23:50:10 +03:00
Artyom Gavrilov
c73885aca3 fix: изменение проверки qversion
qversion >= 0, т.к. тип переменной - uint32_t. Провека должна быть по
переменной ret.
2025-02-05 23:48:46 +03:00
Artyom Gavrilov
78dd12c526 fix: проверка указателя до его использования 2025-02-05 22:52:13 +03:00
Artyom Gavrilov
d7489fc08a fix: проверка указателя до его использования 2025-02-05 22:47:02 +03:00
Vadim Vetrov
42917a75fc Add youtubeUnblock statistics
The statistis will be printed on exit in userspace version. In kernel
space version, use `cat /proc/kyoutubeUnblock`.

The feature was proposed by @IceCat74 in #220
2025-02-01 20:38:33 +03:00
Vadim Vetrov
a03d05ca19 Fixed entware hash v1.0.0-rc6 2025-01-28 19:05:45 +03:00
Vadim Vetrov
91f8210437 Merge pull request #223 from Waujito/sni_domains_file
Allow to specify sni domains as file
2025-01-27 20:03:43 +03:00
Vadim Vetrov
ef78f5e185 Add --fake-custom-sni-file option
Allows to specify fake as a binary file
2025-01-27 19:51:28 +03:00
Vadim Vetrov
4eaeceed4e Fix README jumps 2025-01-27 16:55:31 +03:00
Vadim Vetrov
ab3e1b7dd1 Increase connbytes limit
As reported in #220
2025-01-27 16:54:42 +03:00
Vadim Vetrov
134a326cc7 Update README.md 2025-01-27 16:44:24 +03:00
Vadim Vetrov
baf9ca58c1 Update README.md 2025-01-27 16:40:13 +03:00
Vadim Vetrov
49de2cad6a Allow to specify sni domains as file 2025-01-20 22:26:17 +03:00
Vadim Vetrov
2289b4c738 Fix all domains with bruteforce analyzer 2025-01-19 21:26:56 +03:00
Vadim Vetrov
3f11a65a73 Disable conntrack by default
On some devices conntrack may return EPERM
2025-01-19 18:08:09 +03:00
Vadim Vetrov
bb133f8b88 Merge branch 'dev' 2025-01-18 23:21:54 +03:00
Vadim Vetrov
2809a5cc74 Fix Illegal instruction 2025-01-18 23:20:47 +03:00
Vadim Vetrov
b434c922ea Update README.md 2025-01-17 19:55:52 +03:00
Vadim Vetrov
12d6617d95 Merge pull request #214 from Waujito/kmod_fix
Kmod fix #213
2025-01-16 13:51:16 +03:00
Vadim Vetrov
f68f1ff6c7 Builder for 3.0.101 2025-01-12 03:34:33 +03:00
Vadim Vetrov
452e640d9f kmod -DNO_IPV6 packet filter 2025-01-12 01:45:31 +03:00
Vadim Vetrov
dfedde9aa8 Deglobalize struct config.
New config structure allows to implement refcounting in the kernel module to
escape borderline cases on module exit or config hot swap.
2025-01-11 03:42:50 +03:00
Vadim Vetrov
1027240062 Fix old kernel versions builders 2025-01-10 14:41:16 +03:00
Vadim Vetrov
351bbfb097 Use register_pernet_subsys for nf hook registration 2025-01-10 13:30:59 +03:00
Vadim Vetrov
2e67c161f8 Fix sni bruteforce when domain is at the end 2025-01-09 21:40:34 +03:00
Vadim Vetrov
d87ab29199 Use mallocs instead of NETBUF_ALLOC
malloc won't hurt when youtubeUnblock is processing the packet. But it
is better for kmod and a way cleaner than NETBUF_ALLOC defines.
2025-01-09 19:44:30 +03:00
Vadim Vetrov
9985fcea49 More verbose payload_split loggers 2025-01-09 18:31:38 +03:00
Vadim Vetrov
6393c11960 Use skb_copy_bits instead of skb_linearize
Encountered noticeable issues in performance caused by skb_linearize
2025-01-09 18:30:23 +03:00
Vadim Vetrov
9b58869864 Add --no-dport-filter flag
This flag allows to reduce amount of network packet to analyze.
2025-01-09 00:53:56 +03:00
Vadim Vetrov
37c8a798fd Disallow to use --no-ipv6 in kernel space 2025-01-09 00:21:12 +03:00
Vadim Vetrov
16ba8801c1 Concurrency defenders in config parse and module destroy
This commit is parr of #213 fix.
In this issue kernel module crashes on high bandwidth usage has been
reported. The part of the problem is concurrency usage: when config gets
freed, callbacks keep to depend on it.
2025-01-09 00:21:12 +03:00
Vadim Vetrov
cadec5a05c Allow to disable conntrack in userspace 2025-01-09 00:20:20 +03:00
Vadim Vetrov
59581e91b2 Allow to disable conntrack in kernel module 2025-01-09 00:09:47 +03:00
Vadim Vetrov
84d47b8a3d Add conntrack parse skeleton 2025-01-08 03:44:20 +03:00
Vadim Vetrov
8bf2ab9e9b Add libcyclone.a to gitignore 2025-01-08 03:43:07 +03:00
Vadim Vetrov
a3bd918484 Update trace logging 2025-01-07 23:28:01 +03:00
Vadim Vetrov
7b321b5a2d Use size_t instead of uint32_t
Encountered some crossplatform errors with uint_t-like length type
definition.
2025-01-07 13:51:07 +03:00
Vadim Vetrov
1b62bb6cb2 Fix segfault in parse_quic_decrypted 2025-01-07 13:26:29 +03:00
Vadim Vetrov
40e1101d68 Do not hide sni domains with tls disabled 2025-01-04 19:27:12 +03:00
Vadim Vetrov
71c105a900 Disable early approve with all domains 2025-01-04 19:25:05 +03:00
Vadim Vetrov
e852d37edb Differ quic initial salt versions 2025-01-04 19:22:54 +03:00
Vadim Vetrov
e98bb5ecad Implement sni-detection brute for QUIC 2025-01-04 17:47:49 +03:00
Vadim Vetrov
60e33318cb Fix workflow commit hash 2025-01-04 15:44:46 +03:00
Vadim Vetrov
fff2309863 Rename parsed to parse in --udp-filter-quic 2025-01-04 01:25:02 +03:00
Vadim Vetrov
0b9bc8e72a Add quic disassemble
Project all the CRYPTO messages to one buffer according to length/offset
2025-01-04 01:24:54 +03:00
Vadim Vetrov
2470c590fb Fix tls sni ext in the end of the packet parser 2025-01-03 18:04:40 +03:00