CyberBattleSim/notebooks/toyctf-solved.ipynb

22547 строки
814 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"id": "7e5e75ee",
"metadata": {
"papermill": {
"duration": 0.004162,
"end_time": "2024-08-05T18:49:26.409331",
"exception": false,
"start_time": "2024-08-05T18:49:26.405169",
"status": "completed"
},
"tags": []
},
"source": [
"Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License.\n",
"\n",
"# Capture The Flag Toy Example - Solved manually"
]
},
{
"cell_type": "markdown",
"id": "c9a8ae6e",
"metadata": {
"papermill": {
"duration": 0.00468,
"end_time": "2024-08-05T18:49:26.417414",
"exception": false,
"start_time": "2024-08-05T18:49:26.412734",
"status": "completed"
},
"tags": []
},
"source": [
"This notebook demonstrates how to model a toy `Capture The Flag` security game as a CyberBattle environment."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "8326d870",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:26.430775Z",
"iopub.status.busy": "2024-08-05T18:49:26.429880Z",
"iopub.status.idle": "2024-08-05T18:49:27.413343Z",
"shell.execute_reply": "2024-08-05T18:49:27.412391Z"
},
"papermill": {
"duration": 0.99302,
"end_time": "2024-08-05T18:49:27.415640",
"exception": false,
"start_time": "2024-08-05T18:49:26.422620",
"status": "completed"
},
"scrolled": true,
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
" <script type=\"text/javascript\">\n",
" window.PlotlyConfig = {MathJaxConfig: 'local'};\n",
" if (window.MathJax) {MathJax.Hub.Config({SVG: {font: \"STIX-Web\"}});}\n",
" if (typeof require !== 'undefined') {\n",
" require.undef(\"plotly\");\n",
" requirejs.config({\n",
" paths: {\n",
" 'plotly': ['https://cdn.plot.ly/plotly-latest.min']\n",
" }\n",
" });\n",
" require(['plotly'], function(Plotly) {\n",
" window._Plotly = Plotly;\n",
" });\n",
" }\n",
" </script>\n",
" "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import sys, logging\n",
"import cyberbattle.simulation.model as model\n",
"import cyberbattle.simulation.commandcontrol as commandcontrol\n",
"import cyberbattle.samples.toyctf.toy_ctf as ctf\n",
"\n",
"logging.basicConfig(stream=sys.stdout, level=logging.INFO, format=\"%(levelname)s: %(message)s\")\n",
"\n",
"import plotly.offline as plo\n",
"\n",
"plo.init_notebook_mode(connected=True)\n",
"%matplotlib inline "
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "08615928",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.425974Z",
"iopub.status.busy": "2024-08-05T18:49:27.425467Z",
"iopub.status.idle": "2024-08-05T18:49:27.582432Z",
"shell.execute_reply": "2024-08-05T18:49:27.581256Z"
},
"papermill": {
"duration": 0.163809,
"end_time": "2024-08-05T18:49:27.584636",
"exception": false,
"start_time": "2024-08-05T18:49:27.420827",
"status": "completed"
},
"scrolled": true,
"tags": []
},
"outputs": [
{
"data": {
"image/png": "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MXsiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjmBR1B+jZhFADKYnAnctA+j1AqAEza8DFH3DyhWSiKOouEhER0XuOgfINJVISIc78Dpz5A8hO0xRK/w0oC/V/X8sh/GpBqtwa8AyEJElF01kiIiJ6r0lCCFHUnaDHhDIbIupX4PhKQJIeh8f8SHJAqAD3CpCajIRkX/z1dJSIiIjoPwyUbxCRfANiwxDNLW684LdFkgMyOaTG30Aq2+iV9I+IiIjIEAbKN4RIvg6x4gsg+5FmxNEIUqNvIFVoXkg9IyIiIno2rvJ+A4jcTIh1/1coYRIAxF+TIW6cLoSeERERET3fOx8o582bB0mSUL169aLuSr7EgYVA2l1AqPAoW4UxO66h4tSTsBl+GM6jjqLKjFMYtOkqbqZma8/ZeuEBxu64ZrhBSYLYNg4iN/M1PQMiIiJ6n73zgTIyMhLe3t74559/EBsbW9Td0SOSYoGT6wChRq5KjbrzojFtbyKCfW0xraUPhtfzwIfFrbDyZBIuJ2Vpz9t2IRnf77yeT6NqIO0uxLEVr+lZEBER0fvsnd42KC4uDocOHcKGDRsQHh6OyMhIjB49+rVdXwiBrKwsWFhY5F/n1EbtSu1NZx/gZGI6lnUqhU5VnHXqZeWqkaN6zopvnYbVwKkNENW7QpKbFugUtVqNnJwcmJubF/w6RERE9N57p0coIyMj4eDggGbNmqFNmzaIjIzUOV63bl1IkmTwERERAQAYM2aMwf0dIyIi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aWlo2bKlweM1atTQbnJ+69YtAECdOnWwfPlynXpBQUHw9fVFo0aN4OnpiZ49e2Lo0KHIefQQv8QrYSkHUgv4QTm1ikm4/AhYeUONSnYC7uYSctTA3WyB82kCg3zlsPwv2Vk6OOGDclXQuXNn9OnTBzdv3sSIESMKdB2ZTIaRI0cWrFP/YaAkIiIiekpkZCTMzc31tgTKI5PJ0KxZM0RGRkKhUCA9PR19+vTRq7dkyRL4+vrC1NQUGzduRN++ffHdd9/Bzc0NjQPLIy3hIn6/WbBEaSqTEOYpx4H7apxPEzjzUPMxi46mQF0nGRT/3QmXZHJU7RgOuakp2rRpg/79+yM7O7tAt7tfliSe3FqdiIiIiF6La/9GYXGnuoXerqmFJQbsuAgblw8Kve38cNsgIiIioiLgWaUWPvq87zM/MedlfPztjNcaJgEGSiIiIqIiU/+rCXD0KQ1JbvwsREkmQ5n6n6BKmx6F0LMXw0BJREREVEQUVtboFvEXipXwhSR//nZA+ZIk+AY1wGczluvtefk6MFASERERFSEbZzf0XHUAZRu00hS8QCCUZHJAkhDU4yt0nLcRpgrzV9PJ5/WDi3KIiIiI3gzntq/H3zNG4MG1K5DJTaBWGV4BnneseMWP8PG301Gico3X3FNdDJREREREbxAhBOKO7sXZLatw/dRR3LtyEUKtAgDIzRRwLV0BnlWCUPnTrnArU6mIe6vBQElERET0BlPl5iIn4xEkmQxmltaQGTPX8hVhoCQiIiIio3BRDhEREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMgoDJREREREZhYGSiIiIiIzCQElERERERmGgJCIiIiKjMFASERERkVEYKImIiIjIKAyURERERGQUBkoiIiIiMopJUXfgSUKo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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"network = model.create_network(ctf.nodes)\n",
"env = model.Environment(network=network, vulnerability_library=dict([]), identifiers=ctf.ENV_IDENTIFIERS)\n",
"env.plot_environment_graph()"
]
},
{
"cell_type": "markdown",
"id": "7f145bbd",
"metadata": {
"papermill": {
"duration": 0.006343,
"end_time": "2024-08-05T18:49:27.597701",
"exception": false,
"start_time": "2024-08-05T18:49:27.591358",
"status": "completed"
},
"tags": []
},
"source": [
"### Solution to the CTF\n",
"\n",
"This is the list of actions taken to capture 7 of the 8 flags from the CTF game.\n",
"\n",
"| Source | Action | Result |\n",
"|------------ | ------ | ------ |\n",
"| WEBSITE | page content has a link to github | Discover Github project |\n",
"| GITHUB | navigate github history | **FLAG** Some secure access token (SAS) leaked in a reverted git commit (`CredScan`) |\n",
"| AZURESTORAGE| access blob using SAS token | |\n",
"| WEBSITE | view source HTML | Find URL to hidden .txt file on the website, extract directory path from it |\n",
"| | navigate to parent URL and find 3 files | **FLAG** Discover browseable web directory |\n",
"| | - readme.txt file | Discover secret data (the flag) | \n",
"| | - getting-started.txt | Discover MYSQL credentials | \n",
"| | - deprecation-checklist.txt | Discover URL to external sharepoint website | \n",
"| SHAREPOINT | Navigate to sharepoint site | **FLAG** Finding AD Service Principal Credentials on Sharepoint | \n",
"| CLIENT-AZURE| `az resource` with creds from sharepoint| Obtain secrets hidden in azure managed resources |\n",
"| | | Get AzureVM info, including public IP address |\n",
"| CLIENT | `ssh IP` | Failed attempt: internet incoming traffic blocked on the VM by NSG |\n",
"| CLIENT | SSH into WEBSITE with mysql creds | **FLAG** Shared credentials with database user|\n",
"| | |**FLAG** Login using insecure SSH user/password|\n",
"| WEBSITE/SSH | `history` |**FLAG** Stealing credentials for the monitoring user|\n",
"| | `sudo -u monitor` | Failed! monitor not sudoable. message about being reported!\n",
"| CLIENT | SSH into WEBSITE with 'monitor creds | Failed! password authentication disabled! looking for private key|\n",
"| CLIENT | SSH into WEBSITE as 'web' | |\n",
"| | `su -u monitor` using password |**FLAG** User escalation by stealing credentials from bash history|\n",
"| | `cat ~/azurecreds.txt` | Get user credentials to Azure\n",
"| CLIENT | `az resource` with monitor's creds | Steal more secrets\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "43888671",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.611494Z",
"iopub.status.busy": "2024-08-05T18:49:27.610705Z",
"iopub.status.idle": "2024-08-05T18:49:27.648790Z",
"shell.execute_reply": "2024-08-05T18:49:27.647470Z"
},
"papermill": {
"duration": 0.047045,
"end_time": "2024-08-05T18:49:27.650608",
"exception": false,
"start_time": "2024-08-05T18:49:27.603563",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [],
"textposition": "bottom center",
"type": "scatter",
"x": [],
"y": []
}
],
"layout": {
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"9375caf3-f8ff-46d4-a62d-5e1754b1242d\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"9375caf3-f8ff-46d4-a62d-5e1754b1242d\")) { Plotly.newPlot( \"9375caf3-f8ff-46d4-a62d-5e1754b1242d\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [], \"y\": []}], {\"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('9375caf3-f8ff-46d4-a62d-5e1754b1242d');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2 = commandcontrol.CommandControl(env)\n",
"dbg = commandcontrol.EnvironmentDebugging(c2)\n",
"\n",
"# 1 - Start from client\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "4c44204f",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.669580Z",
"iopub.status.busy": "2024-08-05T18:49:27.668633Z",
"iopub.status.idle": "2024-08-05T18:49:27.681992Z",
"shell.execute_reply": "2024-08-05T18:49:27.680686Z"
},
"papermill": {
"duration": 0.025212,
"end_time": "2024-08-05T18:49:27.683935",
"exception": false,
"start_time": "2024-08-05T18:49:27.658723",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>status</th>\n",
" <th>properties</th>\n",
" <th>local_attacks</th>\n",
" <th>remote_attacks</th>\n",
" </tr>\n",
" <tr>\n",
" <th>id</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>client</th>\n",
" <td>owned</td>\n",
" <td>[]</td>\n",
" <td>[SearchEdgeHistory]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" status properties local_attacks remote_attacks\n",
"id \n",
"client owned [] [SearchEdgeHistory] []"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2.print_all_attacks()"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "7510a69c",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.706450Z",
"iopub.status.busy": "2024-08-05T18:49:27.705709Z",
"iopub.status.idle": "2024-08-05T18:49:27.737328Z",
"shell.execute_reply": "2024-08-05T18:49:27.736111Z"
},
"papermill": {
"duration": 0.044902,
"end_time": "2024-08-05T18:49:27.739496",
"exception": false,
"start_time": "2024-08-05T18:49:27.694594",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: Website\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Web browser history revealed website URL of interest\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5
],
"y": [
-4.3711388286737935e-08
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"1f4982fe-48b0-4530-ae16-54749d323289\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"1f4982fe-48b0-4530-ae16-54749d323289\")) { Plotly.newPlot( \"1f4982fe-48b0-4530-ae16-54749d323289\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5], \"y\": [-4.371138828673793e-08]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('1f4982fe-48b0-4530-ae16-54749d323289');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"outcome = c2.run_attack(\"client\", \"SearchEdgeHistory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "f1b34f99",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.773075Z",
"iopub.status.busy": "2024-08-05T18:49:27.772535Z",
"iopub.status.idle": "2024-08-05T18:49:27.786236Z",
"shell.execute_reply": "2024-08-05T18:49:27.785189Z"
},
"papermill": {
"duration": 0.031906,
"end_time": "2024-08-05T18:49:27.787970",
"exception": false,
"start_time": "2024-08-05T18:49:27.756064",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>status</th>\n",
" <th>properties</th>\n",
" <th>local_attacks</th>\n",
" <th>remote_attacks</th>\n",
" </tr>\n",
" <tr>\n",
" <th>id</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>client</th>\n",
" <td>owned</td>\n",
" <td>[]</td>\n",
" <td>[SearchEdgeHistory]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[ScanPageSource, ScanPageContent]</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" status properties local_attacks \\\n",
"id \n",
"client owned [] [SearchEdgeHistory] \n",
"Website discovered NaN None \n",
"\n",
" remote_attacks \n",
"id \n",
"client [] \n",
"Website [ScanPageSource, ScanPageContent] "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2.print_all_attacks()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "ea7d280c",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.821527Z",
"iopub.status.busy": "2024-08-05T18:49:27.820769Z",
"iopub.status.idle": "2024-08-05T18:49:27.845092Z",
"shell.execute_reply": "2024-08-05T18:49:27.843736Z"
},
"papermill": {
"duration": 0.043435,
"end_time": "2024-08-05T18:49:27.846931",
"exception": false,
"start_time": "2024-08-05T18:49:27.803496",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: GitHubProject\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: WEBSITE page content has a link to github -> Github project discovered!\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
0.5
],
"y": [
-4.3711388286737935e-08,
8.742277657347587e-08
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"2942a105-dc92-43d1-8ea3-16d906d86d0d\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"2942a105-dc92-43d1-8ea3-16d906d86d0d\")) { Plotly.newPlot( \"2942a105-dc92-43d1-8ea3-16d906d86d0d\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, 0.5], \"y\": [-4.371138828673793e-08, 8.742277657347586e-08]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('2942a105-dc92-43d1-8ea3-16d906d86d0d');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 2\n",
"github = c2.run_remote_attack(\"client\", \"Website\", \"ScanPageContent\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "21d115b1",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.886063Z",
"iopub.status.busy": "2024-08-05T18:49:27.885269Z",
"iopub.status.idle": "2024-08-05T18:49:27.912583Z",
"shell.execute_reply": "2024-08-05T18:49:27.911569Z"
},
"papermill": {
"duration": 0.049489,
"end_time": "2024-08-05T18:49:27.914343",
"exception": false,
"start_time": "2024-08-05T18:49:27.864854",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: AzureStorage\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered credential: CachedCredential(node='AzureStorage', port='HTTPS', credential='SASTOKEN1')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: CredScan success: Some secure access token (SAS) was leaked in a reverted git commit\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"AzureStorage"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
0.2499999552965164,
0.24999980628490448
],
"y": [
-4.3711388286737935e-08,
-0.4330127239227295,
0.43301281332969666
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"7e81bb63-6988-4510-8618-f20e57bcb3fb\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"7e81bb63-6988-4510-8618-f20e57bcb3fb\")) { Plotly.newPlot( \"7e81bb63-6988-4510-8618-f20e57bcb3fb\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0], \"y\": [0.0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, 0.24999995529651642, 0.24999980628490448], \"y\": [-4.371138828673793e-08, -0.4330127239227295, 0.43301281332969666]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('7e81bb63-6988-4510-8618-f20e57bcb3fb');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 3\n",
"leakedSasUrl = c2.run_remote_attack(\"client\", \"GitHubProject\", \"CredScanGitHistory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "b3d3e7ac",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:27.969782Z",
"iopub.status.busy": "2024-08-05T18:49:27.968850Z",
"iopub.status.idle": "2024-08-05T18:49:27.992061Z",
"shell.execute_reply": "2024-08-05T18:49:27.991115Z"
},
"papermill": {
"duration": 0.054136,
"end_time": "2024-08-05T18:49:27.993854",
"exception": false,
"start_time": "2024-08-05T18:49:27.939718",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Infected node 'AzureStorage' from 'client' via HTTPS with credential 'SASTOKEN1'\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.24999980628490448
],
"y": [
0,
0.43301281332969666
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
0.2499999552965164
],
"y": [
-4.3711388286737935e-08,
-0.4330127239227295
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"cdbb62d2-fae8-4f82-a691-5c23b16e09b1\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"cdbb62d2-fae8-4f82-a691-5c23b16e09b1\")) { Plotly.newPlot( \"cdbb62d2-fae8-4f82-a691-5c23b16e09b1\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.24999980628490448], \"y\": [0.0, 0.43301281332969666]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, 0.24999995529651642], \"y\": [-4.371138828673793e-08, -0.4330127239227295]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('cdbb62d2-fae8-4f82-a691-5c23b16e09b1');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 4\n",
"blobwithflag = c2.connect_and_infect(\"client\", \"AzureStorage\", \"HTTPS\", \"SASTOKEN1\")\n",
"dbg.plot_discovered_network()\n",
"blobwithflag"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "85a30872",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.053668Z",
"iopub.status.busy": "2024-08-05T18:49:28.053142Z",
"iopub.status.idle": "2024-08-05T18:49:28.076863Z",
"shell.execute_reply": "2024-08-05T18:49:28.075583Z"
},
"papermill": {
"duration": 0.062022,
"end_time": "2024-08-05T18:49:28.078950",
"exception": false,
"start_time": "2024-08-05T18:49:28.016928",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: Website.Directory\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Viewing the web page source reveals a URL to a .txt file and directory on the website\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.5
],
"y": [
0,
8.742277657347587e-08
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
5.962440319251527e-09,
-1.6888311904494913e-07
],
"y": [
-4.3711388286737935e-08,
-0.5,
0.5
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -1.6888311904494913e-07,
"xref": "x",
"y": 0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 5.962440319251527e-09,
"axref": "x",
"ay": -0.5,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"f0affde4-480a-447c-a5c1-475e70cbf943\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"f0affde4-480a-447c-a5c1-475e70cbf943\")) { Plotly.newPlot( \"f0affde4-480a-447c-a5c1-475e70cbf943\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.5], \"y\": [0.0, 8.742277657347586e-08]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, 5.962440319251527e-09, -1.6888311904494913e-07], \"y\": [-4.371138828673793e-08, -0.5, 0.5]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.6888311904494913e-07, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 5.962440319251527e-09, \"axref\": \"x\", \"ay\": -0.5, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('f0affde4-480a-447c-a5c1-475e70cbf943');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 5\n",
"browsableDirectory = c2.run_remote_attack(\"client\", \"Website\", \"ScanPageSource\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "354c1dc3",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.152586Z",
"iopub.status.busy": "2024-08-05T18:49:28.151810Z",
"iopub.status.idle": "2024-08-05T18:49:28.180799Z",
"shell.execute_reply": "2024-08-05T18:49:28.178678Z"
},
"papermill": {
"duration": 0.064928,
"end_time": "2024-08-05T18:49:28.183728",
"exception": false,
"start_time": "2024-08-05T18:49:28.118800",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: Website\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered credential: CachedCredential(node='Website', port='MySQL', credential='ReusedMySqlCred-web')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Discover browseable web directory: Navigating to parent URL revealed file `readme.txt`with secret data (aflag); and `getting-started.txt` with MYSQL credentials\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: Sharepoint\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Navigating to parent URL revealed file `deprecation-checklist.txt` containinga URL to an external sharepoint website\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.4045086205005646
],
"y": [
0,
-0.2938924729824066
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory",
"Sharepoint"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
-0.1545085608959198,
0.404508501291275,
-0.15450870990753174
],
"y": [
-4.3711388286737935e-08,
-0.4755282402038574,
0.29389262199401855,
0.47552818059921265
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.1545085608959198,
"xref": "x",
"y": -0.4755282402038574,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.404508501291275,
"xref": "x",
"y": 0.29389262199401855,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.404508501291275,
"axref": "x",
"ay": 0.29389262199401855,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.404508501291275,
"axref": "x",
"ay": 0.29389262199401855,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.15450870990753174,
"xref": "x",
"y": 0.47552818059921265,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.1545085608959198,
"axref": "x",
"ay": -0.4755282402038574,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4045086205005646,
"xref": "x",
"y": -0.2938924729824066,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.1545085608959198,
"xref": "x",
"y": -0.4755282402038574,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4045086205005646,
"xref": "x",
"y": -0.2938924729824066,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.404508501291275,
"xref": "x",
"y": 0.29389262199401855,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"1a82100e-bf1f-40d0-ba9d-2bb7bc7f4479\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"1a82100e-bf1f-40d0-ba9d-2bb7bc7f4479\")) { Plotly.newPlot( \"1a82100e-bf1f-40d0-ba9d-2bb7bc7f4479\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.4045086205005646], \"y\": [0.0, -0.2938924729824066]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, -0.1545085608959198, 0.404508501291275, -0.15450870990753174], \"y\": [-4.371138828673793e-08, -0.4755282402038574, 0.29389262199401855, 0.47552818059921265]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.1545085608959198, \"xref\": \"x\", \"y\": -0.4755282402038574, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.404508501291275, \"xref\": \"x\", \"y\": 0.29389262199401855, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.404508501291275, \"axref\": \"x\", \"ay\": 0.29389262199401855, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.404508501291275, \"axref\": \"x\", \"ay\": 0.29389262199401855, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.15450870990753174, \"xref\": \"x\", \"y\": 0.47552818059921265, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.1545085608959198, \"axref\": \"x\", \"ay\": -0.4755282402038574, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4045086205005646, \"xref\": \"x\", \"y\": -0.2938924729824066, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.1545085608959198, \"xref\": \"x\", \"y\": -0.4755282402038574, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4045086205005646, \"xref\": \"x\", \"y\": -0.2938924729824066, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.404508501291275, \"xref\": \"x\", \"y\": 0.29389262199401855, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('1a82100e-bf1f-40d0-ba9d-2bb7bc7f4479');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 6\n",
"outcome_mysqlleak = c2.run_remote_attack(\"client\", \"Website.Directory\", \"NavigateWebDirectoryFurther\")\n",
"sharepoint_url = c2.run_remote_attack(\"client\", \"Website.Directory\", \"NavigateWebDirectory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "92e1fbde",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.259283Z",
"iopub.status.busy": "2024-08-05T18:49:28.258648Z",
"iopub.status.idle": "2024-08-05T18:49:28.283775Z",
"shell.execute_reply": "2024-08-05T18:49:28.281878Z"
},
"papermill": {
"duration": 0.067332,
"end_time": "2024-08-05T18:49:28.286610",
"exception": false,
"start_time": "2024-08-05T18:49:28.219278",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: AzureResourceManager\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered credential: CachedCredential(node='AzureResourceManager', port='HTTPS', credential='ADPrincipalCreds')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Navigating to the Sharepoint site revealed AD Service Principal Credentials\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.2499999552965164
],
"y": [
0,
-0.4330127239227295
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
-0.2499999552965164,
0.5,
0.24999980628490448,
-0.25000011920928955
],
"y": [
-4.3711388286737935e-08,
-0.4330127239227295,
8.742277657347587e-08,
0.43301281332969666,
0.43301263451576233
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.24999980628490448,
"axref": "x",
"ay": 0.43301281332969666,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.25000011920928955,
"xref": "x",
"y": 0.43301263451576233,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"affe68c1-5d67-4294-b737-e1e206215920\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"affe68c1-5d67-4294-b737-e1e206215920\")) { Plotly.newPlot( \"affe68c1-5d67-4294-b737-e1e206215920\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.24999995529651642], \"y\": [0.0, -0.4330127239227295]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, -0.24999995529651642, 0.5, 0.24999980628490448, -0.25000011920928955], \"y\": [-4.371138828673793e-08, -0.4330127239227295, 8.742277657347586e-08, 0.43301281332969666, 0.43301263451576233]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999980628490448, \"axref\": \"x\", \"ay\": 0.43301281332969666, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25000011920928955, \"xref\": \"x\", \"y\": 0.43301263451576233, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('affe68c1-5d67-4294-b737-e1e206215920');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 7\n",
"outcome_azure_ad = c2.run_remote_attack(\"client\", \"Sharepoint\", \"ScanSharepointParentDirectory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "d5007cfe",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.373354Z",
"iopub.status.busy": "2024-08-05T18:49:28.372838Z",
"iopub.status.idle": "2024-08-05T18:49:28.405404Z",
"shell.execute_reply": "2024-08-05T18:49:28.403906Z"
},
"papermill": {
"duration": 0.075114,
"end_time": "2024-08-05T18:49:28.407727",
"exception": false,
"start_time": "2024-08-05T18:49:28.332613",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Infected node 'AzureResourceManager' from 'client' via HTTPS with credential 'ADPrincipalCreds'\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Owned message: FLAG: Shared credentials with database user - Obtained secrets hidden in Azure Managed Resources\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.2499999552965164,
-0.25000011920928955
],
"y": [
0,
-0.4330127239227295,
0.43301263451576233
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory",
"Sharepoint"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
-0.2499999552965164,
0.5,
0.24999980628490448
],
"y": [
-4.3711388286737935e-08,
-0.4330127239227295,
8.742277657347587e-08,
0.43301281332969666
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.24999980628490448,
"axref": "x",
"ay": 0.43301281332969666,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.25000011920928955,
"xref": "x",
"y": 0.43301263451576233,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.25000011920928955,
"xref": "x",
"y": 0.43301263451576233,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"db9846ce-d00f-4cab-9edd-7d8098e4fe3b\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"db9846ce-d00f-4cab-9edd-7d8098e4fe3b\")) { Plotly.newPlot( \"db9846ce-d00f-4cab-9edd-7d8098e4fe3b\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.24999995529651642, -0.25000011920928955], \"y\": [0.0, -0.4330127239227295, 0.43301263451576233]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, -0.24999995529651642, 0.5, 0.24999980628490448], \"y\": [-4.371138828673793e-08, -0.4330127239227295, 8.742277657347586e-08, 0.43301281332969666]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999980628490448, \"axref\": \"x\", \"ay\": 0.43301281332969666, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25000011920928955, \"xref\": \"x\", \"y\": 0.43301263451576233, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.25000011920928955, \"xref\": \"x\", \"y\": 0.43301263451576233, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('db9846ce-d00f-4cab-9edd-7d8098e4fe3b');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 8\n",
"azureVmInfo = c2.connect_and_infect(\"client\", \"AzureResourceManager\", \"HTTPS\", \"ADPrincipalCreds\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "90d861e6",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.510363Z",
"iopub.status.busy": "2024-08-05T18:49:28.509328Z",
"iopub.status.idle": "2024-08-05T18:49:28.538512Z",
"shell.execute_reply": "2024-08-05T18:49:28.537148Z"
},
"papermill": {
"duration": 0.086188,
"end_time": "2024-08-05T18:49:28.540744",
"exception": false,
"start_time": "2024-08-05T18:49:28.454556",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: AzureVM\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: Obtained Azure VM and public IP information\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.11126051843166351,
0.11126034706830978
],
"y": [
0,
-0.48746395111083984,
0.48746398091316223
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
-0.3117448091506958,
0.45048442482948303,
0.4504844546318054,
-0.3117447793483734
],
"y": [
-4.3711388286737935e-08,
-0.39091581106185913,
-0.21694187819957733,
0.21694181859493256,
0.3909158408641815
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3117448091506958,
"axref": "x",
"ay": -0.39091581106185913,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.4504844546318054,
"axref": "x",
"ay": 0.21694181859493256,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.11126034706830978,
"axref": "x",
"ay": 0.48746398091316223,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117447793483734,
"xref": "x",
"y": 0.3909158408641815,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"8b8b0832-b857-40a7-9936-6b6a2bd59977\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"8b8b0832-b857-40a7-9936-6b6a2bd59977\")) { Plotly.newPlot( \"8b8b0832-b857-40a7-9936-6b6a2bd59977\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.11126051843166351, 0.11126034706830978], \"y\": [0.0, -0.48746395111083984, 0.48746398091316223]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, -0.3117448091506958, 0.45048442482948303, 0.4504844546318054, -0.3117447793483734], \"y\": [-4.371138828673793e-08, -0.39091581106185913, -0.21694187819957733, 0.21694181859493256, 0.3909158408641815]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3117448091506958, \"axref\": \"x\", \"ay\": -0.39091581106185913, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.4504844546318054, \"axref\": \"x\", \"ay\": 0.21694181859493256, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.11126034706830978, \"axref\": \"x\", \"ay\": 0.48746398091316223, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117447793483734, \"xref\": \"x\", \"y\": 0.3909158408641815, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('8b8b0832-b857-40a7-9936-6b6a2bd59977');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2.run_remote_attack(\"client\", \"AzureResourceManager\", \"ListAzureResources\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "4b48bfc1",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:28.665385Z",
"iopub.status.busy": "2024-08-05T18:49:28.664590Z",
"iopub.status.idle": "2024-08-05T18:49:28.789981Z",
"shell.execute_reply": "2024-08-05T18:49:28.788644Z"
},
"papermill": {
"duration": 0.193337,
"end_time": "2024-08-05T18:49:28.792348",
"exception": false,
"start_time": "2024-08-05T18:49:28.599011",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: BLOCKED TRAFFIC: target node 'AzureVM' is blocking outgoing traffic on port 'SSH'\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Success=False\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
0.11126051843166351,
0.11126034706830978
],
"y": [
0,
-0.48746395111083984,
0.48746398091316223
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"Website",
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.5,
-0.3117448091506958,
0.45048442482948303,
0.4504844546318054,
-0.3117447793483734
],
"y": [
-4.3711388286737935e-08,
-0.39091581106185913,
-0.21694187819957733,
0.21694181859493256,
0.3909158408641815
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3117448091506958,
"axref": "x",
"ay": -0.39091581106185913,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.4504844546318054,
"axref": "x",
"ay": 0.21694181859493256,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.11126034706830978,
"axref": "x",
"ay": 0.48746398091316223,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117447793483734,
"xref": "x",
"y": 0.3909158408641815,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"059a6185-1f66-4a2c-87a1-d3baa775a3a0\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"059a6185-1f66-4a2c-87a1-d3baa775a3a0\")) { Plotly.newPlot( \"059a6185-1f66-4a2c-87a1-d3baa775a3a0\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, 0.11126051843166351, 0.11126034706830978], \"y\": [0.0, -0.48746395111083984, 0.48746398091316223]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"Website\", \"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.5, -0.3117448091506958, 0.45048442482948303, 0.4504844546318054, -0.3117447793483734], \"y\": [-4.371138828673793e-08, -0.39091581106185913, -0.21694187819957733, 0.21694181859493256, 0.3909158408641815]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3117448091506958, \"axref\": \"x\", \"ay\": -0.39091581106185913, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.4504844546318054, \"axref\": \"x\", \"ay\": 0.21694181859493256, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.11126034706830978, \"axref\": \"x\", \"ay\": 0.48746398091316223, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117447793483734, \"xref\": \"x\", \"y\": 0.3909158408641815, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('059a6185-1f66-4a2c-87a1-d3baa775a3a0');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 9 - CLIENT: Attempt to SSH into AzureVM from IP retrieved from Azure Resource Manager\n",
"should_fail = c2.connect_and_infect(\"client\", \"AzureVM\", \"SSH\", \"ReusedMySqlCred-web\")\n",
"print(\"Success=\" + str(should_fail))\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "4a4ed55c",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:29.021669Z",
"iopub.status.busy": "2024-08-05T18:49:29.021080Z",
"iopub.status.idle": "2024-08-05T18:49:29.050815Z",
"shell.execute_reply": "2024-08-05T18:49:29.049714Z"
},
"papermill": {
"duration": 0.17026,
"end_time": "2024-08-05T18:49:29.053115",
"exception": false,
"start_time": "2024-08-05T18:49:28.882855",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Infected node 'Website' from 'client' via SSH with credential 'ReusedMySqlCred-web'\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Owned message: FLAG: Login using insecure SSH user/password\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
0.11126051843166351,
0.11126034706830978
],
"y": [
0,
-4.3711388286737935e-08,
-0.48746395111083984,
0.48746398091316223
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.3117448091506958,
0.45048442482948303,
0.4504844546318054,
-0.3117447793483734
],
"y": [
-0.39091581106185913,
-0.21694187819957733,
0.21694181859493256,
0.3909158408641815
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.45048442482948303,
"axref": "x",
"ay": -0.21694187819957733,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3117448091506958,
"axref": "x",
"ay": -0.39091581106185913,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.4504844546318054,
"axref": "x",
"ay": 0.21694181859493256,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.11126034706830978,
"axref": "x",
"ay": 0.48746398091316223,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117447793483734,
"xref": "x",
"y": 0.3909158408641815,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3117448091506958,
"xref": "x",
"y": -0.39091581106185913,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126051843166351,
"xref": "x",
"y": -0.48746395111083984,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.45048442482948303,
"xref": "x",
"y": -0.21694187819957733,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.4504844546318054,
"xref": "x",
"y": 0.21694181859493256,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.11126034706830978,
"xref": "x",
"y": 0.48746398091316223,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"2026f2c8-f2c7-4161-920f-ea719fc9c561\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"2026f2c8-f2c7-4161-920f-ea719fc9c561\")) { Plotly.newPlot( \"2026f2c8-f2c7-4161-920f-ea719fc9c561\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, 0.11126051843166351, 0.11126034706830978], \"y\": [0.0, -4.371138828673793e-08, -0.48746395111083984, 0.48746398091316223]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.3117448091506958, 0.45048442482948303, 0.4504844546318054, -0.3117447793483734], \"y\": [-0.39091581106185913, -0.21694187819957733, 0.21694181859493256, 0.3909158408641815]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.45048442482948303, \"axref\": \"x\", \"ay\": -0.21694187819957733, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3117448091506958, \"axref\": \"x\", \"ay\": -0.39091581106185913, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.4504844546318054, \"axref\": \"x\", \"ay\": 0.21694181859493256, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.11126034706830978, \"axref\": \"x\", \"ay\": 0.48746398091316223, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117447793483734, \"xref\": \"x\", \"y\": 0.3909158408641815, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3117448091506958, \"xref\": \"x\", \"y\": -0.39091581106185913, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126051843166351, \"xref\": \"x\", \"y\": -0.48746395111083984, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.45048442482948303, \"xref\": \"x\", \"y\": -0.21694187819957733, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.4504844546318054, \"xref\": \"x\", \"y\": 0.21694181859493256, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.11126034706830978, \"xref\": \"x\", \"y\": 0.48746398091316223, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('2026f2c8-f2c7-4161-920f-ea719fc9c561');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 10\n",
"owned = c2.connect_and_infect(\"client\", \"Website\", \"SSH\", \"ReusedMySqlCred-web\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "46d4e80f",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:29.219855Z",
"iopub.status.busy": "2024-08-05T18:49:29.219148Z",
"iopub.status.idle": "2024-08-05T18:49:29.253310Z",
"shell.execute_reply": "2024-08-05T18:49:29.252488Z"
},
"papermill": {
"duration": 0.127269,
"end_time": "2024-08-05T18:49:29.255999",
"exception": false,
"start_time": "2024-08-05T18:49:29.128730",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: Website[user=monitor]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered credential: CachedCredential(node='Website[user=monitor]', port='SSH', credential='monitorBashCreds')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: FLAG: SSH history revealed credentials for the monitoring user (monitor)\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
5.962440319251527e-09,
0.3535533845424652
],
"y": [
0,
-4.3711388286737935e-08,
-0.5,
0.3535533845424652
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM",
"Website[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.3535533547401428,
0.35355350375175476,
0.5,
-1.6888311904494913e-07,
-0.35355329513549805
],
"y": [
-0.35355344414711,
-0.35355326533317566,
8.742277657347587e-08,
0.5,
0.35355350375175476
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.35355329513549805,
"xref": "x",
"y": 0.35355350375175476,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3535533547401428,
"axref": "x",
"ay": -0.35355344414711,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.3535533845424652,
"axref": "x",
"ay": 0.3535533845424652,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -1.6888311904494913e-07,
"xref": "x",
"y": 0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"07401f04-1af5-4930-b7ed-16177fd7de79\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"07401f04-1af5-4930-b7ed-16177fd7de79\")) { Plotly.newPlot( \"07401f04-1af5-4930-b7ed-16177fd7de79\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, 5.962440319251527e-09, 0.3535533845424652], \"y\": [0.0, -4.371138828673793e-08, -0.5, 0.3535533845424652]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.3535533547401428, 0.35355350375175476, 0.5, -1.6888311904494913e-07, -0.35355329513549805], \"y\": [-0.35355344414711, -0.35355326533317566, 8.742277657347586e-08, 0.5, 0.35355350375175476]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.35355329513549805, \"xref\": \"x\", \"y\": 0.35355350375175476, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": -0.35355344414711, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535533845424652, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.6888311904494913e-07, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('07401f04-1af5-4930-b7ed-16177fd7de79');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 11\n",
"outcome = c2.run_attack(\"Website\", \"CredScanBashHistory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "47aedc6f",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:29.424962Z",
"iopub.status.busy": "2024-08-05T18:49:29.423868Z",
"iopub.status.idle": "2024-08-05T18:49:29.437168Z",
"shell.execute_reply": "2024-08-05T18:49:29.435973Z"
},
"papermill": {
"duration": 0.094837,
"end_time": "2024-08-05T18:49:29.438767",
"exception": false,
"start_time": "2024-08-05T18:49:29.343930",
"status": "completed"
},
"scrolled": true,
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>status</th>\n",
" <th>properties</th>\n",
" <th>local_attacks</th>\n",
" <th>remote_attacks</th>\n",
" </tr>\n",
" <tr>\n",
" <th>id</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>client</th>\n",
" <td>owned</td>\n",
" <td>[]</td>\n",
" <td>[SearchEdgeHistory]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website</th>\n",
" <td>owned</td>\n",
" <td>[MySql, Ubuntu, nginx/1.10.3]</td>\n",
" <td>[CredScanBashHistory]</td>\n",
" <td>[ScanPageSource, ScanPageContent]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureStorage</th>\n",
" <td>owned</td>\n",
" <td>[CTFFLAG:LeakedCustomerData]</td>\n",
" <td>[]</td>\n",
" <td>[AccessDataWithSASToken]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureResourceManager</th>\n",
" <td>owned</td>\n",
" <td>[CTFFLAG:LeakedCustomerData2]</td>\n",
" <td>[]</td>\n",
" <td>[ListAzureResources]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>GitHubProject</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[CredScanGitHistory]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website.Directory</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[NavigateWebDirectory, NavigateWebDirectoryFur...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sharepoint</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[ScanSharepointParentDirectory]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureVM</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website[user=monitor]</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" status properties \\\n",
"id \n",
"client owned [] \n",
"Website owned [MySql, Ubuntu, nginx/1.10.3] \n",
"AzureStorage owned [CTFFLAG:LeakedCustomerData] \n",
"AzureResourceManager owned [CTFFLAG:LeakedCustomerData2] \n",
"GitHubProject discovered NaN \n",
"Website.Directory discovered NaN \n",
"Sharepoint discovered NaN \n",
"AzureVM discovered NaN \n",
"Website[user=monitor] discovered NaN \n",
"\n",
" local_attacks \\\n",
"id \n",
"client [SearchEdgeHistory] \n",
"Website [CredScanBashHistory] \n",
"AzureStorage [] \n",
"AzureResourceManager [] \n",
"GitHubProject None \n",
"Website.Directory None \n",
"Sharepoint None \n",
"AzureVM None \n",
"Website[user=monitor] None \n",
"\n",
" remote_attacks \n",
"id \n",
"client [] \n",
"Website [ScanPageSource, ScanPageContent] \n",
"AzureStorage [AccessDataWithSASToken] \n",
"AzureResourceManager [ListAzureResources] \n",
"GitHubProject [CredScanGitHistory] \n",
"Website.Directory [NavigateWebDirectory, NavigateWebDirectoryFur... \n",
"Sharepoint [ScanSharepointParentDirectory] \n",
"AzureVM [] \n",
"Website[user=monitor] [] "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2.print_all_attacks()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "def8b48b",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:29.599181Z",
"iopub.status.busy": "2024-08-05T18:49:29.598441Z",
"iopub.status.idle": "2024-08-05T18:49:29.628712Z",
"shell.execute_reply": "2024-08-05T18:49:29.627484Z"
},
"papermill": {
"duration": 0.117211,
"end_time": "2024-08-05T18:49:29.631357",
"exception": false,
"start_time": "2024-08-05T18:49:29.514146",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: BLOCKED TRAFFIC: target node 'Website[user=monitor]' is blocking outgoing traffic on port 'sudo'\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
5.962440319251527e-09,
0.3535533845424652
],
"y": [
0,
-4.3711388286737935e-08,
-0.5,
0.3535533845424652
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM",
"Website[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.3535533547401428,
0.35355350375175476,
0.5,
-1.6888311904494913e-07,
-0.35355329513549805
],
"y": [
-0.35355344414711,
-0.35355326533317566,
8.742277657347587e-08,
0.5,
0.35355350375175476
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.35355329513549805,
"xref": "x",
"y": 0.35355350375175476,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3535533547401428,
"axref": "x",
"ay": -0.35355344414711,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.3535533845424652,
"axref": "x",
"ay": 0.3535533845424652,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -1.6888311904494913e-07,
"xref": "x",
"y": 0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"cd588d5f-a63f-477e-ba60-eacdeecbb997\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"cd588d5f-a63f-477e-ba60-eacdeecbb997\")) { Plotly.newPlot( \"cd588d5f-a63f-477e-ba60-eacdeecbb997\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, 5.962440319251527e-09, 0.3535533845424652], \"y\": [0.0, -4.371138828673793e-08, -0.5, 0.3535533845424652]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.3535533547401428, 0.35355350375175476, 0.5, -1.6888311904494913e-07, -0.35355329513549805], \"y\": [-0.35355344414711, -0.35355326533317566, 8.742277657347586e-08, 0.5, 0.35355350375175476]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.35355329513549805, \"xref\": \"x\", \"y\": 0.35355350375175476, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": -0.35355344414711, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535533845424652, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.6888311904494913e-07, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('cd588d5f-a63f-477e-ba60-eacdeecbb997');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 12\n",
"should_fail = c2.connect_and_infect(\"Website\", \"Website[user=monitor]\", \"sudo\", \"monitorBashCreds\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "884ee468",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:29.808243Z",
"iopub.status.busy": "2024-08-05T18:49:29.807364Z",
"iopub.status.idle": "2024-08-05T18:49:29.833408Z",
"shell.execute_reply": "2024-08-05T18:49:29.831828Z"
},
"papermill": {
"duration": 0.112087,
"end_time": "2024-08-05T18:49:29.835606",
"exception": false,
"start_time": "2024-08-05T18:49:29.723519",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: BLOCKED TRAFFIC: target node 'Website[user=monitor]' is blocking outgoing traffic on port 'SSH'\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
5.962440319251527e-09,
0.3535533845424652
],
"y": [
0,
-4.3711388286737935e-08,
-0.5,
0.3535533845424652
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM",
"Website[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.3535533547401428,
0.35355350375175476,
0.5,
-1.6888311904494913e-07,
-0.35355329513549805
],
"y": [
-0.35355344414711,
-0.35355326533317566,
8.742277657347587e-08,
0.5,
0.35355350375175476
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.35355329513549805,
"xref": "x",
"y": 0.35355350375175476,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3535533547401428,
"axref": "x",
"ay": -0.35355344414711,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.3535533845424652,
"axref": "x",
"ay": 0.3535533845424652,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -1.6888311904494913e-07,
"xref": "x",
"y": 0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"17b66a8a-c5b2-4e39-91b5-aa97c4e4508e\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"17b66a8a-c5b2-4e39-91b5-aa97c4e4508e\")) { Plotly.newPlot( \"17b66a8a-c5b2-4e39-91b5-aa97c4e4508e\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, 5.962440319251527e-09, 0.3535533845424652], \"y\": [0.0, -4.371138828673793e-08, -0.5, 0.3535533845424652]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.3535533547401428, 0.35355350375175476, 0.5, -1.6888311904494913e-07, -0.35355329513549805], \"y\": [-0.35355344414711, -0.35355326533317566, 8.742277657347586e-08, 0.5, 0.35355350375175476]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.35355329513549805, \"xref\": \"x\", \"y\": 0.35355350375175476, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": -0.35355344414711, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535533845424652, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.6888311904494913e-07, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('17b66a8a-c5b2-4e39-91b5-aa97c4e4508e');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# 13\n",
"should_fail = c2.connect_and_infect(\"client\", \"Website[user=monitor]\", \"SSH\", \"monitorBashCreds\")\n",
"dbg.plot_discovered_network()\n",
"should_fail"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "e15d4c2d",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:30.012701Z",
"iopub.status.busy": "2024-08-05T18:49:30.011841Z",
"iopub.status.idle": "2024-08-05T18:49:30.039018Z",
"shell.execute_reply": "2024-08-05T18:49:30.037994Z"
},
"papermill": {
"duration": 0.122824,
"end_time": "2024-08-05T18:49:30.040768",
"exception": false,
"start_time": "2024-08-05T18:49:29.917944",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Infected node 'Website[user=monitor]' from 'Website' via su with credential 'monitorBashCreds'\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Owned message: FLAG User escalation by stealing credentials from bash history\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager",
"Website[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
5.962440319251527e-09,
0.3535533845424652,
-0.35355329513549805
],
"y": [
0,
-4.3711388286737935e-08,
-0.5,
0.3535533845424652,
0.35355350375175476
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.3535533547401428,
0.35355350375175476,
0.5,
-1.6888311904494913e-07
],
"y": [
-0.35355344414711,
-0.35355326533317566,
8.742277657347587e-08,
0.5
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.35355329513549805,
"xref": "x",
"y": 0.35355350375175476,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.35355350375175476,
"axref": "x",
"ay": -0.35355326533317566,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.3535533547401428,
"axref": "x",
"ay": -0.35355344414711,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.5,
"axref": "x",
"ay": 8.742277657347587e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.3535533845424652,
"axref": "x",
"ay": 0.3535533845424652,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -1.6888311904494913e-07,
"xref": "x",
"y": 0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.3535533547401428,
"xref": "x",
"y": -0.35355344414711,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 5.962440319251527e-09,
"xref": "x",
"y": -0.5,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.35355350375175476,
"xref": "x",
"y": -0.35355326533317566,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.5,
"xref": "x",
"y": 8.742277657347587e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.3535533845424652,
"xref": "x",
"y": 0.3535533845424652,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"139fd46b-be3a-4116-bbe3-bfb971254f13\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"139fd46b-be3a-4116-bbe3-bfb971254f13\")) { Plotly.newPlot( \"139fd46b-be3a-4116-bbe3-bfb971254f13\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, 5.962440319251527e-09, 0.3535533845424652, -0.35355329513549805], \"y\": [0.0, -4.371138828673793e-08, -0.5, 0.3535533845424652, 0.35355350375175476]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.3535533547401428, 0.35355350375175476, 0.5, -1.6888311904494913e-07], \"y\": [-0.35355344414711, -0.35355326533317566, 8.742277657347586e-08, 0.5]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.35355329513549805, \"xref\": \"x\", \"y\": 0.35355350375175476, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.35355350375175476, \"axref\": \"x\", \"ay\": -0.35355326533317566, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.3535533547401428, \"axref\": \"x\", \"ay\": -0.35355344414711, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.5, \"axref\": \"x\", \"ay\": 8.742277657347586e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.3535533845424652, \"axref\": \"x\", \"ay\": 0.3535533845424652, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -1.6888311904494913e-07, \"xref\": \"x\", \"y\": 0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.3535533547401428, \"xref\": \"x\", \"y\": -0.35355344414711, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 5.962440319251527e-09, \"xref\": \"x\", \"y\": -0.5, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.35355350375175476, \"xref\": \"x\", \"y\": -0.35355326533317566, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.5, \"xref\": \"x\", \"y\": 8.742277657347586e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.3535533845424652, \"xref\": \"x\", \"y\": 0.3535533845424652, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('139fd46b-be3a-4116-bbe3-bfb971254f13');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 14\n",
"flag = c2.connect_and_infect(\"Website\", \"Website[user=monitor]\", \"su\", \"monitorBashCreds\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "c79373f3",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:30.297575Z",
"iopub.status.busy": "2024-08-05T18:49:30.296662Z",
"iopub.status.idle": "2024-08-05T18:49:30.324812Z",
"shell.execute_reply": "2024-08-05T18:49:30.323569Z"
},
"papermill": {
"duration": 0.182082,
"end_time": "2024-08-05T18:49:30.326545",
"exception": false,
"start_time": "2024-08-05T18:49:30.144463",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered node: AzureResourceManager[user=monitor]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: discovered credential: CachedCredential(node='AzureResourceManager[user=monitor]', port='HTTPS', credential='azuread_user_credentials')\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: GOT REWARD: SSH: cat ~/azurecreds.txt (running as monitor) revealed Azure user credential!\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager",
"Website[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
-0.08682406693696976,
0.46984627842903137,
-0.08682423830032349
],
"y": [
0,
-4.3711388286737935e-08,
-0.49240389466285706,
0.1710101217031479,
0.4924038350582123
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM",
"AzureResourceManager[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.38302215933799744,
0.2499999552965164,
0.46984627842903137,
0.24999980628490448,
-0.383022278547287
],
"y": [
-0.3213938772678375,
-0.4330127239227295,
-0.17101018130779266,
0.43301281332969666,
0.321393758058548
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.38302215933799744,
"xref": "x",
"y": -0.3213938772678375,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682423830032349,
"xref": "x",
"y": 0.4924038350582123,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": -0.17101018130779266,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.08682423830032349,
"axref": "x",
"ay": 0.4924038350582123,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.383022278547287,
"xref": "x",
"y": 0.321393758058548,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.38302215933799744,
"axref": "x",
"ay": -0.3213938772678375,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682406693696976,
"xref": "x",
"y": -0.49240389466285706,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.46984627842903137,
"axref": "x",
"ay": -0.17101018130779266,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": 0.1710101217031479,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.46984627842903137,
"axref": "x",
"ay": 0.1710101217031479,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.38302215933799744,
"xref": "x",
"y": -0.3213938772678375,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682406693696976,
"xref": "x",
"y": -0.49240389466285706,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": -0.17101018130779266,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": 0.1710101217031479,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"0a646c61-7a11-4fa9-950e-9f28593db2aa\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"0a646c61-7a11-4fa9-950e-9f28593db2aa\")) { Plotly.newPlot( \"0a646c61-7a11-4fa9-950e-9f28593db2aa\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, -0.08682406693696976, 0.46984627842903137, -0.08682423830032349], \"y\": [0.0, -4.371138828673793e-08, -0.49240389466285706, 0.1710101217031479, 0.4924038350582123]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\", \"AzureResourceManager[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.38302215933799744, 0.24999995529651642, 0.46984627842903137, 0.24999980628490448, -0.383022278547287], \"y\": [-0.3213938772678375, -0.4330127239227295, -0.17101018130779266, 0.43301281332969666, 0.321393758058548]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.38302215933799744, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682423830032349, \"xref\": \"x\", \"y\": 0.4924038350582123, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": -0.17101018130779266, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.08682423830032349, \"axref\": \"x\", \"ay\": 0.4924038350582123, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.383022278547287, \"xref\": \"x\", \"y\": 0.321393758058548, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.38302215933799744, \"axref\": \"x\", \"ay\": -0.3213938772678375, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682406693696976, \"xref\": \"x\", \"y\": -0.49240389466285706, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.46984627842903137, \"axref\": \"x\", \"ay\": -0.17101018130779266, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101217031479, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.46984627842903137, \"axref\": \"x\", \"ay\": 0.1710101217031479, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.38302215933799744, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682406693696976, \"xref\": \"x\", \"y\": -0.49240389466285706, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": -0.17101018130779266, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101217031479, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('0a646c61-7a11-4fa9-950e-9f28593db2aa');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 15\n",
"outcome = c2.run_attack(\"Website[user=monitor]\", \"CredScan-HomeDirectory\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "439d2a46",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:30.505029Z",
"iopub.status.busy": "2024-08-05T18:49:30.504616Z",
"iopub.status.idle": "2024-08-05T18:49:30.538208Z",
"shell.execute_reply": "2024-08-05T18:49:30.536689Z"
},
"papermill": {
"duration": 0.132276,
"end_time": "2024-08-05T18:49:30.540443",
"exception": false,
"start_time": "2024-08-05T18:49:30.408167",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Infected node 'AzureResourceManager[user=monitor]' from 'client' via HTTPS with credential 'azuread_user_credentials'\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"INFO: Owned message: More secrets stolen when logged as interactive `monitor` user in Azure with `az`\n"
]
},
{
"data": {
"application/vnd.plotly.v1+json": {
"config": {
"plotlyServerURL": "https://plot.ly"
},
"data": [
{
"line": {
"color": "gray"
},
"mode": "lines",
"name": "KNOWS",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "orange"
},
"mode": "lines",
"name": "REMOTE_EXPLOIT",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"line": {
"color": "red"
},
"mode": "lines",
"name": "LATERAL_MOVE",
"type": "scatter",
"x": [
0
],
"y": [
0
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#D32F2E",
"line": {
"color": "rgb(255,0,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "owned",
"text": [
"client",
"Website",
"AzureStorage",
"AzureResourceManager",
"Website[user=monitor]",
"AzureResourceManager[user=monitor]"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
0,
-0.5,
-0.08682406693696976,
0.46984627842903137,
-0.08682423830032349,
-0.383022278547287
],
"y": [
0,
-4.3711388286737935e-08,
-0.49240389466285706,
0.1710101217031479,
0.4924038350582123,
0.321393758058548
]
},
{
"hoverinfo": "text",
"marker": {
"color": "#0e9d00",
"line": {
"color": "rgb(0,255,0)",
"width": 8
},
"size": 5,
"symbol": "circle-dot"
},
"mode": "markers+text",
"name": "discovered",
"text": [
"GitHubProject",
"Website.Directory",
"Sharepoint",
"AzureVM"
],
"textposition": "bottom center",
"type": "scatter",
"x": [
-0.38302215933799744,
0.2499999552965164,
0.46984627842903137,
0.24999980628490448
],
"y": [
-0.3213938772678375,
-0.4330127239227295,
-0.17101018130779266,
0.43301281332969666
]
}
],
"layout": {
"annotations": [
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.38302215933799744,
"xref": "x",
"y": -0.3213938772678375,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.5,
"axref": "x",
"ay": -4.3711388286737935e-08,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682423830032349,
"xref": "x",
"y": 0.4924038350582123,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.2499999552965164,
"axref": "x",
"ay": -0.4330127239227295,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": -0.17101018130779266,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.08682423830032349,
"axref": "x",
"ay": 0.4924038350582123,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.383022278547287,
"xref": "x",
"y": 0.321393758058548,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": -0.38302215933799744,
"axref": "x",
"ay": -0.3213938772678375,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682406693696976,
"xref": "x",
"y": -0.49240389466285706,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.46984627842903137,
"axref": "x",
"ay": -0.17101018130779266,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": 0.1710101217031479,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "gray",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0.46984627842903137,
"axref": "x",
"ay": 0.1710101217031479,
"ayref": "y",
"hovertext": "KNOWS",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.24999980628490448,
"xref": "x",
"y": 0.43301281332969666,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.5,
"xref": "x",
"y": -4.3711388286737935e-08,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.38302215933799744,
"xref": "x",
"y": -0.3213938772678375,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.08682406693696976,
"xref": "x",
"y": -0.49240389466285706,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.2499999552965164,
"xref": "x",
"y": -0.4330127239227295,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "orange",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "REMOTE_EXPLOIT",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": -0.17101018130779266,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": 0.46984627842903137,
"xref": "x",
"y": 0.1710101217031479,
"yref": "y"
},
{
"align": "center",
"arrowcolor": "red",
"arrowhead": 1,
"arrowsize": 1,
"arrowwidth": 1,
"ax": 0,
"axref": "x",
"ay": 0,
"ayref": "y",
"hovertext": "LATERAL_MOVE",
"opacity": 1,
"showarrow": true,
"standoff": 10,
"startstandoff": 10,
"x": -0.383022278547287,
"xref": "x",
"y": 0.321393758058548,
"yref": "y"
}
],
"autosize": false,
"font": {
"size": 10
},
"height": 400,
"hovermode": "closest",
"margin": {
"b": 15,
"l": 2,
"r": 2,
"t": 35
},
"showlegend": true,
"template": {
"data": {
"bar": [
{
"error_x": {
"color": "#2a3f5f"
},
"error_y": {
"color": "#2a3f5f"
},
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "bar"
}
],
"barpolar": [
{
"marker": {
"line": {
"color": "#E5ECF6",
"width": 0.5
}
},
"type": "barpolar"
}
],
"carpet": [
{
"aaxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"baxis": {
"endlinecolor": "#2a3f5f",
"gridcolor": "white",
"linecolor": "white",
"minorgridcolor": "white",
"startlinecolor": "#2a3f5f"
},
"type": "carpet"
}
],
"choropleth": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "choropleth"
}
],
"contour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "contour"
}
],
"contourcarpet": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "contourcarpet"
}
],
"heatmap": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmap"
}
],
"heatmapgl": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "heatmapgl"
}
],
"histogram": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "histogram"
}
],
"histogram2d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2d"
}
],
"histogram2dcontour": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "histogram2dcontour"
}
],
"mesh3d": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"type": "mesh3d"
}
],
"parcoords": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "parcoords"
}
],
"pie": [
{
"automargin": true,
"type": "pie"
}
],
"scatter": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter"
}
],
"scatter3d": [
{
"line": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatter3d"
}
],
"scattercarpet": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattercarpet"
}
],
"scattergeo": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergeo"
}
],
"scattergl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattergl"
}
],
"scattermapbox": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scattermapbox"
}
],
"scatterpolar": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolar"
}
],
"scatterpolargl": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterpolargl"
}
],
"scatterternary": [
{
"marker": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"type": "scatterternary"
}
],
"surface": [
{
"colorbar": {
"outlinewidth": 0,
"ticks": ""
},
"colorscale": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"type": "surface"
}
],
"table": [
{
"cells": {
"fill": {
"color": "#EBF0F8"
},
"line": {
"color": "white"
}
},
"header": {
"fill": {
"color": "#C8D4E3"
},
"line": {
"color": "white"
}
},
"type": "table"
}
]
},
"layout": {
"annotationdefaults": {
"arrowcolor": "#2a3f5f",
"arrowhead": 0,
"arrowwidth": 1
},
"coloraxis": {
"colorbar": {
"outlinewidth": 0,
"ticks": ""
}
},
"colorscale": {
"diverging": [
[
0,
"#8e0152"
],
[
0.1,
"#c51b7d"
],
[
0.2,
"#de77ae"
],
[
0.3,
"#f1b6da"
],
[
0.4,
"#fde0ef"
],
[
0.5,
"#f7f7f7"
],
[
0.6,
"#e6f5d0"
],
[
0.7,
"#b8e186"
],
[
0.8,
"#7fbc41"
],
[
0.9,
"#4d9221"
],
[
1,
"#276419"
]
],
"sequential": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
],
"sequentialminus": [
[
0,
"#0d0887"
],
[
0.1111111111111111,
"#46039f"
],
[
0.2222222222222222,
"#7201a8"
],
[
0.3333333333333333,
"#9c179e"
],
[
0.4444444444444444,
"#bd3786"
],
[
0.5555555555555556,
"#d8576b"
],
[
0.6666666666666666,
"#ed7953"
],
[
0.7777777777777778,
"#fb9f3a"
],
[
0.8888888888888888,
"#fdca26"
],
[
1,
"#f0f921"
]
]
},
"colorway": [
"#636efa",
"#EF553B",
"#00cc96",
"#ab63fa",
"#FFA15A",
"#19d3f3",
"#FF6692",
"#B6E880",
"#FF97FF",
"#FECB52"
],
"font": {
"color": "#2a3f5f"
},
"geo": {
"bgcolor": "white",
"lakecolor": "white",
"landcolor": "#E5ECF6",
"showlakes": true,
"showland": true,
"subunitcolor": "white"
},
"hoverlabel": {
"align": "left"
},
"hovermode": "closest",
"mapbox": {
"style": "light"
},
"paper_bgcolor": "white",
"plot_bgcolor": "#E5ECF6",
"polar": {
"angularaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"radialaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"scene": {
"xaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"yaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
},
"zaxis": {
"backgroundcolor": "#E5ECF6",
"gridcolor": "white",
"gridwidth": 2,
"linecolor": "white",
"showbackground": true,
"ticks": "",
"zerolinecolor": "white"
}
},
"shapedefaults": {
"line": {
"color": "#2a3f5f"
}
},
"ternary": {
"aaxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"baxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
},
"bgcolor": "#E5ECF6",
"caxis": {
"gridcolor": "white",
"linecolor": "white",
"ticks": ""
}
},
"title": {
"x": 0.05
},
"xaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
},
"yaxis": {
"automargin": true,
"gridcolor": "white",
"linecolor": "white",
"ticks": "",
"title": {
"standoff": 15
},
"zerolinecolor": "white",
"zerolinewidth": 2
}
}
},
"title": {
"text": "CyberBattle simulation"
},
"width": 800
}
},
"text/html": [
"<div> <div id=\"4362da98-7d1e-4f9f-bd65-855c4480e8c9\" class=\"plotly-graph-div\" style=\"height:400px; width:800px;\"></div> <script type=\"text/javascript\"> require([\"plotly\"], function(Plotly) { window.PLOTLYENV=window.PLOTLYENV || {}; if (document.getElementById(\"4362da98-7d1e-4f9f-bd65-855c4480e8c9\")) { Plotly.newPlot( \"4362da98-7d1e-4f9f-bd65-855c4480e8c9\", [{\"line\": {\"color\": \"gray\"}, \"mode\": \"lines\", \"name\": \"KNOWS\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"orange\"}, \"mode\": \"lines\", \"name\": \"REMOTE_EXPLOIT\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"line\": {\"color\": \"red\"}, \"mode\": \"lines\", \"name\": \"LATERAL_MOVE\", \"type\": \"scatter\", \"x\": [0], \"y\": [0]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#D32F2E\", \"line\": {\"color\": \"rgb(255,0,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"owned\", \"text\": [\"client\", \"Website\", \"AzureStorage\", \"AzureResourceManager\", \"Website[user=monitor]\", \"AzureResourceManager[user=monitor]\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [0.0, -0.5, -0.08682406693696976, 0.46984627842903137, -0.08682423830032349, -0.383022278547287], \"y\": [0.0, -4.371138828673793e-08, -0.49240389466285706, 0.1710101217031479, 0.4924038350582123, 0.321393758058548]}, {\"hoverinfo\": \"text\", \"marker\": {\"color\": \"#0e9d00\", \"line\": {\"color\": \"rgb(0,255,0)\", \"width\": 8}, \"size\": 5, \"symbol\": \"circle-dot\"}, \"mode\": \"markers+text\", \"name\": \"discovered\", \"text\": [\"GitHubProject\", \"Website.Directory\", \"Sharepoint\", \"AzureVM\"], \"textposition\": \"bottom center\", \"type\": \"scatter\", \"x\": [-0.38302215933799744, 0.24999995529651642, 0.46984627842903137, 0.24999980628490448], \"y\": [-0.3213938772678375, -0.4330127239227295, -0.17101018130779266, 0.43301281332969666]}], {\"annotations\": [{\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.38302215933799744, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.5, \"axref\": \"x\", \"ay\": -4.371138828673793e-08, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682423830032349, \"xref\": \"x\", \"y\": 0.4924038350582123, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.24999995529651642, \"axref\": \"x\", \"ay\": -0.4330127239227295, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": -0.17101018130779266, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.08682423830032349, \"axref\": \"x\", \"ay\": 0.4924038350582123, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.383022278547287, \"xref\": \"x\", \"y\": 0.321393758058548, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": -0.38302215933799744, \"axref\": \"x\", \"ay\": -0.3213938772678375, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682406693696976, \"xref\": \"x\", \"y\": -0.49240389466285706, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.46984627842903137, \"axref\": \"x\", \"ay\": -0.17101018130779266, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101217031479, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"gray\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.46984627842903137, \"axref\": \"x\", \"ay\": 0.1710101217031479, \"ayref\": \"y\", \"hovertext\": \"KNOWS\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999980628490448, \"xref\": \"x\", \"y\": 0.43301281332969666, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.5, \"xref\": \"x\", \"y\": -4.371138828673793e-08, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.38302215933799744, \"xref\": \"x\", \"y\": -0.3213938772678375, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.08682406693696976, \"xref\": \"x\", \"y\": -0.49240389466285706, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.24999995529651642, \"xref\": \"x\", \"y\": -0.4330127239227295, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"orange\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"REMOTE_EXPLOIT\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": -0.17101018130779266, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": 0.46984627842903137, \"xref\": \"x\", \"y\": 0.1710101217031479, \"yref\": \"y\"}, {\"align\": \"center\", \"arrowcolor\": \"red\", \"arrowhead\": 1, \"arrowsize\": 1, \"arrowwidth\": 1, \"ax\": 0.0, \"axref\": \"x\", \"ay\": 0.0, \"ayref\": \"y\", \"hovertext\": \"LATERAL_MOVE\", \"opacity\": 1, \"showarrow\": true, \"standoff\": 10, \"startstandoff\": 10, \"x\": -0.383022278547287, \"xref\": \"x\", \"y\": 0.321393758058548, \"yref\": \"y\"}], \"autosize\": false, \"font\": {\"size\": 10}, \"height\": 400, \"hovermode\": \"closest\", \"margin\": {\"b\": 15, \"l\": 2, \"r\": 2, \"t\": 35}, \"showlegend\": true, \"template\": {\"data\": {\"bar\": [{\"error_x\": {\"color\": \"#2a3f5f\"}, \"error_y\": {\"color\": \"#2a3f5f\"}, \"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"bar\"}], \"barpolar\": [{\"marker\": {\"line\": {\"color\": \"#E5ECF6\", \"width\": 0.5}}, \"type\": \"barpolar\"}], \"carpet\": [{\"aaxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"baxis\": {\"endlinecolor\": \"#2a3f5f\", \"gridcolor\": \"white\", \"linecolor\": \"white\", \"minorgridcolor\": \"white\", \"startlinecolor\": \"#2a3f5f\"}, \"type\": \"carpet\"}], \"choropleth\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"choropleth\"}], \"contour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"contour\"}], \"contourcarpet\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"contourcarpet\"}], \"heatmap\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmap\"}], \"heatmapgl\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"heatmapgl\"}], \"histogram\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"histogram\"}], \"histogram2d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2d\"}], \"histogram2dcontour\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"histogram2dcontour\"}], \"mesh3d\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"type\": \"mesh3d\"}], \"parcoords\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"parcoords\"}], \"pie\": [{\"automargin\": true, \"type\": \"pie\"}], \"scatter\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter\"}], \"scatter3d\": [{\"line\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatter3d\"}], \"scattercarpet\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattercarpet\"}], \"scattergeo\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergeo\"}], \"scattergl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattergl\"}], \"scattermapbox\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scattermapbox\"}], \"scatterpolar\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolar\"}], \"scatterpolargl\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterpolargl\"}], \"scatterternary\": [{\"marker\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"type\": \"scatterternary\"}], \"surface\": [{\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}, \"colorscale\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"type\": \"surface\"}], \"table\": [{\"cells\": {\"fill\": {\"color\": \"#EBF0F8\"}, \"line\": {\"color\": \"white\"}}, \"header\": {\"fill\": {\"color\": \"#C8D4E3\"}, \"line\": {\"color\": \"white\"}}, \"type\": \"table\"}]}, \"layout\": {\"annotationdefaults\": {\"arrowcolor\": \"#2a3f5f\", \"arrowhead\": 0, \"arrowwidth\": 1}, \"coloraxis\": {\"colorbar\": {\"outlinewidth\": 0, \"ticks\": \"\"}}, \"colorscale\": {\"diverging\": [[0, \"#8e0152\"], [0.1, \"#c51b7d\"], [0.2, \"#de77ae\"], [0.3, \"#f1b6da\"], [0.4, \"#fde0ef\"], [0.5, \"#f7f7f7\"], [0.6, \"#e6f5d0\"], [0.7, \"#b8e186\"], [0.8, \"#7fbc41\"], [0.9, \"#4d9221\"], [1, \"#276419\"]], \"sequential\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]], \"sequentialminus\": [[0.0, \"#0d0887\"], [0.1111111111111111, \"#46039f\"], [0.2222222222222222, \"#7201a8\"], [0.3333333333333333, \"#9c179e\"], [0.4444444444444444, \"#bd3786\"], [0.5555555555555556, \"#d8576b\"], [0.6666666666666666, \"#ed7953\"], [0.7777777777777778, \"#fb9f3a\"], [0.8888888888888888, \"#fdca26\"], [1.0, \"#f0f921\"]]}, \"colorway\": [\"#636efa\", \"#EF553B\", \"#00cc96\", \"#ab63fa\", \"#FFA15A\", \"#19d3f3\", \"#FF6692\", \"#B6E880\", \"#FF97FF\", \"#FECB52\"], \"font\": {\"color\": \"#2a3f5f\"}, \"geo\": {\"bgcolor\": \"white\", \"lakecolor\": \"white\", \"landcolor\": \"#E5ECF6\", \"showlakes\": true, \"showland\": true, \"subunitcolor\": \"white\"}, \"hoverlabel\": {\"align\": \"left\"}, \"hovermode\": \"closest\", \"mapbox\": {\"style\": \"light\"}, \"paper_bgcolor\": \"white\", \"plot_bgcolor\": \"#E5ECF6\", \"polar\": {\"angularaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"radialaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"scene\": {\"xaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"yaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}, \"zaxis\": {\"backgroundcolor\": \"#E5ECF6\", \"gridcolor\": \"white\", \"gridwidth\": 2, \"linecolor\": \"white\", \"showbackground\": true, \"ticks\": \"\", \"zerolinecolor\": \"white\"}}, \"shapedefaults\": {\"line\": {\"color\": \"#2a3f5f\"}}, \"ternary\": {\"aaxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"baxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}, \"bgcolor\": \"#E5ECF6\", \"caxis\": {\"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\"}}, \"title\": {\"x\": 0.05}, \"xaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}, \"yaxis\": {\"automargin\": true, \"gridcolor\": \"white\", \"linecolor\": \"white\", \"ticks\": \"\", \"title\": {\"standoff\": 15}, \"zerolinecolor\": \"white\", \"zerolinewidth\": 2}}}, \"title\": {\"text\": \"CyberBattle simulation\"}, \"width\": 800}, {\"responsive\": true} ).then(function(){\n",
" \n",
"var gd = document.getElementById('4362da98-7d1e-4f9f-bd65-855c4480e8c9');\n",
"var x = new MutationObserver(function (mutations, observer) {{\n",
" var display = window.getComputedStyle(gd).display;\n",
" if (!display || display === 'none') {{\n",
" console.log([gd, 'removed!']);\n",
" Plotly.purge(gd);\n",
" observer.disconnect();\n",
" }}\n",
"}});\n",
"\n",
"// Listen for the removal of the full notebook cells\n",
"var notebookContainer = gd.closest('#notebook-container');\n",
"if (notebookContainer) {{\n",
" x.observe(notebookContainer, {childList: true});\n",
"}}\n",
"\n",
"// Listen for the clearing of the current output cell\n",
"var outputEl = gd.closest('.output');\n",
"if (outputEl) {{\n",
" x.observe(outputEl, {childList: true});\n",
"}}\n",
"\n",
" }) }; }); </script> </div>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# 16\n",
"secrets = c2.connect_and_infect(\"client\", \"AzureResourceManager[user=monitor]\", \"HTTPS\", \"azuread_user_credentials\")\n",
"dbg.plot_discovered_network()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "766373ac",
"metadata": {
"execution": {
"iopub.execute_input": "2024-08-05T18:49:30.752872Z",
"iopub.status.busy": "2024-08-05T18:49:30.751350Z",
"iopub.status.idle": "2024-08-05T18:49:30.771992Z",
"shell.execute_reply": "2024-08-05T18:49:30.770758Z"
},
"papermill": {
"duration": 0.114768,
"end_time": "2024-08-05T18:49:30.774396",
"exception": false,
"start_time": "2024-08-05T18:49:30.659628",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>status</th>\n",
" <th>properties</th>\n",
" <th>local_attacks</th>\n",
" <th>remote_attacks</th>\n",
" </tr>\n",
" <tr>\n",
" <th>id</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>client</th>\n",
" <td>owned</td>\n",
" <td>[]</td>\n",
" <td>[SearchEdgeHistory]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website</th>\n",
" <td>owned</td>\n",
" <td>[MySql, Ubuntu, nginx/1.10.3]</td>\n",
" <td>[CredScanBashHistory]</td>\n",
" <td>[ScanPageSource, ScanPageContent]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureStorage</th>\n",
" <td>owned</td>\n",
" <td>[CTFFLAG:LeakedCustomerData]</td>\n",
" <td>[]</td>\n",
" <td>[AccessDataWithSASToken]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureResourceManager</th>\n",
" <td>owned</td>\n",
" <td>[CTFFLAG:LeakedCustomerData2]</td>\n",
" <td>[]</td>\n",
" <td>[ListAzureResources]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website[user=monitor]</th>\n",
" <td>owned</td>\n",
" <td>[MySql, Ubuntu, nginx/1.10.3]</td>\n",
" <td>[CredScan-HomeDirectory]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureResourceManager[user=monitor]</th>\n",
" <td>owned</td>\n",
" <td>[]</td>\n",
" <td>[]</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>GitHubProject</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[CredScanGitHistory]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Website.Directory</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[NavigateWebDirectory, NavigateWebDirectoryFur...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Sharepoint</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[ScanSharepointParentDirectory]</td>\n",
" </tr>\n",
" <tr>\n",
" <th>AzureVM</th>\n",
" <td>discovered</td>\n",
" <td>NaN</td>\n",
" <td>None</td>\n",
" <td>[]</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" status properties \\\n",
"id \n",
"client owned [] \n",
"Website owned [MySql, Ubuntu, nginx/1.10.3] \n",
"AzureStorage owned [CTFFLAG:LeakedCustomerData] \n",
"AzureResourceManager owned [CTFFLAG:LeakedCustomerData2] \n",
"Website[user=monitor] owned [MySql, Ubuntu, nginx/1.10.3] \n",
"AzureResourceManager[user=monitor] owned [] \n",
"GitHubProject discovered NaN \n",
"Website.Directory discovered NaN \n",
"Sharepoint discovered NaN \n",
"AzureVM discovered NaN \n",
"\n",
" local_attacks \\\n",
"id \n",
"client [SearchEdgeHistory] \n",
"Website [CredScanBashHistory] \n",
"AzureStorage [] \n",
"AzureResourceManager [] \n",
"Website[user=monitor] [CredScan-HomeDirectory] \n",
"AzureResourceManager[user=monitor] [] \n",
"GitHubProject None \n",
"Website.Directory None \n",
"Sharepoint None \n",
"AzureVM None \n",
"\n",
" remote_attacks \n",
"id \n",
"client [] \n",
"Website [ScanPageSource, ScanPageContent] \n",
"AzureStorage [AccessDataWithSASToken] \n",
"AzureResourceManager [ListAzureResources] \n",
"Website[user=monitor] [] \n",
"AzureResourceManager[user=monitor] [] \n",
"GitHubProject [CredScanGitHistory] \n",
"Website.Directory [NavigateWebDirectory, NavigateWebDirectoryFur... \n",
"Sharepoint [ScanSharepointParentDirectory] \n",
"AzureVM [] "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"c2.print_all_attacks()"
]
}
],
"metadata": {
"celltoolbar": "Raw Cell Format",
"jupytext": {
"formats": "ipynb,auto:light"
},
"kernelspec": {
"display_name": "cybersim",
"language": "python",
"name": "cybersim"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.19"
},
"papermill": {
"default_parameters": {},
"duration": 6.075848,
"end_time": "2024-08-05T18:49:31.412507",
"environment_variables": {},
"exception": null,
"input_path": "notebooks/toyctf-solved.ipynb",
"output_path": "notebooks/output/toyctf-solved.ipynb",
"parameters": {},
"start_time": "2024-08-05T18:49:25.336659",
"version": "2.3.3"
}
},
"nbformat": 4,
"nbformat_minor": 5
}