Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
gha-lab-e4a85583c3 — Sicherheitsforschungs-Labor, das CVE-2020-36762 (GHSA-h9gr-83jq-f3xc) reproduziert: Bash-Befehlsinjektion über github.event.comment.body im Kommentar-Workflow von ONSdigital/ras-collection-instrument | Kitploit
Tools/GitHubGitHub/pvharmo2/gha-lab-e4a85583c3
SchwachstellenanalyseExploitationLernen & BildungKuratierte Ressourcen
GitHubpvharmo2/gha-lab-e4a85583c3

gha-lab-e4a85583c3

Sicherheitsforschungs-Labor, das CVE-2020-36762 (GHSA-h9gr-83jq-f3xc) reproduziert: Bash-Befehlsinjektion über github.event.comment.body im Kommentar-Workflow von ONSdigital/ras-collection-instrument

Repository anzeigen
1vor 6h 51mNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Automatisiertes Forschungsobjekt – nicht das Upstream-Projekt.

Dieses Repository ist ein Wegwerf-Labor, das von einer automatisierten Testumgebung für eine Masterarbeit an der Université Laval zur Reproduktion veröffentlichter GitHub-Actions-Workflow-Schwachstellen erstellt wurde. Es ist eine wörtliche Momentaufnahme von ONSdigital/ras-collection-instrument beim Commit 493dc3d7c85f39c44e879941df9d5682865da109 (2020-12-03), weiterverbreitet unter der eigenen Lizenz des Projekts, deren Datei unverändert in dieser Momentaufnahme enthalten ist.

Das Upstream-Projekt ist nicht beteiligt, wird niemals angegriffen, und die hier untersuchte Schwachstelle ist bereits öffentlich bekannt. Jedes Geheimnis und jede Variable in diesem Repository ist ein zufällig generierter Dummy-Wert – es sind keine echten Anmeldedaten vorhanden. Aktionsreferenzen und Runner-Images sind auf den Stand vom 2020-12-03 fixiert; siehe pinning.md in der Testumgebungs-Ausgabe für jede an der Momentaufnahme vorgenommene Änderung.

Fragen oder Einwände: [email protected]


RAS Collection Instrument

Build Status Codacy Badge

Überblick

Dies ist der Microservice RAS Collection Instrument, der für das Hochladen von Erhebungsdurchführungen und Erhebungsinstrumenten zuständig ist. Er kann auch verwendet werden, um Erhebungsinstrumente als .xlsx-Dateien herunterzuladen, und ermöglicht die Suche nach Erhebungsinstrumenten über Suchfilter. Dieser Dienst kann Erhebungsdurchführungen mit Erhebungsinstrumenten verknüpfen und die Verknüpfung aufheben. Die Beziehung zwischen Durchführungen und Instrumenten ist eins-zu-viele, sodass eine Erhebungsdurchführung mehrere Erhebungsinstrumente haben kann. Jedes Erhebungsinstrument im JSON-Schema hat eine Stichprobeneinheiten-Referenz, einen Typ und eine Zusammenfassungs-ID sowie zusätzliche Attribute. Dieser Dienst kommuniziert hauptsächlich mit dem Erhebungsdurchführungs-Dienst sowie mit den Diensten für Parteien, Fälle und Umfragen. Protokollinformationen über die Erhebungsinstrumente werden an rabbitmq gesendet.

Erhebungsinstrumente werden in einer Instrumententabelle mit den folgenden Feldern gespeichert:

type = der Typ der Erhebungsdurchführung (z. B. SEFT, EQ usw.) instrument_id = die UUID für das Instrument stamp = der Zeitstempel, der angibt, wann das Erhebungsinstrument erstellt wurde survey_id = die UUID der zugehörigen Umfrage classifiers = die Umfrage-Klassifikatoren survey = die Umfrage selbst seft_file = die SEFT-Datei des Instruments

Es gibt drei verschiedene Endpunkt-Ansichten: /collectioninstrument, die für die meisten Endpunkte verwendet wird, sowie /survey_responses und /info.

