{"id":20093115,"url":"https://github.com/lukesavefrogs/corso-soc","last_synced_at":"2025-06-14T19:03:51.752Z","repository":{"id":262358788,"uuid":"885597876","full_name":"LukeSavefrogs/corso-soc","owner":"LukeSavefrogs","description":"Repository contenente il materiale per il crash course \"Beginner Python for SOC\"","archived":false,"fork":false,"pushed_at":"2025-05-31T19:26:04.000Z","size":114,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-14T14:23:07.762Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LukeSavefrogs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"LukeSavefrogs","patreon":"LukeSavefrogs","ko_fi":"lukesavefrogs","custom":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=RN3XMAHA8FZEE\u0026source=url"]}},"created_at":"2024-11-08T22:53:00.000Z","updated_at":"2025-05-31T08:53:51.000Z","dependencies_parsed_at":"2025-05-26T22:22:26.597Z","dependency_job_id":"b02f1f94-b077-4c6d-970f-fc8f05d16aa4","html_url":"https://github.com/LukeSavefrogs/corso-soc","commit_stats":null,"previous_names":["lukesavefrogs/corso-soc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/LukeSavefrogs/corso-soc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeSavefrogs%2Fcorso-soc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeSavefrogs%2Fcorso-soc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeSavefrogs%2Fcorso-soc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeSavefrogs%2Fcorso-soc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LukeSavefrogs","download_url":"https://codeload.github.com/LukeSavefrogs/corso-soc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LukeSavefrogs%2Fcorso-soc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259868230,"owners_count":22924230,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T16:45:55.878Z","updated_at":"2025-06-14T19:03:51.745Z","avatar_url":"https://github.com/LukeSavefrogs.png","language":"Python","funding_links":["https://github.com/sponsors/LukeSavefrogs","https://patreon.com/LukeSavefrogs","https://ko-fi.com/lukesavefrogs","https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=RN3XMAHA8FZEE\u0026source=url"],"categories":[],"sub_categories":[],"readme":"# Beginner Python for SOC crash course\n\nQuesto repository contiene il materiale utilizzato per il corso accelerato di Python SOC il 14/11/2024.\n\n\u003e [!WARNING]\n\u003e Questo non deve in alcun modo essere preso come un approccio serio alla CyberSecurity, ma piuttosto come un'*introduzione per principianti* al **potenziale** rappresentato dal conoscere Python in un contesto SOC.\n\n## Obbiettivi\n\n1. Analizza e genera un report per le seguenti vulnerabilità:\n   - porte aperte (`lsof -i`)\n   - troppi tentativi di accesso (`lastb --fullnames --time-format iso --dns`)\n   - utenze bloccate/scadute\n2. Lettura di un file CSV contenente una lista di hostname/porta e controllare che siano aperte\n\n## Connessione al server\n\n1. Installa le estensioni consigliate, in particolare:\n   - [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python)\n   - [Pylance](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)\n   - [Remote - SSH](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh)\n   - [Tabstop Whitespace Converter](https://marketplace.visualstudio.com/items?itemName=johnnywong.vscode-ts-whitespace-converter)\n\n2. Installa un client OpenSSH:\n   - [Git for Windows](https://git-scm.com/downloads/win)\n   - [Windows OpenSSH Client](https://learn.microsoft.com/it-it/windows-server/administration/openssh/openssh_install_firstuse?tabs=gui\u0026pivots=windows-server-2019#install-openssh-for-windows-server)\n\n3. Aggiungi il server alla lista di host:\n   1. Apri il \"Riquadro Comandi\" (\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eA\u003c/kbd\u003e o \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e a seconda dei binding)\n   2. Digita \"Remote-SSH: Add new SSH Host\" e dai \u003ckbd\u003eInvio\u003c/kbd\u003e\n   3. Quando richiesto inserisci la seguente stringa sostituendo a `SERVER_USERNAME` e `SERVER_IP` i valori corretti:\n      ```shell\n      ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no {SERVER_USERNAME}@{SERVER_IP} -p 2222\n      ```\n   4. Seleziona il file di configurazione nella tua home:\n      ![alt text](./docs/images/ssh-config-file.png)\n\n4. Connettiti all'host remoto:\n   1. Apri il \"Riquadro Comandi\" (\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eA\u003c/kbd\u003e o \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e a seconda dei binding)\n   2. Digita \"Remote-SSH: Connetti la finestra corrente all'host...\" e dai \u003ckbd\u003eInvio\u003c/kbd\u003e\n   3. Seleziona l'host creato al punto 3 (con il nome corrispondente a `SERVER_IP`)\n   4. Inserisci la password\n\n5. Installa nell'host remoto le estensioni locali:\n   1. Clicca sul tasto \"Estensioni\" dalla barra laterale sinistra\n   2. Clicca al pulsante download alla destra della sezione \"SSH - {ip_address} - INSTALLATE\"\n   ![alt text](./docs/images/download-estensioni-remote.png)\n\n6. Seleziona l'interprete Python remoto:\n   1. Apri il \"Riquadro Comandi\" (\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eA\u003c/kbd\u003e o \u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e a seconda dei binding)\n   2. Digita \"Python: Select Interpreter\" e dai \u003ckbd\u003eInvio\u003c/kbd\u003e\n   3. Seleziona \"Python 3.12.3\" come da immagine:\n   ![alt text](./docs/images/selezione-interprete.png)\n\n7. Sei pronto!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukesavefrogs%2Fcorso-soc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukesavefrogs%2Fcorso-soc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukesavefrogs%2Fcorso-soc/lists"}