Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Bug: `testEndpoint` URL Scheme Not Validated

Offen Anfängerfreundlich
#598 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
1/5
Geschätzter Aufwand
Unter einer Stunde
Anfängerfreundlichkeit
88/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
go
Bereich
cli, security

Rechercherichtung

Beginne in cmd/test.go bei testEndpoint; bestätige, wo der Flag-Wert gelesen wird, bevor er an die Microcks API übergeben wird. Parse ihn mit url.Parse, lehne andere Schemes als http und https ab und füge Tests auf Befehlsebene rund um microcks test hinzu oder aktualisiere sie. Fertig bedeutet, dass ein ungültiges Scheme clientseitig fehlschlägt, bevor irgendein API-Aufruf erfolgt, während gültige HTTP- und HTTPS-Endpunkte weiterhin funktionieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Describe the bug
testEndpoint URL Scheme Not Validated
Description

In cmd/test.go, testEndpoint is only validated for non-emptiness and leading hyphens. The string is not parsed with url.Parse, nor is its scheme validated against an allowlist (http, https). Users can pass arbitrary URIs such as file:///etc/passwd, ftp://..., or cloud metadata endpoints (http://169.254.169.254/latest/meta-data), causing the remote Microcks server to initiate unintended network requests.

Steps to Reproduce
  1. Execute a test targeting cloud metadata:
    microcks.exe test "API:1.0" "http://169.254.169.254/latest/meta-data/" HTTP --microcksURL http://localhost:8080/api
    
  2. The CLI passes the endpoint directly to the Microcks API without client-side scheme validation.
Recommended Fix

Parse testEndpoint with url.Parse and enforce that u.Scheme is either "http" or "https".


Vorherrschende Sprache
Go
Sterne
59
Forks
74
Ø Merge
5 T. 4 Std.
Gemergte PRs (30 T.)
25

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus microcks/microcks-cli

Alle Issues in microcks/microcks-cli

Ähnliche Issues

Weitere Issues zu Go

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.