Wenn ein Erhebungsinstrument für eine Erhebungsdurchführung hochgeladen wird, schreibt es eine Nachricht in die Seft.Instruments-Warteschlange für den rm-collection-exercise-Dienst. Wenn eine SEFT-Umfrageantwort hochgeladen wird, schreibt es eine Nachricht in die Seft.Responses-Warteschlange für den sdx-seft-consumer-Dienst.

Umgebung

Hierfür muss pipenv installiert sein:

root@kitploit:~
pip install pipenv

Tests

Zum Ausführen der Tests werden ein rabbitmq- und ein Datenbankserver benötigt. Das tox-Skript erstellt und startet diese Abhängigkeiten in Docker-Containern, die nach dem Ausführen der Unit-Tests wieder zerstört werden.

root@kitploit:~
pipenv install --dev
pipenv run tox

Zum Ausführen des Dienstes mit den erforderlichen Abhängigkeiten:

root@kitploit:~
docker-compose up -d db rabbitmq
pipenv run python run.py

Zum Testen, ob der Dienst läuft:

root@kitploit:~
curl http://localhost:8082/info

Die Datenbank wird beim Starten der Anwendung automatisch erstellt.

Docker

Zum Ausführen des Dienstes in einem Docker-Container ist ein Compose-Skript enthalten:

root@kitploit:~
docker-compose up -d

Konfiguration

Die für die Konfiguration verfügbaren Umgebungsvariablen sind unten aufgeführt:

UmgebungsvariableBeschreibungStandard
MAX_UPLOAD_FILE_NAME_LENGTHMaximale Länge von Dateinamen50
LOGGING_LEVELStufe des LoggersINFO
JSON_SECRET_KEYSJSON-Darstellung von SchlüsselnNone
ONS_CRYPTOKEYEin Schlüssel, der vom Cryptographer verwendet wirdNone
SECURITY_USER_NAMEBenutzername, mit dem sich der Client bei anderen APIs authentifiziertadmin
SECURITY_USER_PASSWORDPasswort, mit dem sich der Client bei anderen APIs authentifiziertsecret
COLLECTION_EXERCISE_SCHEMASpeicherort des Erhebungsinstrument-Schemasapplication/schemas/collection_instrument_schema.json
CASE_URLURL für den Fall-Dienst'http://localhost:8171'
COLLECTION_EXERCISE_URLURL für den Erhebungsdurchführungs-Dienst'http://localhost:8145'
SURVEY_SERVICE_URLURL für den Umfrage-Dienst'http://localhost:8080'
PARTY_URLURL für den Parteien-Dienst'http://localhost:8081'
RABBITMQ_AMQP_COLLECTION_INSTRUMENTURI für rabbitmqNone
RABBITMQ_AMQP_SURVEY_RESPONSEURI für rabbitmqNone

Diese werden in config.py festgelegt.

Test-Erhebungsinstrumente hochladen

Navigieren Sie zu /developer_scripts und führen Sie import.py aus, beantworten Sie die Eingabeaufforderungen in der Befehlszeile.

Verbesserungsvorschläge

  • Das collection_instrument_schema hat zwei scheinbar identische Attributfelder: formType und formtype.
  • Bezüglich des vorherigen Punktes haben viele der Attribute im Schema unklare Namen und Zwecke, wie entname1/2/3 und runame1/2/3, unter anderem. Das Schema sollte neu gestaltet oder besser dokumentiert werden.
  • Einige der Endpunkte haben ziemlich nutzlose Funktionalität. Beispielsweise gibt der Endpunkt /collectioninstrument/count lediglich die Anzahl der Erhebungsinstrumente zurück. Warum muss der Dienst das tun? Könnte dies nicht durch eine Datenbankabfrage erreicht werden?
  • Angesichts der starken Abhängigkeit des Dienstes von Erhebungsdurchführungen: Könnte dieser Dienst nicht im Rahmen des ras-rm-Redesigns mit dem Erhebungsdurchführungs-Dienst zusammengelegt werden?
Tool herunterladen