{"id":30961662,"url":"https://github.com/magier/cs9k","last_synced_at":"2025-09-11T18:31:08.233Z","repository":{"id":219253180,"uuid":"233138885","full_name":"Magier/cs9k","owner":"Magier","description":"Environment for simulating adversarial traffic","archived":false,"fork":false,"pushed_at":"2020-02-10T11:30:48.000Z","size":37,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-01-31T00:03:28.872Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Magier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-01-10T22:12:18.000Z","updated_at":"2020-02-10T11:30:50.000Z","dependencies_parsed_at":"2024-01-26T11:45:52.200Z","dependency_job_id":"8530682c-2820-4bcb-8552-558c6ebe8ff6","html_url":"https://github.com/Magier/cs9k","commit_stats":null,"previous_names":["magier/cs9k"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Magier/cs9k","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Magier%2Fcs9k","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Magier%2Fcs9k/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Magier%2Fcs9k/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Magier%2Fcs9k/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Magier","download_url":"https://codeload.github.com/Magier/cs9k/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Magier%2Fcs9k/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274684360,"owners_count":25330764,"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","status":"online","status_checked_at":"2025-09-11T02:00:13.660Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-09-11T18:31:04.515Z","updated_at":"2025-09-11T18:31:07.917Z","avatar_url":"https://github.com/Magier.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cyberwar Simulator 9000\n\nFor research of defensive security techniques it is vital to have realistic and up-to-date adversarial data/behavior.\n\nThe goal is to manage several pods in a sandboxed environment (i.e. Kubernetes cluster) with an adversary and a target application.\nThe adversary should be capable of performing several different adversarial techniques either from a single point or by spawning several other helper pods on a target system. \nThe main focus is not on the types of attack, but managing the two parties in the environment by monitoring the environment and allowing simple interaction with the parties.\nDepending on the used adversary (research necessary; either use existing tools or 'simple' replays of previously captured raw network traffic) can it be controlled either via a dedicated web interface or via a general dashboard of the sandboxed environment.\n\n\n## Tasks\n\n### Environment\n\n- [x] Setup Kubernetes environment \n- [x] Put tooling for observation of the _battlefield_ in place (Istio + Kiali?)\n\n\n### Adversary\n\n- [x] Setup adversary (e.g. Caldera, Infection Monkey, Atomic Red Team, custom application, ...)\n- [x] Configure attack pattern(s)\n- [ ] ~~add _scaling_ mechanism to spawn additional attacking pods~~\n\n\n### Victim\n\n- [x] Setup target application (OWASP Juice Shop)\n\n\n## Prequesits \n\n* Install istioctl https://istio.io/docs/setup/getting-started/#download\n\n\n## Setup\n\n\n1. Checkout repository\n2. Start cluster (or use a local minikube cluster)\n \u003e ./start_minik.sh\n3. Install istio on the cluster  \n \u003e ./kiali_init_setup.sh\n\n4. !!!Prep/Install Kiali [Kiali Setup](./kiali_setup.md). You need to add the Kiali Credentials!\n\n5. Start Services / configure Network\n\n \u003e ./setup.sh\n\n## Usage\n\nAs soon as the environment is set up the clients (i.e. _frigates_) will connect to the CnC server using a RAT they come equipped with.\nOnce the clients are connected, an operation can be started using the Caldera webinterface. which can be reached at \nFor this:\n 1. navigate to the Caldera webinterface (`minikube ip` and port 32700)\n 2. open the _Operations_ view under the _Campaign_ tab\n 3. plan a new operation by clicking on `VIEW` to switch to `Add` mode\n 4. `Start` operation\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmagier%2Fcs9k","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmagier%2Fcs9k","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmagier%2Fcs9k/lists"}