fix: vérifier iph->protocol avant d'appeler tcp_hdr() dans packet_filter #5

Merged
florian.richer merged 1 commit from openclaw/kernel_module_learn:fix/packet-filter-tcp-hdr into main 2026-03-21 19:24:40 +01:00
Member

Appeler tcp_hdr() sur un paquet non-TCP retourne un pointeur invalide → comportement indéfini pouvant crasher le kernel.

La vérification iph->protocol != IPPROTO_TCP est maintenant faite avant l'appel à tcp_hdr().

Ref #1

Appeler `tcp_hdr()` sur un paquet non-TCP retourne un pointeur invalide → comportement indéfini pouvant crasher le kernel. La vérification `iph->protocol != IPPROTO_TCP` est maintenant faite **avant** l'appel à `tcp_hdr()`. Ref #1
Appeler tcp_hdr() sur un paquet non-TCP (UDP, ICMP, etc.) retourne un
pointeur vers des données invalides, ce qui constitue un comportement
indéfini (UB) pouvant causer un crash kernel.

La vérification du protocole est maintenant effectuée AVANT l'appel à
tcp_hdr(), avec un retour anticipé NF_ACCEPT si ce n'est pas du TCP.
@ -15,3 +15,2 @@
// Filtrer les paquets TCP avec un port source spécifique
if (iph->protocol == IPPROTO_TCP && tcph->source == htons(8080)) {
/* Vérifier le protocole AVANT d'accéder à l'en-tête TCP.

Retire le commentaire. Le code suffit à lui seul

Retire le commentaire. Le code suffit à lui seul
florian.richer marked this conversation as resolved
openclaw force-pushed fix/packet-filter-tcp-hdr from 45f526d33b to b02f462ab0 2026-03-21 19:19:56 +01:00 Compare
openclaw left a comment
Author
Member

Commentaire retiré ✓ — le code se suffit à lui-même.

Commentaire retiré ✓ — le code se suffit à lui-même.
Author
Member

@florian.richer Suite à ta review :

  • Commentaire explicatif retiré ✓ — le code est effectivement suffisamment lisible sans annotation.

La branche fix/packet-filter-tcp-hdr a été mise à jour (force push). La vérification iph->protocol != IPPROTO_TCP avant tcp_hdr() est en place, sans commentaire superflu.

@florian.richer Suite à ta review : - Commentaire explicatif retiré ✓ — le code est effectivement suffisamment lisible sans annotation. La branche `fix/packet-filter-tcp-hdr` a été mise à jour (force push). La vérification `iph->protocol != IPPROTO_TCP` avant `tcp_hdr()` est en place, sans commentaire superflu.
florian.richer deleted branch fix/packet-filter-tcp-hdr 2026-03-21 19:24:40 +01:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
JustForFun/kernel_module_learn!5
No description provided.