{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "updated ../amitt_red_framework.md\n", "updated ../amitt_red_framework_clickable.html\n", "updated ../amitt_blue_framework.md\n", "updated ../amitt_blue_framework_clickable.html\n", "updated ../phases_index.md\n", "updated ../tactics_index.md\n", "updated ../techniques_index.md\n", "updated ../tasks_index.md\n", "updated ../incidents_index.md\n", "updated ../counters_index.md\n", "Updating ../counters/C00194.md\n", "updated ../metatechniques_index.md\n", "updated ../actors_index.md\n", "updated ../responsetype_index.md\n", "updated ../detections_index.md\n", "updated ../tactics_by_responsetype_table.md\n", "updated ../metatechniques_by_responsetype_table.md\n" ] } ], "source": [ "import pandas as pd\n", "from generate_amitt_ttps import Amitt\n", "amitt = Amitt()\n", "amitt.generate_and_write_datafiles()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "dict_keys(['df_phases', 'df_techniques', 'df_tasks', 'df_incidents', 'df_counters', 'df_detections', 'df_actors', 'df_resources', 'df_responsetypes', 'df_metatechniques', 'it', 'df_tactics', 'df_techniques_per_tactic', 'df_counters_per_tactic', 'phases', 'tactics', 'techniques', 'counters', 'metatechniques', 'actors', 'resources', 'num_tactics', 'cross_counterid_techniqueid', 'cross_counterid_resourceid', 'cross_counterid_actorid'])\n" ] }, { "data": { "text/plain": [ "{'TA01': 'Strategic Planning',\n", " 'TA02': 'Objective Planning',\n", " 'TA03': 'Develop People',\n", " 'TA04': 'Develop Networks',\n", " 'TA05': 'Microtargeting',\n", " 'TA06': 'Develop Content',\n", " 'TA07': 'Channel Selection',\n", " 'TA08': 'Pump Priming',\n", " 'TA09': 'Exposure',\n", " 'TA10': 'Go Physical',\n", " 'TA11': 'Persistence',\n", " 'TA12': 'Measure Effectiveness'}" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Check which amitt variables we can see from here\n", "print('{}'.format(vars(amitt).keys()))\n", "vars(amitt)['tactics']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# TEST AREA" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "from generate_amitt_ttps import Amitt\n", "amitt = Amitt()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
idtechnique_idWeight
1C00008TA011
1C00008TA061
1C00008TA081
1C00008T00061
1C00008T00091
............
120C00165T000251
126C00174T00011
138C00197T00071
138C00197T00111
140C00202T00251
\n", "

263 rows × 3 columns

\n", "
" ], "text/plain": [ " id technique_id Weight\n", "1 C00008 TA01 1\n", "1 C00008 TA06 1\n", "1 C00008 TA08 1\n", "1 C00008 T0006 1\n", "1 C00008 T0009 1\n", ".. ... ... ...\n", "120 C00165 T00025 1\n", "126 C00174 T0001 1\n", "138 C00197 T0007 1\n", "138 C00197 T0011 1\n", "140 C00202 T0025 1\n", "\n", "[263 rows x 3 columns]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ct = amitt.cross_counterid_techniqueid\n", "ct['Weight'] = 1\n", "ct = ct[ct['technique_id'].str.len() > 0]\n", "ct.to_csv('../visualisations/cross_counterid_techniqueid.csv', index=False, header=['Source','Target', 'Weight'])\n", "ct" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.8.3" } }, "nbformat": 4, "nbformat_minor": 4 }