SNMP accepts malformed remote ports
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- Mezza giornata
- Idoneità per principianti
- 62/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- c
- Ambito
- networking
Direzione di ricerca
La issue punta all'analisi di host e porta eseguita dal costruttore di SNMP, che secondo il report usa atoi(). Il payload non indica il file, quindi inizia individuando quell'analisi nel sorgente dell'estensione SNMP. Riproduci con le due chiamate al costruttore del report, poi verifica che le porte malformate sollevino ValueError mentre 0 e 65535 continuano a funzionare. È fatto quando entrambi i casi malformati lanciano un'eccezione e un test phpt nella directory dei test dell'estensione SNMP li copre.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
The following code:
<?php
new SNMP(SNMP::VERSION_1, '127.0.0.1:not-a-port', 'public');
new SNMP(SNMP::VERSION_1, '127.0.0.1:123junk', 'public');
does not throw an exception. The first port is interpreted as 0, and the
second is interpreted as 123.
I expected both malformed ports to result in a ValueError. The parser should
require at least one decimal digit, reject trailing characters, and enforce the
existing 0..65535 range.
PHP Version
PHP 8.4.28-dev (cli) (built: Nov 1 2026 11:27:04) (ZTS DEBUG)
Copyright (c) The PHP Group
Zend Engine v4.4.28-dev, Copyright (c) Zend Technologies
The same permissive atoi() parsing is present on the current master branch.
Operating System
macOS 27.2 arm64
- Lingua principale
- C
- Stelle
- 41.7k
- Fork
- 8.5k
- Merge medio
- 2g 14h
- PR unite (30g)
- 140
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di php/php-src
-
Bug Status: Needs Triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
I maintainer di solito rispondono entro 1 giorno
-
quoted_printable_encode() produces lines longer than 76 characters for bytes 0xF5 to 0xFFForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
Bug Status: Needs Triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
php/php-src#24196 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Feature Status: Needs Triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
php/php-src#24183 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Sockets from synchronous stream_socket_client() are left in non-blocking mode on WindowsForse già presa Una pull request collegata a questa issue è aperta o già unita. ApertaBug Status: Needs Triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
Difficoltà 2/5 Mezza giornata Idoneità per principianti 72/100
vercel-labs/scriptc#2910 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
darktable-org/darktable#22939 ·
I maintainer di solito rispondono entro 1 giorno
-
os: input_password leaves terminal echo disabled when reading failsForse già presa @davlgd l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
armv7l: `close`, `unlink` and `chroot` pass the kernel their argument's addressForse già presa @aoinoikaz l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
colbymchenry/codegraph#3223 ·
I maintainer di solito rispondono entro 1 giorno