a2aproject / a2aproject/a2a-inspector
[Feat]: Update Documentation to Highlight Potential SSRF Risk
- Vorherrschende Sprache
- TypeScript
- Sterne
- 490
- Forks
- 152
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
### Is your feature request related to a problem? Please describe.
Hello Team,
We recently observed a potential SSRF risk in the agent card endpoint which takes a user-supplied URL and fetches the JSON metadata from that URL.
If the endpoint is exposed without security controls on the Internet because the backend unconditionally fetches the user-supplied URL and allows the user to attach custom HTTP headers (or blindly forwards incoming headers) to the outbound request. This could enable, e.g., the user to fetch the GCP metadata endpoint.
Furthermore, the application's error handling is overly verbose: when it attempts to validate the fetched JSON against its expected schema (using Pydantic) and fails, it reflects the entire fetched payload back to the user in the error message.
### Describe the solution you'd like
Consider adding a warning in the README.md on the risk of hosting the tool unrestricted to the Internet and suggest users to rely on reverse proxy, authentication and outbound firewall rules to reduce the risk of abusing the functionality for SSRF.
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Beitragsleitfaden
Rechercherichtung
Der Issue verweist auf die Datei README.md. Suche nach vorhandenen Sicherheitshinweisen oder Abschnitten zur Bereitstellung. Füge eine Warnung zu SSRF-Risiken hinzu, wenn der agent card endpoint öffentlich zugänglich gemacht wird, und erwähne reverse proxy, Authentifizierung und ausgehende Firewall-Regeln als Gegenmaßnahmen. Überprüfe die Änderung, indem du die aktualisierte README.md im Repository durchsiehst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Bereich
- documentation, security
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 1/5
- Geschätzter Aufwand
- Unter einer Stunde
- Aktivitätsstatus
- Aktiv
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 85/100