From 9a20c113b3c013a1ee7306fedcbf44848cbdaca5 Mon Sep 17 00:00:00 2001 From: Sara-Jayne Terp Date: Thu, 24 Jun 2021 12:59:40 +0100 Subject: [PATCH] updated code to produce Flask sql Normalised column names, added primary index to sql etc. --- AMITT_MASTER_DATA/AMITT_TTPs_MASTER.xlsx | Bin 155819 -> 162223 bytes .../AMITT_code_testbed-checkpoint.ipynb | 1019 +++++++++++++++++ ...nerate_AMITT_github_files-checkpoint.ipynb | 113 ++ .../test_new_code-checkpoint.ipynb | 283 ----- HTML_GENERATING_CODE/AMITT_code_testbed.ipynb | 1019 +++++++++++++++++ .../Generate_AMITT_github_files.ipynb | 113 ++ .../generate_amitt_ttps.cpython-38.pyc | Bin 23505 -> 23598 bytes HTML_GENERATING_CODE/amitt_sqlite.db | Bin 0 -> 413696 bytes HTML_GENERATING_CODE/generate_amitt_ttps.py | 206 ++-- ...emplate_actor.md => template_actortype.md} | 0 HTML_GENERATING_CODE/template_counter.md | 2 +- HTML_GENERATING_CODE/test_new_code.ipynb | 203 ---- actortypes/A001.md | 16 + actortypes/A002.md | 14 + actortypes/A003.md | 15 + actortypes/A004.md | 16 + actortypes/A005.md | 15 + actortypes/A006.md | 20 + actortypes/A007.md | 16 + actortypes/A008.md | 15 + actortypes/A009.md | 15 + actortypes/A010.md | 15 + actortypes/A011.md | 14 + actortypes/A012.md | 15 + actortypes/A013.md | 15 + actortypes/A014.md | 15 + actortypes/A015.md | 18 + actortypes/A016.md | 17 + actortypes/A017.md | 15 + actortypes/A018.md | 20 + actortypes/A019.md | 15 + actortypes/A020.md | 18 + actortypes/A021.md | 21 + actortypes/A022.md | 14 + actortypes/A023.md | 16 + actortypes/A024.md | 16 + actortypes/A025.md | 15 + actortypes/A026.md | 15 + actortypes/A027.md | 16 + actortypes/A028.md | 16 + actortypes/A029.md | 15 + actortypes/A030.md | 14 + actortypes/A031.md | 32 + actortypes/A032.md | 15 + actortypes/A033.md | 19 + actortypes_index.md | 208 ++++ amitt_blue_framework.md | 8 +- amitt_blue_framework_clickable.html | 16 +- counters/C00006.md | 10 +- counters/C00008.md | 8 +- counters/C00009.md | 10 +- counters/C00010.md | 8 +- counters/C00011.md | 16 +- counters/C00012.md | 12 +- counters/C00013.md | 4 +- counters/C00014.md | 8 +- counters/C00017.md | 8 +- counters/C00019.md | 11 +- counters/C00021.md | 6 +- counters/C00022.md | 4 +- counters/C00024.md | 4 +- counters/C00026.md | 4 +- counters/C00027.md | 9 +- counters/C00028.md | 4 +- counters/C00029.md | 12 +- counters/C00030.md | 4 +- counters/C00031.md | 7 +- counters/C00032.md | 7 +- counters/C00034.md | 4 +- counters/C00036.md | 8 +- counters/C00040.md | 8 +- counters/C00042.md | 6 +- counters/C00044.md | 11 +- counters/C00046.md | 6 +- counters/C00047.md | 6 +- counters/C00048.md | 6 +- counters/C00051.md | 6 +- counters/C00052.md | 6 +- counters/C00053.md | 14 +- counters/C00056.md | 6 +- counters/C00058.md | 4 +- counters/C00059.md | 6 +- counters/C00060.md | 8 +- counters/C00062.md | 4 +- counters/C00065.md | 6 +- counters/C00066.md | 6 +- counters/C00067.md | 6 +- counters/C00070.md | 4 +- counters/C00071.md | 6 +- counters/C00072.md | 6 +- counters/C00073.md | 20 +- counters/C00074.md | 17 +- counters/C00075.md | 6 +- counters/C00076.md | 6 +- counters/C00077.md | 6 +- counters/C00078.md | 4 +- counters/C00080.md | 6 +- counters/C00081.md | 4 +- counters/C00082.md | 4 +- counters/C00084.md | 4 +- counters/C00085.md | 4 +- counters/C00086.md | 4 +- counters/C00087.md | 4 +- counters/C00090.md | 6 +- counters/C00091.md | 4 +- counters/C00092.md | 6 +- counters/C00093.md | 4 +- counters/C00094.md | 4 +- counters/C00096.md | 6 +- counters/C00097.md | 8 +- counters/C00098.md | 10 +- counters/C00099.md | 8 +- counters/C00100.md | 6 +- counters/C00101.md | 6 +- counters/C00103.md | 6 +- counters/C00105.md | 10 +- counters/C00106.md | 4 +- counters/C00107.md | 6 +- counters/C00109.md | 6 +- counters/C00111.md | 8 +- counters/C00112.md | 6 +- counters/C00113.md | 8 +- counters/C00114.md | 8 +- counters/C00115.md | 6 +- counters/C00116.md | 6 +- counters/C00117.md | 4 +- counters/C00118.md | 6 +- counters/C00119.md | 8 +- counters/C00120.md | 6 +- counters/C00121.md | 6 +- counters/C00122.md | 6 +- counters/C00123.md | 6 +- counters/C00124.md | 10 +- counters/C00125.md | 6 +- counters/C00126.md | 6 +- counters/C00128.md | 8 +- counters/C00129.md | 4 +- counters/C00130.md | 6 +- counters/C00131.md | 8 +- counters/C00133.md | 6 +- counters/C00135.md | 6 +- counters/C00136.md | 10 +- counters/C00138.md | 6 +- counters/C00139.md | 4 +- counters/C00140.md | 8 +- counters/C00142.md | 6 +- counters/C00143.md | 8 +- counters/C00144.md | 4 +- counters/C00147.md | 10 +- counters/C00148.md | 9 +- counters/C00149.md | 13 +- counters/C00153.md | 6 +- counters/C00154.md | 8 +- counters/C00155.md | 8 +- counters/C00156.md | 8 +- counters/C00159.md | 4 +- counters/C00160.md | 8 +- counters/C00161.md | 4 +- counters/C00162.md | 4 +- counters/C00164.md | 4 +- counters/C00165.md | 4 +- counters/C00169.md | 4 +- counters/C00170.md | 4 +- counters/C00172.md | 6 +- counters/C00174.md | 8 +- counters/C00176.md | 4 +- counters/C00178.md | 4 +- counters/C00182.md | 6 +- counters/C00184.md | 6 +- counters/C00188.md | 10 +- counters/C00189.md | 4 +- counters/C00190.md | 6 +- counters/C00195.md | 4 +- counters/C00197.md | 28 +- counters/C00200.md | 6 +- counters/C00202.md | 4 +- counters/C00203.md | 8 +- counters/C00205.md | 8 +- counters/C00207.md | 8 +- counters/C00211.md | 4 +- counters/C00212.md | 8 +- counters/C00216.md | 6 +- counters/C00219.md | 6 +- counters/C00220.md | 6 +- counters/C00221.md | 4 +- counters/C00222.md | 6 +- counters/C00223.md | 6 +- counters_index.md | 130 +-- detections_index.md | 4 +- incidents_index.md | 8 +- metatechniques/M003.md | 2 +- metatechniques/M004.md | 2 +- metatechniques/M009.md | 2 +- metatechniques/M010.md | 2 +- metatechniques_index.md | 2 +- phases_index.md | 2 +- responsetype_index.md | 2 +- tactics/TA01.md | 1 + tactics/TA02.md | 1 + tactics/TA03.md | 1 + tactics/TA04.md | 1 + tactics/TA05.md | 1 + tactics/TA06.md | 1 + tactics/TA07.md | 3 +- tactics/TA08.md | 5 +- tactics/TA09.md | 3 +- tactics/TA10.md | 1 + tactics/TA11.md | 1 + tactics/TA12.md | 1 + tactics_index.md | 2 +- tasks/TK0031.md | 7 + tasks/TK0032.md | 7 + tasks/TK0033.md | 7 + tasks/TK0034.md | 7 + tasks/TK0035.md | 7 + tasks/TK0036.md | 7 + tasks/TK0037.md | 7 + tasks/TK0038.md | 7 + tasks/TK0039.md | 7 + tasks/TK0040.md | 7 + tasks/TK0041.md | 7 + tasks/TK0042.md | 7 + tasks_index.md | 72 +- techniques/T0016.md | 2 +- techniques/T0018.md | 2 +- techniques/T0021.md | 2 +- techniques/T0022.md | 2 +- techniques/T0024.md | 2 +- techniques/T0025.md | 2 +- techniques/T0026.md | 2 +- techniques/T0044.md | 2 +- techniques/T0045.md | 4 +- techniques/T0060.md | 4 +- techniques/T0062.md | 2 +- techniques/T0063.md | 2 +- techniques/T0064.md | 2 +- techniques_index.md | 8 +- .../cross_counterid_techniqueid.csv | 568 ++++++++- 238 files changed, 4322 insertions(+), 1293 deletions(-) create mode 100644 HTML_GENERATING_CODE/.ipynb_checkpoints/AMITT_code_testbed-checkpoint.ipynb create mode 100644 HTML_GENERATING_CODE/.ipynb_checkpoints/Generate_AMITT_github_files-checkpoint.ipynb delete mode 100644 HTML_GENERATING_CODE/.ipynb_checkpoints/test_new_code-checkpoint.ipynb create mode 100644 HTML_GENERATING_CODE/AMITT_code_testbed.ipynb create mode 100644 HTML_GENERATING_CODE/Generate_AMITT_github_files.ipynb create mode 100644 HTML_GENERATING_CODE/amitt_sqlite.db rename HTML_GENERATING_CODE/{template_actor.md => template_actortype.md} (100%) delete mode 100644 HTML_GENERATING_CODE/test_new_code.ipynb create mode 100644 actortypes/A001.md create mode 100644 actortypes/A002.md create mode 100644 actortypes/A003.md create mode 100644 actortypes/A004.md create mode 100644 actortypes/A005.md create mode 100644 actortypes/A006.md create mode 100644 actortypes/A007.md create mode 100644 actortypes/A008.md create mode 100644 actortypes/A009.md create mode 100644 actortypes/A010.md create mode 100644 actortypes/A011.md create mode 100644 actortypes/A012.md create mode 100644 actortypes/A013.md create mode 100644 actortypes/A014.md create mode 100644 actortypes/A015.md create mode 100644 actortypes/A016.md create mode 100644 actortypes/A017.md create mode 100644 actortypes/A018.md create mode 100644 actortypes/A019.md create mode 100644 actortypes/A020.md create mode 100644 actortypes/A021.md create mode 100644 actortypes/A022.md create mode 100644 actortypes/A023.md create mode 100644 actortypes/A024.md create mode 100644 actortypes/A025.md create mode 100644 actortypes/A026.md create mode 100644 actortypes/A027.md create mode 100644 actortypes/A028.md create mode 100644 actortypes/A029.md create mode 100644 actortypes/A030.md create mode 100644 actortypes/A031.md create mode 100644 actortypes/A032.md create mode 100644 actortypes/A033.md create mode 100644 actortypes_index.md create mode 100644 tasks/TK0031.md create mode 100644 tasks/TK0032.md create mode 100644 tasks/TK0033.md create mode 100644 tasks/TK0034.md create mode 100644 tasks/TK0035.md create mode 100644 tasks/TK0036.md create mode 100644 tasks/TK0037.md create mode 100644 tasks/TK0038.md create mode 100644 tasks/TK0039.md create mode 100644 tasks/TK0040.md create mode 100644 tasks/TK0041.md create mode 100644 tasks/TK0042.md diff --git a/AMITT_MASTER_DATA/AMITT_TTPs_MASTER.xlsx b/AMITT_MASTER_DATA/AMITT_TTPs_MASTER.xlsx index 0423f798b0189f803ebeefc319494535653b5d97..f03d4519387847c469e2d4bc4ce1020d787d6822 100644 GIT binary patch delta 146346 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

|@6Tq5)e>r#zX?d-H zsVe-jBxS8Zc}P_X8t?(5DAgzSk`v@K@?auSTkfcLOZ@i#{!jgS@0EYvR-+iGnlz&z zaXKNiEc+`1%z$xL9^k~}w9YY!YYy|l`W9lxQB|dEv)_6`V(ZZqN1oG@pq6cgV~{l&*D8e!$ukBF(W}5R=-&B%8{P#rxis zTxU}@_&Ow_7@)y^?DgqBZ?dJQA#9<*e|Lfod;1kFs?Xa_`gjc-_&LoA_NShIS=a)Op7U0I9D^Y!4e{R^Q#H&X-%(OKd zouGM+4@$xvFBFxG>H;2r=^v+gx=-9`m7#UusUX_M_Sb#BP4pNBJ`xUJ_Om83%V4nK z$#zfL#3m0hRiSnxobcd5bwduHlG*7VV-bOr>t4(peW54c>=&CF?i*j~e}`y7i*?Sl z-uXM4&XIkl=wLf{e>iokDf`3z?y2-n95aT%M)zzTPE!0(%QT^R3rEqd-fjjN>z2y? z+1zdU8~#-@q|&?F{#6P*yO-FEr1C3H7vjtmq`JRs29rB)_GI@EJ|pKqc*;f|ib4uP zkTvxXYZeEQMGm@qf@ZvxCDfyK(PcFwtQI^@g!7WO;G&;4e?yFXmozG%{qiIlXfnME zZZ)jvGYB0Z$W2Gij91+%LXkGk(JyW&&Q3HColnwRiX=y`y0hy}Gv4No)xG9stWg69 z^iTKe%^(9*g!Q)(=mP_>`_pEmfi(fPzk9JU`)6{KV-Q!}-?fWY=o>D0i+7q~^OG!` z5#H03<3l~jGHp0zDf6?CsQX6Cc?60BPIX&F#<9C0x zf7SGZiqdXQRIh7>RBkQxB`SfcKZv(4Q!EXA&R?EHir8jT7 zT)NS#e8V?Zmrh4|n?fE-BDiUO|ofKY0I ztsqiF7aVhs{jvZr@F%-<>+T)?vZN^(U;0d6O5dQO!{2Rv#Md`RUmq8&<5OKjn`Qg6 z&u{VBgUb^(Kk8HI2a!<|F*}H}yH(K?8Z+4h9*?Lgh;x^>R`Z_z$VGN^`CPnS(=MI`G+|VGy;eZ7!q5zzSL-u2=22Wy7`Y9LcHx`Ij7lZk2OPo zTP~97A$I3B-|I?ZdQeSwrvA_ z)3nUc6ge>IM@8{R!z>!di7b)dlbQwnP?MSc1vh$mWjE%X9!gt_fa=V^9NbPb_*RF2 zAcB$RAK&(*U1VG1uY9JLa|N!rUqurJJpar0FRF{IVJP9>89bpsCl{w{X86^*e@whI zPpa=~K_{~0n&~*mV7oBpR9OyKq?wHF`1zoqlo*jBogJ{rQq^R~RXk2XJ*&%x9|dJTg5U0b!j|P>74yQEe}|N5xuiIh z`s89Bk1vp}!399fJr1HM!*>YL!-GddRZaM!kg7Tr;SVKn6IP?{C;20W6{S`|>;N$V z@Z;yhFpWS=%IWuFu5}7xe-ijr{I-gi;Hqo?i!CodG(exF|FeF1TkF{~>3pLi3tu5u zs#`u)6l1Pnj2f$)f|`UxHJ%fzu7e+FlWLLu85ZVt9Fc%x9WXt_kkot=L$|ONvUTeY zhCPz8HQskYIP7(~NunY`W^^8DJ0d6;7Z*C?;Iq2XKQphU`O4oTe=NOH=-Fh7(?`(n zn#zyzdPA_c=(ZW@^eXzrUA@G%+&KNMJE+~$HYrZ?)5I!e50Fv_%v!AtYRYcpp16@7 zG~H7)p?wXJJZ*z()3fR%O|cLmd6Kq6R&dIiGFqTy%bu8@W)rHQ;A98}@VjVYHk*?l zSc}N$7+mE~|U~FEAOnzi}4=9Qb2$JL-M2{|qP) zGanLL(qZr`zO{oR;q|2bXsO@X4O+8w(WKvgAXZ9K&hvdWQC4}IN0~=z^~h=}x?k>O zf&&BnF6?ykte&VNX0)XRQwh=?69=14Vwo3q25eT)s%4TMe>~b$?4^*fu=;ZRQU#oL ze8m$;50!V@Z-Mo6+Q3^e<=PF#i}w3$3AYs0mMuZe@ubqlZlK*RKTIHt|GufePpN$V zWW|8JJ7JpmYnU+F|AbTKbv1A6JBl;+#g=#ACG3;<>9Wn%gh_3dp=goj7xf13D#j@9}+3XJYmN7uk+W?uw4lrm81pxFB^*qaAu>&K_-Y71k~=kEl< zQ&*Ackn*gbxsl)wxr3}Ag~qC|38LGU9{P|k5d-D8p_NaPrr{>5s0>+gGgipJgHZ-b z9Vsv!Bf&svdsz7*T;Q;e~f6l}TG(#oCAnWTl&WZhn!Qi zD9<4A?A}K>860}VxxV6xL?=?AjJQ6#OFQyL>JCU}*ShcVFN)9oZ;V*|Q)@HvzSIOS zNs41pe^|Nn)?F8xSnaVDB;ED)9y$G$Gz}@0_*Nj^ijOP#(sW3Qv zFe*_Ezoy#fD-%As0xQeeba%#G{K3b498m&qf4Y2CU;O&u?Ji!DDgk`@>5L_zp64@G z&C*OqnoTPR3kl9Z`k5Yy9wQfBVvZ=U#m9ABMcvs)!^5RVxtc@e$`*y;_)gr~5@ zeZnREzZqfy%|`togVsI{`#5zI&bb-D->h%&gofxfQij7>%6E? z>u#9Y_G-7DY&`vTKwz^|i!n634zV2ze>{Yfbh{WBRTIolAoyK+#pI26H#ke`0RE(gZpP_^N)zx*igdYf9xlc z22e+P6k_=&`bIeV^~YEf@_&5{YYvZf;;elasfkizoQ*Vc3vRtLTJBEDI-Re$z?`Ce zL%YpmM;)luN)LCMF!$R+jzlNs@OV5iy6?XU6MigMQg;2&c#5eZc__%%vPz(K!urb_ zLo2lZJey6nIwy-&83?r8q4W_6+^zZL1u zMN>FzNDm`-aBH3Z@Zu(FFZR&B!mEw^N=rb-SWit8n0;3dAMxahjhnk}Gps}{j>st% zpZ8}4=!vy(ibs=mShWU>agP*OXbll-&Pfy?=kt(QTZ9>7bNRT-?X|Lqf8GT8tbsW^ z0=;aT6TDMZxJDVJ#6?{i#q_9{=kjwTRgIwb)5`*ac-#~dj*ii4iq$xnK+Y2dv@IH- ztg%36_S=59TKvS8omJ;*1MhNAX6Gg2 zabx0zOx25HwQ6F3eQB zU6G|rgwjHuAwGvqqIz6xh_IMdb)<)++zazFC&omS6ZAzYHI)&(Q$ zk(%AM{!0BwDyN1Cgc!z)0)|pivs6-q`Awq8+A!OPH392knKceOm695n+b(sU#qs*KH z_a#{*{ceP*mMt{jxpDi}&Dm%7Zq7D8yE(i2#m(90h@q?fe{8wJ*`c~gJVW53DQ&r) zY9zD?U3+`S6ID(q-ieC|L_MhcDN7{P0w1Az9V10H-TDq!K?(ct0=@#@2LvTsbNcrOFht=> z3!qB7i&Ph{e^Tc4cR%mrGP=u8lg1B|VR#jCD%{BafUNs07AFujKodZ=9ds5J|z1El*HkhUkOI7c-H=Bs$YgFWh{CN7C@1Wq; zrnnWhW$^bBYVL81qgCsm=}dRl=}tiHN6_r`4;1Tgf0vjT*tbS3(3r8!L}wVOU3iC? zXt9`AYWxIU#nAKx$z3Z0`ZRmP+Jy?JU3cuRRJ6Vp5EB-{;!NTcjNk-82x?WHvefLy zh@?TiZ1`TV&;INF>G9*^Up^u0G2f=$b5^gmP?+fyaeA+)jo|%?+AxHr5qkITLWndw znD#Ftf4jsjXCadi0*}G)OL+oUqDpTc`Em}<)*aJLI6_k|E=p=&=LUN$yguJn6N?x^ zSG3}d%MoCtc~C9hu6uz^9<7yLuiuL3&|TGYY+=8?wAQc0znwN=3*j~8O1hWPEO~Jm z-NLrc-AYycMRZrlX#&D*zq#l=6aTPTWmp!_f6|ipeKh^B1nxY{dljYF8s3`3}XyLLgWxpA@Og{O!TSbJ1%nd2N9~^8yq$lLf5uzrUI5uThF*Oic@IUCH6;+Q!FomRJMR$D zhCT-|y@4fa-fB_w+K5ICNO<~}$VR5zu_@vb*klWQ`0)GZURxq490kCRUU74u96Wr& zYXn`Ge{K*9Y=NsZcqbY(aX`A_4q&AG5qG6&mV=~VBO=Dn`3EjK`)uBpiL*mOe}KQU z#@N#(KoBF7A$6qM^@i^52ng3%j~3V6=MmMto^q7)-UC6m94;~H_n=Yefr}DFzQL&1 zT#mrIe(QSm^|sk`YOP>QM8vaL5_Bi{IWCRSQYEk}Qs{_x_M#A4wwROw)Yye_%qAN^+@^ zyb8JS@ufv>d?;` z7*gAfb{ba3dm(O@E(yI|x>X>+sj$S$AzZLDY;N@kO7c`y@M!YqrXo=dX=!#MyK(cn zUCg>y-jW?^2WpiIZvq09e<7-JsArru6F%i9;4N_8eBQ|%Ji>#|QDOyTf_q{8&mCy^cNADeB$q_N*bCB$shDMP=WXdiU= z^q^9}G8ZrKA>tOu@eRFAcKXuU&}V7}I}f91SK#(iVk9F}?J9u+e@XukJfyx1CCgZE z(_egPa|C@|0khF|@*-JuXcghaAF-fW`j`(b5lfhfZpQ7|PW|--)_i~@DK?z>n(Tj$ zkqP=F^todxa@{hud#XCBuX;FD1xQqx3&~AOO)>$3_12^&Q;7G$Vw*nSAGrHFcRp(! zGWEWioz+O0l%Rz&_pWBtOvl^ z9wad@Q-Rb)VOwxjzrW$34uV46=;MnH(( z%mbCQxBDAKPi%?I#ka@>s5D)5FtV1&a944;uwYAC=hArUQHA#9_@_+O$O;nvszE^F zx-QeV+W1j$eJr#ws_Xx453tt~^hR|B3kqOq8Ri3HR8PiFPx<$5ZqysHoXCJxfUTN8_4Q zl}f_-sD&x<<4{smE|GO;q)gFJ(H+!7y~Bf zVR*gUyKFRv#C&?eL4hxR8}W?t2xL*V{jmmpIa*{+_!lQ0Pp`vXd|JW=_A{B%&}5mp|B{jb75&_wr;=!IHdiMSSDtI7@n zR8u}*(FFIHD=MO~y?po0_iYo?qpJymf2(_}$gAr~<6c4<7e38M0QG9^`|C;;!K#Jl z7aYaQs!N#7u*~TAA6)I=oU1LpX&90cSb;G7Tp_SQofQUIA%G*|;%=C6DOA*hK zRfL&%yd(KY7dv^lgCKkiv*@c~{CjRvKx}p_3?cb1&9$Gu=J9$r>}=WfO`Ws>*4N zm@jVIChaXaE^HT3)F(s25#@|+e`9jG{toqG-qllUuDU&O(6zZkg7VN3uPRE+=$fol z8R}y44q`^_oFKAF)yg0bX^m=iD3w+XW65qAM^x2KF|kya5I*l%kyJ$<}!9_08{ArCn|78g{SJ4HTB<;K*POL#IGFh2PB*wcG{hn8M@;|D?2-QR{S zE~wQI)r=#W>AieYW1_IX3qt~yOJg3iq>Z-3f_kq}(G^b~f7xB=#K-9p{21Y(Z10RN z1@ud$4qcYBPhVilXHjUBlWWj01ac%(QGXlsQ9xX2;Yj{P#%6^XCVj6L6fA)$D$-T| zdHmJkz~yOR5zPWTgn`bO4`}n!W)ePAyS)uyWg=2F(VahM%p12G_ZELDh8226=9;j{ zZw*21{XAXle_lEv<4gER;djA?`E;lHdzwn+-z%_1O*vvrlUjBH0jm4AmMzlz(HwB1 zU8<^4;}i{AsoH()vS}~|DMnn!z+B2-aAY?ZX)`JTC8#dXSk)~MhkH@jN(V>nj9HZR zplXJlU;tqjOf$TkQBW)O_t|ohj};_J@0ND?a2=fWe^Y#~(FhzT27;d`&_6j~3YP%= z#IC6F4Gzyg4U;gC&cGp$8Zn}Xiz^Q7uQAx%}#un)m?g|xM946L9R}US5xVXz| zy~oH?e|M9lPSJ>qCEcLo%T`R!GW;gRtz0^G zl$Ifqnnf&83YB$MLuF`Vg@01S4+AI?2d2 zXo4|n{t{%O>C*gTkP-0?6R%o4m?K5)d!(dM9&x@%1fXWjm`X7jlv>Kd=*MwFS;S>j zv3sF7iNULCV5SU;B}VI@X7w(QcNiAB7Vg4tRTUbgq1s7BoP2!%$d-f2vS59OCbLu~ zf2`Row?X0O%Rn!w`(F6bmmNoXg~v0OYn(30E96tG*c5(n(&*Df;hf=6Gwp@*P?I<6 z!3Gi?0an1NC7!zsCn8=NX*U!T;K4lJU{9;)YVEWkG{4HCLpMxOP*nm$~0xiCS!@vve%Y z4)-@ysh_Rk?iQ7swNlM3VcYciW5AjF5!TE$R+bRQXyFXIX(pmd%DHS8&q5X>f7t;O z9=PX8-Rb=88`-b9w0BOV=M8wg(WKyrm~p_p!Skuk7fu@|h;oL{itX_5a-i-Vo@-1o z{fAuGYI&OJA%j2~6T}MQ%jBDIHal0y?v1&7O$vqg7*&vGqBLvfU_XWtp>G7t-Ra)? zGuFuqtwlTs$52g;!1*(kIW^QYf7P@lxQzl6nYrgR*{JqdJaBJmhD-NSn>#5Nd1)NC&)KZe)Y?(` z)evBvz$Fyd-Y=jJsVT_BDlRY#-Kg=nSIE~xp)%v~7jGrSDnCt%gP+Axi2b;2>VH+ddX@7NWyW&QTt~fAon9oYVTH_^maG z`twZ<9415x)JuGGU7C}rodAjL^jJ{+CMSOy5*z4j`nM}R;OCnUJ$Z|Y)!9Cr1rwPm z3Jv<1Y*-NrnK}520PyG3xZCGa6x08T3d8g%JkV2UB5N1~l%4&s$Mb!qtH&VL8f%c< z5Mo+aEaDYeOx;WXf2=%r!i0TH_-+~Nh*+x9mMp9o28tfD+^=D86RHXUAH|Ohd9q^G zL^a+L^X#46AWt1dt7}UBIWbKXB!x0!d0G=hT-Fz$3WIpNMRgi>GRz;5==wS<6mZ%l z;Ncw#GDi)>-OqfX5e$!BeST)eIs+=ycr=Dp?4G_oMwdo>f9gVY)+|+0btoUHy}+pw zJyuz%O}`k|wt4TSrcTROc_{H5;_$s5+hmEx#ue1HHC6{AcVDw%DU{oi-D4iOpmU0z zBz!VRHwLDA5oi2z#CLa=HBn<>*T1HttKlaT-8poRnC+w!eCC{{ySnJXN^~8dQ%6CJ z%B~*Rfcue#e~|vNZ*7FO6x>%e2N8KW5A`b5VNHQnBlOV`Ei}O<%7RhkZW8ITWG(uN zG*_1xIiic{E&6rqR#yv1*U}Y^>%GQSoz%wIK$M)9KqLQ#EFjXZqBc=QHm3*FR}p;I z4oAu=33~|a@8*`UL7>wC5RCF@GM2)5Ef9Fc%)VXKe+@5)bTwRqyBe81u{tMHIT%6} z{(pPff)^mhS95k4+c#~+VM}+!kcop5J0=VP-x-a}ZL1u_1PZ`jPzK1vr4NcM7a8$7 z1sPVN?an$i9+C{vJNj=qAXcBaQ~gyvorUohBliPIm8>F3!UEX$is+7+CJdzc7(~@! zgm>0aHkDnp^pyo>mK1AzLN|aR9CUb8u z)u_@p)W`wq9M2R)-G|yk5_#nM>+n0K!tm#_*XM8d*d=?6+Ggg8I;*!ZU{IuTcE#P- zYfKZ${SZ*Om#2&_Ls%4gXyC3C+?f1D!t*Oje?CCfG?9xsH?xaGFKD*t%NxtY9nAfm zGMS+5giLzhL`Nki6VPNtA0b~4tzJ)A;zzJmeE(8`hxpnkEcA|9%q0RI zuu#`{b1aMT7g?EZot$h)Si#C9Y?AUJx~|Al{8|y(V@eY?FK=@E+J~J}0*Z&TngP;s zq{9{Mk$S+0yIP7{59YYL)tp?qyJFLBfB1n!S57>q$Ewk1w3kg(HCoy&(qU8fdO zyB@g59X{V<8glolnlSwb#meNBCTplO7gpU;);SV}w^cG^dD3HFRO`u--&s{M7C4i( zZ4|W!2Mhtc5#cCeG0kbC!uBlXkm>9UUMVtiRxS9_Ywd>+&mGdSZM>{R(JW^|e|rHU z#?C^q7BsXP!qR%wU(7BZx2#-wO;O2WZ$3MHy)W*Fhzuisb9~j6ZlJl`Gn-10R*U{A zP&uMiAuA=yt)`ifS?+NXJfG;xVk|m-b|{>ZZ|rGuk8~8IavJ!tr9gyLzAb&(nQ^ar=JZXi?ZbeaZrPo^1NQIHN^sPkkP>v*r`C#IYuhqrc zI*rtSkrER1R4JONc6xB8QI;L;@*<`=$0e_NjFzOeCDb&ADj1_YG&jLyB=8MSE36Bk5XOkG@$ z3=t3lbo(V9h127cp;?r@u)~tskQ_I?6LAyDe_EZZStTvi<2`8CEql)E4y~4-q?mPY ztBLl?O7j}{(A(D+BQ4IAe`4nhLeKK_L0l|7HB+r?0IC>ynIo*WFNm$YW} zZ#3Nrb>rWEe7>dHcjqjTBGWo5g8svqIuz%{%8YuDmzJOIXhYnx3y}$oy3J_}bV-Qh zG&XeFUA*fSZCkxrY2VT0KJnz=btf;Vkj3k+`<9zcIICkRiD49sf0i$>M_0;_PJr~# z#p}P3-8^DYzOwJb3vy4Zh?W4K;a2c%=n&Dz;N4<)$1*P=Jxv%G3L>+Ejua13DQ?1f z!zvz6l6nA=*TA&?}DmV(d=np{qi|;4NUNItA>bPukB!Vl2iz{mRIm zKs_EtHbYCRKTX>MngbddLFR!RAtTzro&aPyy$JIXZ8}Eee}z&el^cUWcSgPklC+6d zvr9szk+}Ub9B_2Hgz4#^?ky%MF3^}5$%Tukm1tZvsZ2&wzc|D8-rrF5W4)3;3YY@Z zniS?p;6k6MjzDEY0ZV9B=!VDP`{jprntt!NIx_UiNoYF*Sgmaj;~Ys%NzT@K&}u6 zmwxguRX(Z!85u+Jwy=Md-ykO-0(R4uylr=zcN-qB7M?@IAl&^-p|E51y6f1h_97q^!+Tr$Y^rf62Xo<&;a)DbXZqGl9ykP|Tzp zj+hUw&nGJZo*==hxpRsp0n)l7AhW{Qu) zg1oW%)N(RpUwHh4jW&sgH>LOh=NF7&D`cECgk119Du9EkxyJh!O?e*)O+JrD~^XBgR0NMI_uqoMN##LH;q zG!$c~!h;c+oq?=8#PT_&-!SCHnr2LDhKZ>MQ9j z=YMw}P?OJ<8KShI08~^~DY)9A$l4q&1`Hvn!kzqf_mr*m+Yy7>qW8YB;yY~|9nz4x z!69tNwaSiEoq$PkTct)$KbMAC6;^mxe-yjbWmm0XDqWP~F+kn8x6A24;a zrHnpr)|z!mRmKG?YT1FMh356iiD>zRXJ;FQ#c##v#MQG)k{Ia`r~Rp8nv-N*vM)wS zi^HgF5a?mk2X@c#0D=3=aXptvm6+Z6|)trg05||R#L<~*xTQpznfg9e=Ti2 zyD=O(Ou)5+KQn|&JzmdwR^)+*8uhsP>bw&geUCBJWE1YmUAlAgfO}y@=b}Ns+6Q*a zc;$nrxW8AMsVXqLe=*^}MX9fJR(F$XsB=xXmphjvxhqtFoSTN(bIzZ(Oth)f{E4=D zm^r@Cy+%7rckx_?=~5PzmkVXI57DVw9nrAaY$kt_Vta-g-kwqn-`t9ze-uXp=72?t z;)vujrZ1b`yl@98UaM7g1VSjs3!`y_p++ial`!(#-{6|0a(~&w2w3)jYEp&2IAl2s ztt+ztl(_Jpe6>1|E$kqHEm@R0O21c8Pda_XYgp8h>yGYL>41nHu0EBhAXM>|bEDb+ z1vK;_FFlQlyT@xQddJ77f8cY}AYq17-hU6Ps&VO9a*?;oS4v+t8}QSmGp;MbPI0HAv`$1f z)U}9jSguP=w0%C{ci*Yr;8>ZG@so!m&M{R8fk@e&rHDG^khev^|%2q@f2OR;j@Fj0${^vif`(o0aqLu7A$6LZsLq2>ykyf zDCLNyGTt=Ge>~GUaCRUgmu>}f{2__Bo6m?(Vn<}*wDsAV036Kt*&oSVnO@T5u^^9| z1Hv@MH!U8ed|VhNVkTO&f$-O^v3qZGx;aBxtz%w>D0=Esyjd9`Tg%0 zZ2~t~Y64Z5^fbcM9bAIysR` z9u_~dk5O3#nXo|&j%~~uQBnFG52U&<%`;528ctW|y2|N-%R>)Zw5o2>YCJ=&0%GUf z!WzrWARgi!zB%|5ZSK3ihlBNcA8lR)Ipamsb38t}-Rf|58^YS7j6-?{X~v3%(AFhw zQ+h&Ie*v%fyDQq=XnVZdIx=LHH^(%JMJ%KtCPy-CK*i)uEKskGdYl$pYP2+hb|Gnc z#FoR*3#CY7JO-;2(m?*Su9Q9W<#IeYSkjJiL@)4Y-5v-7O157LDXnOQX*EgB>aqtw z3M!t8l=-ZY*6jeWDXPJwV8bwT%z&`mshdm*8v ze^PpoWs)?+c%)!cK=rUf)T)Pfm-6U^nqmX6GH+ZmqI{-@$w{Dm3!+#UuyK(pkT_yx z&i?KVr}$m)+t9WPTgMHA1Jv)fDraI)q^0M|P3k2mGqfRxv@QthCYs_mB3Oz?7NWp> zk9dr0M?^&HJQ_UI;Yv0^Pg}c^0_o(;f5in5W$dx_2@Fr2#KILNT^U05tj+!5lV)MO zlBduT-5SBBHCW5#c1cOiDttNR=T<8M(|5sUrIab`V8kresmfM2k_r{>@+%@{yNgVd zEq!Cp7XUP)c%l2t4#(X*S@R!c39m77mU5~MGp4^F*K$ieNX}LFO|)VE&qu$Af1F*m zp<+GHiBvsxM$##d+`goUb(P(y*)m=HDYnmQuSN*Zz*o5ExvrsK451wtncq=~{N1Kj z>)0U7C<+)EQ>Ebn=U6w{3Acr+Qkl)(j)MF0)cYz*VZA}odJsHTo*+3%ngs}%65W;X z$t&VJ!nf&xz8^_g#*fUdErn;7f6>coE94+mD))e@4i*5)0Sw6kCq+LkpRGNtR!#Ej zvD{^4GLV6$ifw4$iFV6cR!nfs*<-lVe9jj-FmzZ6P5j7+_Kq&e+5OuCBTk1 z(g2?aBvbltG z=U}T_Zs>@11cP90Ml{Y1$Yi5zF}+Ut5m;Di%kz+qC7lS!^$WfL-$Vu z2m*)eA7Cc=v*H(629f+9e{LKQUC`~4(%Cxu(w9S`p1&$qgUa8eNO5@fNr*7e&eTR- z+&1Od$r0Br%ti928in9!LKmnI{N?@G7FGwa9t`!8IXpUPj#b^VUSzW*%x6fX`-9}x1Yk%aNSe~8n z&mN5>&&=Ufu6~m5}RtSs)N0YdQV@llIVz$9VwBc3n ziNs3_u?~Z39xUn5&wRo%#cLpmV5UHLGE&IJi#n8Gcqff*Z4%O)e)V5YpYcCu|15;k z@7M0FZSa@J1OxHkTM8BRH-Cws$+XSix~;!#_=j&7sIuzKDX)vtx%-dH7`&IeGA$y- zT(bXO@(v=qR4DdB2pR7pwDTA`DHJZkS$wHWxLB=;RD@Rbw0jR6>O2qU^wrMq*B(pP zfd51D6Omod3_PnQKyzl08ww<+98^_Z zl@UKAnn3eLjf8*+Vv(An1m?&p0uZ~acOlo&nght8{P0j(T6ypM_sPYE&?f^HWk&#> zGdX8OOOy~}jBKhbby`6xgDVipZd9O&1*Nj&F&)Wjo2}_QEq%WpAP2WTZ;23Wp)!%-ir6L_Co^VyJC})6IWQd+fZVX(7(p0lgHA|#zBnu3Y z!8yR;&OY_F!1G1tahv!*@!vT&bPd_cW>5ZTHMjXiBM%aSlW35Y9U-hJJDxpk30J$`*4|7G&t zSF9XV*@k+PAT$=@uWE9=qO0e^LE$ge5g;) zk7m}qSu2u;(O6L}ZGCylk$G7wK?Y3&W_8vUw#sG@Tr=RVe9b`S(t6#mH4avwW`B%Y!V1*Y{!;P5cJW0qjEi|6Hxl_6<-*qF zkcDPc!P(?dv6tgh`F~kRj27ez#^Q>2~Pi6gM6c_?>4H_mOBCigL8kw0-RSg)a z3nhNC2#<&?k8s{=^~1w3s~Xr!Lg+Cys1y-~d^*>2HPfBWpk1ZwuLnATkdiD`;5r2b zlMkt7`K6sNU(kFh29*ZUYYHe@lgR%0$%a6q8xq^!u>3wzfsIE#ovnQ<41ch6L)S)B zm*Gxe-mBFaTo{1BS-cU{z=)+IDfJ7mMNoWn9NOF zPovk!*cg`qHc|EUEa~Ia0)LskZ&+R!zsiCwN4EWvxoi?-6^+zs`A-Y9l>O$ac>mNe`cYHqc zGl^c(I!mA+$N^M6V|sgGkllLd;#AJkP+B)_CTiaAUMuqzIhGums}-!oO}* z#X6zVCy2@6W>*Q9u29SRxJZJJN=UtAma0VhRMKyMf5ps?m$O{`^)0Tf^^`QT&WsJN z^s5)EaQ<7U@4lbp=zj-$M+;wx6U)C-y|{IOqpD(Kn~>TH6Ksb%WOg#$h*(D`Hr=9XhT}IO04aE0%px>`QjPzoGxiPFn~p1iXO!-L4-Vf4uI9qFvqR`LYd4 zslYzf+8)I|5r3fnB5$cNr(amTT)ep4{WUsVDgXO%m3@0{hc8=~Ze=dvL}!2b>T*6G zvMrcf(0PAC##FQjc}D(6!l?7T9f)-V3qS2ks77z++i$*pF~Aj?Iz0J@U?E>ip1L3@ zS;H$QQCsm;sXg0b>6Oa*6; zjNg!~~?p`NVyR3@$xnBBHQDA9h8NKwu6T;6`?42W|4UfM@ z1ru=Qy|&dMdAAc%tE#`9Frt+zInM#}zRn{E>hUSewb2$J^v}GWYQ;=W zj`EMTa&o~}6tRjF)z@;>R+x^M@w#<~Ku+#su-=u+UaX9>!brS~=(t+scNH37#EKtX z9Dn#;101HWfQ^JLc$Ba}QI?G>%?Plk5K�P%ASuZ;OG+O1o~7$_p_`B=`G)!Sy-H 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

kC*ew(G2BD>gg3G~zU(hrF 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\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", + " \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", + " \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", + " \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", + "
amitt_idnamemetatechniquesummaryplaybooksactortypesresources_neededhow_foundreferencesincident_idstacticresponsetypenotestechniqueslongnametactic_idtactic_namemetatechnique_idmetatechnique_name
0C00006Charge for social mediaM004 - frictionInclude a paid-for privacy option, e.g. pay Fa...A033 - social media platform owner2019-11-workshopTA01 Strategic PlanningD2 DenyC00006 - Charge for social mediaTA01Strategic PlanningM004- friction
8C00006CensorshipM005 - removalAlter and/or block the publication/disseminati...A031 - social media platform administratorgrugqTaylor81TA01 Strategic PlanningD2 DenyT0009 - Create fake experts\\nT0008 - Create fa...C00006 - CensorshipTA01Strategic PlanningM005- removal
1C00008Create shared fact-checking databaseM006 - scoringSnopes is best-known exampleA007 - factchecker2019-11-workshop\\n2019-11-searchI00049,I00050TA01 Strategic PlanningD4 DegradeTA01 - Strategic Planning\\nTA06 - Develop Cont...C00008 - Create shared fact-checking databaseTA01Strategic PlanningM006- scoring
2C00009Educate high profile influencers on best pract...M001 - resilienceA016 - influencer,A006 - educator2019-11-workshopTA02 Objective PlanningD2 DenyTA08 - Pump Priming\\nT0010 - Cultivate ignoran...C00009 - Educate high profile influencers on b...TA02Objective PlanningM001- resilience
3C00010Enhanced privacy regulation for social mediaM004 - frictionPrivacy standardsA020 - policy maker2019-11-workshopTA01 Strategic PlanningD2 DenyTA05 - Microtargeting\\nT00018 - Paid targeted adsC00010 - Enhanced privacy regulation for socia...TA01Strategic PlanningM004- friction
............................................................
135C00219Add metadata to content that’s out of the cont...M003 - daylightSteganography. Adding date, signatures etc to ...Add date and source to imagesgrugqTA06 Develop ContentD4 DegradeT0024 - Create fake videos and images\\nT0026 -...C00219 - Add metadata to content that’s out of...TA06Develop ContentM003- daylight
136C00220Develop a monitoring and intelligence planM007 - metatechniqueCounters cleanupTA01 Strategic PlanningD3 DisruptC00220 - Develop a monitoring and intelligence...TA01Strategic PlanningM007- metatechnique
137C00221Run a disinformation red team, and design miti...M007 - metatechniqueInclude PACE plans - Primary, Alternate, Conti...Counters cleanupTA01 Strategic PlanningD3 DisruptC00221 - Run a disinformation red team, and de...TA01Strategic PlanningM007- metatechnique
138C00222Tabletop simulationsM007 - metatechniqueTA02 Objective PlanningD3 DisruptC00222 - Tabletop simulationsTA02Objective PlanningM007- metatechnique
139C00223Strengthen Trust in social media platformsM001 - resilienceTA01 Strategic PlanningD3 DisruptC00223 - Strengthen Trust in social media plat...TA01Strategic PlanningM001- resilience
\n", + "

140 rows × 19 columns

\n", + "" + ], + "text/plain": [ + " amitt_id name \\\n", + "0 C00006 Charge for social media \n", + "8 C00006 Censorship \n", + "1 C00008 Create shared fact-checking database \n", + "2 C00009 Educate high profile influencers on best pract... \n", + "3 C00010 Enhanced privacy regulation for social media \n", + ".. ... ... \n", + "135 C00219 Add metadata to content that’s out of the cont... \n", + "136 C00220 Develop a monitoring and intelligence plan \n", + "137 C00221 Run a disinformation red team, and design miti... \n", + "138 C00222 Tabletop simulations \n", + "139 C00223 Strengthen Trust in social media platforms \n", + "\n", + " metatechnique summary \\\n", + "0 M004 - friction Include a paid-for privacy option, e.g. pay Fa... \n", + "8 M005 - removal Alter and/or block the publication/disseminati... \n", + "1 M006 - scoring Snopes is best-known example \n", + "2 M001 - resilience \n", + "3 M004 - friction Privacy standards \n", + ".. ... ... \n", + "135 M003 - daylight Steganography. Adding date, signatures etc to ... \n", + "136 M007 - metatechnique \n", + "137 M007 - metatechnique Include PACE plans - Primary, Alternate, Conti... \n", + "138 M007 - metatechnique \n", + "139 M001 - resilience \n", + "\n", + " playbooks \\\n", + "0 \n", + "8 \n", + "1 \n", + "2 \n", + "3 \n", + ".. ... \n", + "135 Add date and source to images \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " actortypes resources_needed \\\n", + "0 A033 - social media platform owner \n", + "8 A031 - social media platform administrator \n", + "1 A007 - factchecker \n", + "2 A016 - influencer,A006 - educator \n", + "3 A020 - policy maker \n", + ".. ... ... \n", + "135 \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " how_found references incident_ids \\\n", + "0 2019-11-workshop \n", + "8 grugq Taylor81 \n", + "1 2019-11-workshop\\n2019-11-search I00049,I00050 \n", + "2 2019-11-workshop \n", + "3 2019-11-workshop \n", + ".. ... ... ... \n", + "135 grugq \n", + "136 Counters cleanup \n", + "137 Counters cleanup \n", + "138 \n", + "139 \n", + "\n", + " tactic responsetype notes \\\n", + "0 TA01 Strategic Planning D2 Deny \n", + "8 TA01 Strategic Planning D2 Deny \n", + "1 TA01 Strategic Planning D4 Degrade \n", + "2 TA02 Objective Planning D2 Deny \n", + "3 TA01 Strategic Planning D2 Deny \n", + ".. ... ... ... \n", + "135 TA06 Develop Content D4 Degrade \n", + "136 TA01 Strategic Planning D3 Disrupt \n", + "137 TA01 Strategic Planning D3 Disrupt \n", + "138 TA02 Objective Planning D3 Disrupt \n", + "139 TA01 Strategic Planning D3 Disrupt \n", + "\n", + " techniques \\\n", + "0 \n", + "8 T0009 - Create fake experts\\nT0008 - Create fa... \n", + "1 TA01 - Strategic Planning\\nTA06 - Develop Cont... \n", + "2 TA08 - Pump Priming\\nT0010 - Cultivate ignoran... \n", + "3 TA05 - Microtargeting\\nT00018 - Paid targeted ads \n", + ".. ... \n", + "135 T0024 - Create fake videos and images\\nT0026 -... \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " longname tactic_id \\\n", + "0 C00006 - Charge for social media TA01 \n", + "8 C00006 - Censorship TA01 \n", + "1 C00008 - Create shared fact-checking database TA01 \n", + "2 C00009 - Educate high profile influencers on b... TA02 \n", + "3 C00010 - Enhanced privacy regulation for socia... TA01 \n", + ".. ... ... \n", + "135 C00219 - Add metadata to content that’s out of... TA06 \n", + "136 C00220 - Develop a monitoring and intelligence... TA01 \n", + "137 C00221 - Run a disinformation red team, and de... TA01 \n", + "138 C00222 - Tabletop simulations TA02 \n", + "139 C00223 - Strengthen Trust in social media plat... TA01 \n", + "\n", + " tactic_name metatechnique_id metatechnique_name \n", + "0 Strategic Planning M004 - friction \n", + "8 Strategic Planning M005 - removal \n", + "1 Strategic Planning M006 - scoring \n", + "2 Objective Planning M001 - resilience \n", + "3 Strategic Planning M004 - friction \n", + ".. ... ... ... \n", + "135 Develop Content M003 - daylight \n", + "136 Strategic Planning M007 - metatechnique \n", + "137 Strategic Planning M007 - metatechnique \n", + "138 Objective Planning M007 - metatechnique \n", + "139 Strategic Planning M001 - resilience \n", + "\n", + "[140 rows x 19 columns]" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "amitt.df_counters" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "scrolled": true + }, + "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", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
amitt_idtactic_idnamesummaryid
0T0001TA015Ds (dismiss, distort, distract, dismay, divide)Nimmo's \"4Ds of propaganda\": dismiss, distort,...1
1T0002TA01Facilitate State PropagandaOrganize citizens around pro-state messaging. ...2
2T0003TA01Leverage Existing NarrativesUse or adapt existing narrative themes, where ...3
3T0004TA01Competing NarrativesAdvance competing narratives connected to same...4
4T0005TA02Center of Gravity AnalysisRecon/research to identify \"the source of powe...5
..................
59T0060TA11Continue to amplifycontinue narrative or message amplification af...60
60T0061TA10Sell merchandisingSell hats, t-shirts, flags and other branded c...61
61T0062TA12Behaviour changes62
62T0063TA12Message reach63
63T0064TA12Social media engagement64
\n", + "

64 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " amitt_id tactic_id name \\\n", + "0 T0001 TA01 5Ds (dismiss, distort, distract, dismay, divide) \n", + "1 T0002 TA01 Facilitate State Propaganda \n", + "2 T0003 TA01 Leverage Existing Narratives \n", + "3 T0004 TA01 Competing Narratives \n", + "4 T0005 TA02 Center of Gravity Analysis \n", + ".. ... ... ... \n", + "59 T0060 TA11 Continue to amplify \n", + "60 T0061 TA10 Sell merchandising \n", + "61 T0062 TA12 Behaviour changes \n", + "62 T0063 TA12 Message reach \n", + "63 T0064 TA12 Social media engagement \n", + "\n", + " summary id \n", + "0 Nimmo's \"4Ds of propaganda\": dismiss, distort,... 1 \n", + "1 Organize citizens around pro-state messaging. ... 2 \n", + "2 Use or adapt existing narrative themes, where ... 3 \n", + "3 Advance competing narratives connected to same... 4 \n", + "4 Recon/research to identify \"the source of powe... 5 \n", + ".. ... .. \n", + "59 continue narrative or message amplification af... 60 \n", + "60 Sell hats, t-shirts, flags and other branded c... 61 \n", + "61 62 \n", + "62 63 \n", + "63 64 \n", + "\n", + "[64 rows x 5 columns]" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Generate minimal sqlite database from the Amitt variables\n", + "conn = sql.connect('test_amitt_sqlite.db')\n", + "\n", + "def add_table(dataframe, tablename, columns): \n", + " # Create sql table\n", + " colnames = ', '.join(['{} TEXT NOT NULL'.format(col) for col in columns])\n", + " conn.execute(\"DROP TABLE IF EXISTS {}\".format(tablename))\n", + " conn.execute('''CREATE TABLE {} (id INTEGER PRIMARY KEY AUTOINCREMENT, {});'''.format(tablename, colnames))\n", + " #populate table from dataframe\n", + " newtable = dataframe[columns].copy().applymap(str)\n", + " newtable['id'] = range(1,len(newtable)+1)\n", + " newtable.to_sql(tablename, conn, index=False, if_exists='append')\n", + " conn.commit()\n", + " return newtable\n", + "\n", + "#newtable = add_table(amitt.df_actortypes, 'actor_type', ['amitt_id', 'sector_id', 'framework_id', 'name', 'summary'])\n", + "# counter\n", + "# dataset\n", + "# framework\n", + "# incident\n", + "# metatechnique\n", + "newtable = add_table(amitt.df_phases, 'phase', ['amitt_id', 'name', 'rank', 'summary'])\n", + "# playbook\n", + "# reference\n", + "# response_type\n", + "# sector\n", + "newtable = add_table(amitt.df_tactics, 'tactic', ['amitt_id', 'phase_id', 'name', 'rank', 'summary'])\n", + "newtable = add_table(amitt.df_tasks, 'task', ['amitt_id', 'tactic_id', 'framework_id', 'name', 'summary'])\n", + "newtable = add_table(amitt.df_techniques, 'technique', ['amitt_id', 'tactic_id', 'name', 'summary'])\n", + "# techniques_counters\n", + "\n", + "conn.execute(\"DROP TABLE IF EXISTS {}\".format('user'))\n", + "conn.execute('''CREATE TABLE user (id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT NOT NULL UNIQUE, password TEXT NOT NULL);''')\n", + "\n", + "conn.close()\n", + "newtable" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "df_phases loaded\n", + "df_techniques loaded\n", + "df_tasks loaded\n", + "df_incidents loaded\n", + "df_counters loaded\n", + "df_detections loaded\n", + "df_actors loaded\n", + "df_resources loaded\n", + "df_responsetypes loaded\n", + "df_metatechniques loaded\n", + "it loaded\n", + "df_tactics loaded\n", + "df_techniques_per_tactic loaded\n", + "df_counters_per_tactic loaded\n", + "phases not loaded\n", + "tactics not loaded\n", + "techniques not loaded\n", + "counters not loaded\n", + "metatechniques not loaded\n", + "actors not loaded\n", + "resources not loaded\n", + "num_tactics not loaded\n", + "cross_counterid_techniqueid loaded\n", + "cross_counterid_resourceid loaded\n", + "cross_counterid_actorid loaded\n" + ] + } + ], + "source": [ + "# Generate full sqlite database from the Amitt variables\n", + "conn = sql.connect('amitt_sqlite.db')\n", + "for tablename, table in vars(amitt).items():\n", + " if type(table) == pd.core.frame.DataFrame:\n", + " table.applymap(str).to_sql(tablename, conn)\n", + " print('{} loaded'.format(tablename))\n", + " else:\n", + " print('{} not loaded'.format(tablename))" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "scrolled": true + }, + "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", + "
idactor_id
0C00006A033
1C00008A007
2C00009A016
2C00009A006
3C00010A020
.........
135C00219
136C00220
137C00221
138C00222
139C00223
\n", + "

166 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " id actor_id\n", + "0 C00006 A033\n", + "1 C00008 A007\n", + "2 C00009 A016\n", + "2 C00009 A006\n", + "3 C00010 A020\n", + ".. ... ...\n", + "135 C00219 \n", + "136 C00220 \n", + "137 C00221 \n", + "138 C00222 \n", + "139 C00223 \n", + "\n", + "[166 rows x 2 columns]" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "amitt.cross_counterid_actorid" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "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
............
134C00216T00181
134C00216T00571
135C00219T00241
135C00219T00261
135C00219T00251
\n", + "

717 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", + "134 C00216 T0018 1\n", + "134 C00216 T0057 1\n", + "135 C00219 T0024 1\n", + "135 C00219 T0026 1\n", + "135 C00219 T0025 1\n", + "\n", + "[717 rows x 3 columns]" + ] + }, + "execution_count": 3, + "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": 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 +} diff --git a/HTML_GENERATING_CODE/.ipynb_checkpoints/Generate_AMITT_github_files-checkpoint.ipynb b/HTML_GENERATING_CODE/.ipynb_checkpoints/Generate_AMITT_github_files-checkpoint.ipynb new file mode 100644 index 0000000..c73523d --- /dev/null +++ b/HTML_GENERATING_CODE/.ipynb_checkpoints/Generate_AMITT_github_files-checkpoint.ipynb @@ -0,0 +1,113 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generate AMITT github files\n", + "\n", + "Generate all the AMITT github files from the AMITT master spreadsheet, being careful to reatin any comments people have made below the \"don't write above this\" line in them. " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "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/C00006.md\n", + "Updating ../counters/C00006.md\n", + "updated ../metatechniques_index.md\n", + "updated ../actortypes_index.md\n", + "Updating ../actortypes/A001.md\n", + "Updating ../actortypes/A002.md\n", + "Updating ../actortypes/A003.md\n", + "Updating ../actortypes/A004.md\n", + "Updating ../actortypes/A005.md\n", + "Updating ../actortypes/A006.md\n", + "Updating ../actortypes/A007.md\n", + "Updating ../actortypes/A008.md\n", + "Updating ../actortypes/A009.md\n", + "Updating ../actortypes/A010.md\n", + "Updating ../actortypes/A011.md\n", + "Updating ../actortypes/A012.md\n", + "Updating ../actortypes/A013.md\n", + "Updating ../actortypes/A014.md\n", + "Updating ../actortypes/A015.md\n", + "Updating ../actortypes/A016.md\n", + "Updating ../actortypes/A017.md\n", + "Updating ../actortypes/A018.md\n", + "Updating ../actortypes/A019.md\n", + "Updating ../actortypes/A020.md\n", + "Updating ../actortypes/A021.md\n", + "Updating ../actortypes/A022.md\n", + "Updating ../actortypes/A023.md\n", + "Updating ../actortypes/A024.md\n", + "Updating ../actortypes/A025.md\n", + "Updating ../actortypes/A026.md\n", + "Updating ../actortypes/A027.md\n", + "Updating ../actortypes/A028.md\n", + "Updating ../actortypes/A029.md\n", + "Updating ../actortypes/A030.md\n", + "Updating ../actortypes/A031.md\n", + "Updating ../actortypes/A032.md\n", + "Updating ../actortypes/A033.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": 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 +} diff --git a/HTML_GENERATING_CODE/.ipynb_checkpoints/test_new_code-checkpoint.ipynb b/HTML_GENERATING_CODE/.ipynb_checkpoints/test_new_code-checkpoint.ipynb deleted file mode 100644 index f470ca0..0000000 --- a/HTML_GENERATING_CODE/.ipynb_checkpoints/test_new_code-checkpoint.ipynb +++ /dev/null @@ -1,283 +0,0 @@ -{ - "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", - "Updating ../tactics/TA06.md\n", - "Updating ../tactics/TA12.md\n", - "updated ../techniques_index.md\n", - "Updating ../techniques/T0025.md\n", - "Updating ../techniques/T0062.md\n", - "Updating ../techniques/T0063.md\n", - "Updating ../techniques/T0064.md\n", - "updated ../tasks_index.md\n", - "Updating ../tasks/.md\n", - "updated ../incidents_index.md\n", - "updated ../counters_index.md\n", - "updated ../metatechniques_index.md\n", - "Updating ../metatechniques/M001.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": 2, - "metadata": {}, - "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" - ] - } - ], - "source": [ - "amitt.write_amitt_frameworks()" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "updated ../amitt_blue_framework.md\n", - "updated ../amitt_blue_framework_clickable.html\n" - ] - } - ], - "source": [ - "amitt.write_amitt_blue_framework_file(outfile = '../amitt_blue_framework.md')" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "10" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "max(amitt.df_tactics['technique_ids'].apply(len))\n" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0 [T0001, T0002, T0003, T0004]\n", - "1 [T0005, T0006]\n", - "2 [T0007, T0008, T0009]\n", - "3 [T0010, T0011, T0012, T0013, T0014, T0015]\n", - "4 [T0016, T0017, T0018]\n", - "5 [T0019, T0020, T0021, T0022, T0023, T0024, T00...\n", - "6 [T0029, T0030, T0031, T0032, T0033, T0034, T00...\n", - "7 [T0039, T0040, T0041, T0042, T0043, T0044, T00...\n", - "8 [T0047, T0048, T0049, T0050, T0051, T0052, T00...\n", - "9 [T0057, T0061]\n", - "10 [T0058, T0059, T0060]\n", - "11 \n", - "Name: technique_ids, dtype: object" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "amitt.df_tactics['technique_ids']" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "12" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "len(amitt.padded_techniques_tactics_table)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "12" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "amitt.max_num_techniques_per_tactic" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'xx'" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "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 -} diff --git a/HTML_GENERATING_CODE/AMITT_code_testbed.ipynb b/HTML_GENERATING_CODE/AMITT_code_testbed.ipynb new file mode 100644 index 0000000..44d87b8 --- /dev/null +++ b/HTML_GENERATING_CODE/AMITT_code_testbed.ipynb @@ -0,0 +1,1019 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Test area for AMITT code" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "dict_keys(['df_phases', 'df_techniques', 'df_tasks', 'df_incidents', 'df_counters', 'df_detections', 'df_actortypes', 'df_resources', 'df_responsetypes', 'df_metatechniques', 'it', 'df_tactics', 'df_techniques_per_tactic', 'df_counters_per_tactic', 'phases', 'tactics', 'techniques', 'counters', 'metatechniques', 'actortypes', 'resources', 'num_tactics', 'cross_counterid_techniqueid', 'cross_counterid_resourceid', 'cross_counterid_actortypeid'])\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": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pandas as pd\n", + "import sqlite3 as sql\n", + "from generate_amitt_ttps import Amitt\n", + "\n", + "\n", + "# Generate AMITT datasets\n", + "amitt = Amitt()\n", + "\n", + "# Check which amitt variables we can see from here\n", + "print('{}'.format(vars(amitt).keys()))\n", + "vars(amitt)['tactics']" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": { + "scrolled": true + }, + "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", + " \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", + " \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", + " \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", + "
amitt_idnamemetatechniquesummaryplaybooksactortypesresources_neededhow_foundreferencesincident_idstacticresponsetypenotestechniqueslongnametactic_idtactic_namemetatechnique_idmetatechnique_name
0C00006Charge for social mediaM004 - frictionInclude a paid-for privacy option, e.g. pay Fa...A033 - social media platform owner2019-11-workshopTA01 Strategic PlanningD2 DenyC00006 - Charge for social mediaTA01Strategic PlanningM004- friction
8C00006CensorshipM005 - removalAlter and/or block the publication/disseminati...A031 - social media platform administratorgrugqTaylor81TA01 Strategic PlanningD2 DenyT0009 - Create fake experts\\nT0008 - Create fa...C00006 - CensorshipTA01Strategic PlanningM005- removal
1C00008Create shared fact-checking databaseM006 - scoringSnopes is best-known exampleA007 - factchecker2019-11-workshop\\n2019-11-searchI00049,I00050TA01 Strategic PlanningD4 DegradeTA01 - Strategic Planning\\nTA06 - Develop Cont...C00008 - Create shared fact-checking databaseTA01Strategic PlanningM006- scoring
2C00009Educate high profile influencers on best pract...M001 - resilienceA016 - influencer,A006 - educator2019-11-workshopTA02 Objective PlanningD2 DenyTA08 - Pump Priming\\nT0010 - Cultivate ignoran...C00009 - Educate high profile influencers on b...TA02Objective PlanningM001- resilience
3C00010Enhanced privacy regulation for social mediaM004 - frictionPrivacy standardsA020 - policy maker2019-11-workshopTA01 Strategic PlanningD2 DenyTA05 - Microtargeting\\nT00018 - Paid targeted adsC00010 - Enhanced privacy regulation for socia...TA01Strategic PlanningM004- friction
............................................................
135C00219Add metadata to content that’s out of the cont...M003 - daylightSteganography. Adding date, signatures etc to ...Add date and source to imagesgrugqTA06 Develop ContentD4 DegradeT0024 - Create fake videos and images\\nT0026 -...C00219 - Add metadata to content that’s out of...TA06Develop ContentM003- daylight
136C00220Develop a monitoring and intelligence planM007 - metatechniqueCounters cleanupTA01 Strategic PlanningD3 DisruptC00220 - Develop a monitoring and intelligence...TA01Strategic PlanningM007- metatechnique
137C00221Run a disinformation red team, and design miti...M007 - metatechniqueInclude PACE plans - Primary, Alternate, Conti...Counters cleanupTA01 Strategic PlanningD3 DisruptC00221 - Run a disinformation red team, and de...TA01Strategic PlanningM007- metatechnique
138C00222Tabletop simulationsM007 - metatechniqueTA02 Objective PlanningD3 DisruptC00222 - Tabletop simulationsTA02Objective PlanningM007- metatechnique
139C00223Strengthen Trust in social media platformsM001 - resilienceTA01 Strategic PlanningD3 DisruptC00223 - Strengthen Trust in social media plat...TA01Strategic PlanningM001- resilience
\n", + "

140 rows × 19 columns

\n", + "
" + ], + "text/plain": [ + " amitt_id name \\\n", + "0 C00006 Charge for social media \n", + "8 C00006 Censorship \n", + "1 C00008 Create shared fact-checking database \n", + "2 C00009 Educate high profile influencers on best pract... \n", + "3 C00010 Enhanced privacy regulation for social media \n", + ".. ... ... \n", + "135 C00219 Add metadata to content that’s out of the cont... \n", + "136 C00220 Develop a monitoring and intelligence plan \n", + "137 C00221 Run a disinformation red team, and design miti... \n", + "138 C00222 Tabletop simulations \n", + "139 C00223 Strengthen Trust in social media platforms \n", + "\n", + " metatechnique summary \\\n", + "0 M004 - friction Include a paid-for privacy option, e.g. pay Fa... \n", + "8 M005 - removal Alter and/or block the publication/disseminati... \n", + "1 M006 - scoring Snopes is best-known example \n", + "2 M001 - resilience \n", + "3 M004 - friction Privacy standards \n", + ".. ... ... \n", + "135 M003 - daylight Steganography. Adding date, signatures etc to ... \n", + "136 M007 - metatechnique \n", + "137 M007 - metatechnique Include PACE plans - Primary, Alternate, Conti... \n", + "138 M007 - metatechnique \n", + "139 M001 - resilience \n", + "\n", + " playbooks \\\n", + "0 \n", + "8 \n", + "1 \n", + "2 \n", + "3 \n", + ".. ... \n", + "135 Add date and source to images \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " actortypes resources_needed \\\n", + "0 A033 - social media platform owner \n", + "8 A031 - social media platform administrator \n", + "1 A007 - factchecker \n", + "2 A016 - influencer,A006 - educator \n", + "3 A020 - policy maker \n", + ".. ... ... \n", + "135 \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " how_found references incident_ids \\\n", + "0 2019-11-workshop \n", + "8 grugq Taylor81 \n", + "1 2019-11-workshop\\n2019-11-search I00049,I00050 \n", + "2 2019-11-workshop \n", + "3 2019-11-workshop \n", + ".. ... ... ... \n", + "135 grugq \n", + "136 Counters cleanup \n", + "137 Counters cleanup \n", + "138 \n", + "139 \n", + "\n", + " tactic responsetype notes \\\n", + "0 TA01 Strategic Planning D2 Deny \n", + "8 TA01 Strategic Planning D2 Deny \n", + "1 TA01 Strategic Planning D4 Degrade \n", + "2 TA02 Objective Planning D2 Deny \n", + "3 TA01 Strategic Planning D2 Deny \n", + ".. ... ... ... \n", + "135 TA06 Develop Content D4 Degrade \n", + "136 TA01 Strategic Planning D3 Disrupt \n", + "137 TA01 Strategic Planning D3 Disrupt \n", + "138 TA02 Objective Planning D3 Disrupt \n", + "139 TA01 Strategic Planning D3 Disrupt \n", + "\n", + " techniques \\\n", + "0 \n", + "8 T0009 - Create fake experts\\nT0008 - Create fa... \n", + "1 TA01 - Strategic Planning\\nTA06 - Develop Cont... \n", + "2 TA08 - Pump Priming\\nT0010 - Cultivate ignoran... \n", + "3 TA05 - Microtargeting\\nT00018 - Paid targeted ads \n", + ".. ... \n", + "135 T0024 - Create fake videos and images\\nT0026 -... \n", + "136 \n", + "137 \n", + "138 \n", + "139 \n", + "\n", + " longname tactic_id \\\n", + "0 C00006 - Charge for social media TA01 \n", + "8 C00006 - Censorship TA01 \n", + "1 C00008 - Create shared fact-checking database TA01 \n", + "2 C00009 - Educate high profile influencers on b... TA02 \n", + "3 C00010 - Enhanced privacy regulation for socia... TA01 \n", + ".. ... ... \n", + "135 C00219 - Add metadata to content that’s out of... TA06 \n", + "136 C00220 - Develop a monitoring and intelligence... TA01 \n", + "137 C00221 - Run a disinformation red team, and de... TA01 \n", + "138 C00222 - Tabletop simulations TA02 \n", + "139 C00223 - Strengthen Trust in social media plat... TA01 \n", + "\n", + " tactic_name metatechnique_id metatechnique_name \n", + "0 Strategic Planning M004 - friction \n", + "8 Strategic Planning M005 - removal \n", + "1 Strategic Planning M006 - scoring \n", + "2 Objective Planning M001 - resilience \n", + "3 Strategic Planning M004 - friction \n", + ".. ... ... ... \n", + "135 Develop Content M003 - daylight \n", + "136 Strategic Planning M007 - metatechnique \n", + "137 Strategic Planning M007 - metatechnique \n", + "138 Objective Planning M007 - metatechnique \n", + "139 Strategic Planning M001 - resilience \n", + "\n", + "[140 rows x 19 columns]" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "amitt.df_counters" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": { + "scrolled": true + }, + "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", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
amitt_idtactic_idnamesummaryid
0T0001TA015Ds (dismiss, distort, distract, dismay, divide)Nimmo's \"4Ds of propaganda\": dismiss, distort,...1
1T0002TA01Facilitate State PropagandaOrganize citizens around pro-state messaging. ...2
2T0003TA01Leverage Existing NarrativesUse or adapt existing narrative themes, where ...3
3T0004TA01Competing NarrativesAdvance competing narratives connected to same...4
4T0005TA02Center of Gravity AnalysisRecon/research to identify \"the source of powe...5
..................
59T0060TA11Continue to amplifycontinue narrative or message amplification af...60
60T0061TA10Sell merchandisingSell hats, t-shirts, flags and other branded c...61
61T0062TA12Behaviour changes62
62T0063TA12Message reach63
63T0064TA12Social media engagement64
\n", + "

64 rows × 5 columns

\n", + "
" + ], + "text/plain": [ + " amitt_id tactic_id name \\\n", + "0 T0001 TA01 5Ds (dismiss, distort, distract, dismay, divide) \n", + "1 T0002 TA01 Facilitate State Propaganda \n", + "2 T0003 TA01 Leverage Existing Narratives \n", + "3 T0004 TA01 Competing Narratives \n", + "4 T0005 TA02 Center of Gravity Analysis \n", + ".. ... ... ... \n", + "59 T0060 TA11 Continue to amplify \n", + "60 T0061 TA10 Sell merchandising \n", + "61 T0062 TA12 Behaviour changes \n", + "62 T0063 TA12 Message reach \n", + "63 T0064 TA12 Social media engagement \n", + "\n", + " summary id \n", + "0 Nimmo's \"4Ds of propaganda\": dismiss, distort,... 1 \n", + "1 Organize citizens around pro-state messaging. ... 2 \n", + "2 Use or adapt existing narrative themes, where ... 3 \n", + "3 Advance competing narratives connected to same... 4 \n", + "4 Recon/research to identify \"the source of powe... 5 \n", + ".. ... .. \n", + "59 continue narrative or message amplification af... 60 \n", + "60 Sell hats, t-shirts, flags and other branded c... 61 \n", + "61 62 \n", + "62 63 \n", + "63 64 \n", + "\n", + "[64 rows x 5 columns]" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Generate minimal sqlite database from the Amitt variables\n", + "conn = sql.connect('test_amitt_sqlite.db')\n", + "\n", + "def add_table(dataframe, tablename, columns): \n", + " # Create sql table\n", + " colnames = ', '.join(['{} TEXT NOT NULL'.format(col) for col in columns])\n", + " conn.execute(\"DROP TABLE IF EXISTS {}\".format(tablename))\n", + " conn.execute('''CREATE TABLE {} (id INTEGER PRIMARY KEY AUTOINCREMENT, {});'''.format(tablename, colnames))\n", + " #populate table from dataframe\n", + " newtable = dataframe[columns].copy().applymap(str)\n", + " newtable['id'] = range(1,len(newtable)+1)\n", + " newtable.to_sql(tablename, conn, index=False, if_exists='append')\n", + " conn.commit()\n", + " return newtable\n", + "\n", + "#newtable = add_table(amitt.df_actortypes, 'actor_type', ['amitt_id', 'sector_id', 'framework_id', 'name', 'summary'])\n", + "# counter\n", + "# dataset\n", + "# framework\n", + "# incident\n", + "# metatechnique\n", + "newtable = add_table(amitt.df_phases, 'phase', ['amitt_id', 'name', 'rank', 'summary'])\n", + "# playbook\n", + "# reference\n", + "# response_type\n", + "# sector\n", + "newtable = add_table(amitt.df_tactics, 'tactic', ['amitt_id', 'phase_id', 'name', 'rank', 'summary'])\n", + "newtable = add_table(amitt.df_tasks, 'task', ['amitt_id', 'tactic_id', 'framework_id', 'name', 'summary'])\n", + "newtable = add_table(amitt.df_techniques, 'technique', ['amitt_id', 'tactic_id', 'name', 'summary'])\n", + "# techniques_counters\n", + "\n", + "conn.execute(\"DROP TABLE IF EXISTS {}\".format('user'))\n", + "conn.execute('''CREATE TABLE user (id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT NOT NULL UNIQUE, password TEXT NOT NULL);''')\n", + "\n", + "conn.close()\n", + "newtable" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "df_phases loaded\n", + "df_techniques loaded\n", + "df_tasks loaded\n", + "df_incidents loaded\n", + "df_counters loaded\n", + "df_detections loaded\n", + "df_actors loaded\n", + "df_resources loaded\n", + "df_responsetypes loaded\n", + "df_metatechniques loaded\n", + "it loaded\n", + "df_tactics loaded\n", + "df_techniques_per_tactic loaded\n", + "df_counters_per_tactic loaded\n", + "phases not loaded\n", + "tactics not loaded\n", + "techniques not loaded\n", + "counters not loaded\n", + "metatechniques not loaded\n", + "actors not loaded\n", + "resources not loaded\n", + "num_tactics not loaded\n", + "cross_counterid_techniqueid loaded\n", + "cross_counterid_resourceid loaded\n", + "cross_counterid_actorid loaded\n" + ] + } + ], + "source": [ + "# Generate full sqlite database from the Amitt variables\n", + "conn = sql.connect('amitt_sqlite.db')\n", + "for tablename, table in vars(amitt).items():\n", + " if type(table) == pd.core.frame.DataFrame:\n", + " table.applymap(str).to_sql(tablename, conn)\n", + " print('{} loaded'.format(tablename))\n", + " else:\n", + " print('{} not loaded'.format(tablename))" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": { + "scrolled": true + }, + "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", + "
idactor_id
0C00006A033
1C00008A007
2C00009A016
2C00009A006
3C00010A020
.........
135C00219
136C00220
137C00221
138C00222
139C00223
\n", + "

166 rows × 2 columns

\n", + "
" + ], + "text/plain": [ + " id actor_id\n", + "0 C00006 A033\n", + "1 C00008 A007\n", + "2 C00009 A016\n", + "2 C00009 A006\n", + "3 C00010 A020\n", + ".. ... ...\n", + "135 C00219 \n", + "136 C00220 \n", + "137 C00221 \n", + "138 C00222 \n", + "139 C00223 \n", + "\n", + "[166 rows x 2 columns]" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "amitt.cross_counterid_actorid" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "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
............
134C00216T00181
134C00216T00571
135C00219T00241
135C00219T00261
135C00219T00251
\n", + "

717 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", + "134 C00216 T0018 1\n", + "134 C00216 T0057 1\n", + "135 C00219 T0024 1\n", + "135 C00219 T0026 1\n", + "135 C00219 T0025 1\n", + "\n", + "[717 rows x 3 columns]" + ] + }, + "execution_count": 3, + "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": 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 +} diff --git a/HTML_GENERATING_CODE/Generate_AMITT_github_files.ipynb b/HTML_GENERATING_CODE/Generate_AMITT_github_files.ipynb new file mode 100644 index 0000000..c73523d --- /dev/null +++ b/HTML_GENERATING_CODE/Generate_AMITT_github_files.ipynb @@ -0,0 +1,113 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generate AMITT github files\n", + "\n", + "Generate all the AMITT github files from the AMITT master spreadsheet, being careful to reatin any comments people have made below the \"don't write above this\" line in them. " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "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/C00006.md\n", + "Updating ../counters/C00006.md\n", + "updated ../metatechniques_index.md\n", + "updated ../actortypes_index.md\n", + "Updating ../actortypes/A001.md\n", + "Updating ../actortypes/A002.md\n", + "Updating ../actortypes/A003.md\n", + "Updating ../actortypes/A004.md\n", + "Updating ../actortypes/A005.md\n", + "Updating ../actortypes/A006.md\n", + "Updating ../actortypes/A007.md\n", + "Updating ../actortypes/A008.md\n", + "Updating ../actortypes/A009.md\n", + "Updating ../actortypes/A010.md\n", + "Updating ../actortypes/A011.md\n", + "Updating ../actortypes/A012.md\n", + "Updating ../actortypes/A013.md\n", + "Updating ../actortypes/A014.md\n", + "Updating ../actortypes/A015.md\n", + "Updating ../actortypes/A016.md\n", + "Updating ../actortypes/A017.md\n", + "Updating ../actortypes/A018.md\n", + "Updating ../actortypes/A019.md\n", + "Updating ../actortypes/A020.md\n", + "Updating ../actortypes/A021.md\n", + "Updating ../actortypes/A022.md\n", + "Updating ../actortypes/A023.md\n", + "Updating ../actortypes/A024.md\n", + "Updating ../actortypes/A025.md\n", + "Updating ../actortypes/A026.md\n", + "Updating ../actortypes/A027.md\n", + "Updating ../actortypes/A028.md\n", + "Updating ../actortypes/A029.md\n", + "Updating ../actortypes/A030.md\n", + "Updating ../actortypes/A031.md\n", + "Updating ../actortypes/A032.md\n", + "Updating ../actortypes/A033.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": 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 +} diff --git a/HTML_GENERATING_CODE/__pycache__/generate_amitt_ttps.cpython-38.pyc b/HTML_GENERATING_CODE/__pycache__/generate_amitt_ttps.cpython-38.pyc index 9f4fab4fc806dc0d78e6b866b311a15b5a779b42..69ec091a761036ac05a5ee9208659c3a9eaf0745 100644 GIT binary patch delta 964 zcmY+DO-vI(6vsPDTiWgJmNp_35?Cl;TMD$6k5;+p6%RyXqAOaL&Jrrp;&jmzwqhh6 z6dTb|4;&PXT>aXE#>7P9O%2iDfe<2z7h_^#JeU|y&Q42P=kVW|_xAUHGm|%;o`Xj( zfN+%OSrZx8(dW}kS8oa#;Cg!bn#HVUrxcyDGPY`)JegG0ICcu>SyoP{X=LQ^g7A{H zmzP7%J3J4^;-!fG-Km0x#so@dGVw%uI;AQo2`lm$SIE}rE|`;qswBo!$#c`nrmGOs zpLyQfy?v}E9x#fEM%9d{iANM;NoFL|Wej}R+Y#YPh2u%+XHXM46KW^kG&pPqQ&cPH?pjG0sij3kJRYs};C00!r8WLqC`xxm=7{?#_f0#F! zB*d=<8o(;v80aO+M*~Eo(Lg8il1}n-=z-BytA-pmgfnD`h-9BSD`!X3>4^-!747m$ z+!#tvma4E9#+6iDhERciN6`d-jb@4aNbDfd`>_aE)z@Pq3}E!o;9I94ag}cZ{~6lm TB?k#5Q;8&0QmVdn=(q3>M94A< delta 880 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 literal 0 HcmV?d00001 diff --git a/HTML_GENERATING_CODE/generate_amitt_ttps.py b/HTML_GENERATING_CODE/generate_amitt_ttps.py index 6585a14..f366df3 100644 --- a/HTML_GENERATING_CODE/generate_amitt_ttps.py +++ b/HTML_GENERATING_CODE/generate_amitt_ttps.py @@ -29,7 +29,7 @@ Reads 1 excel file: ../AMITT_MASTER_DATA/AMITT_TTPs_MASTER.xlsx with sheets: * incidenttechniques * tactics * countermeasures -* actors +* actortypes * resources * responsetypes @@ -95,13 +95,13 @@ class Amitt: self.df_techniques = metadata['techniques'] self.df_tasks = metadata['tasks'] self.df_incidents = metadata['incidents'] - self.df_counters = metadata['countermeasures'].sort_values('id') + self.df_counters = metadata['countermeasures'].sort_values('amitt_id') self.df_counters[['tactic_id', 'tactic_name']] = self.df_counters['tactic'].str.split(' ', 1, expand=True) self.df_counters[['metatechnique_id', 'metatechnique_name']] = self.df_counters['metatechnique'].str.split(' ', 1, expand=True) self.df_detections = metadata['detections'] self.df_detections[['tactic_id', 'tactic_name']] = self.df_detections['tactic'].str.split(' ', 1, expand=True) # self.df_detections[['metatechnique_id', 'metatechnique_name']] = self.df_detections['metatechnique'].str.split(' ', 1, expand=True) #FIXIT - self.df_actors = metadata['actors'] + self.df_actortypes = metadata['actortypes'] self.df_resources = metadata['resources'] self.df_responsetypes = metadata['responsetypes'] self.df_metatechniques = metadata['metatechniques'] @@ -109,10 +109,10 @@ class Amitt: self.df_tactics = metadata['tactics'] # Add columns containing lists of techniques and counters to the tactics dataframe - self.df_techniques_per_tactic = self.df_techniques.groupby('tactic_id')['id'].apply(list).reset_index().rename({'id':'technique_ids'}, axis=1) - self.df_counters_per_tactic = self.df_counters.groupby('tactic_id')['id'].apply(list).reset_index().rename({'id':'counter_ids'}, axis=1) - self.df_tactics = self.df_tactics.merge(self.df_techniques_per_tactic, left_on='id', right_on='tactic_id', how='left').fillna('').drop('tactic_id', axis=1) - self.df_tactics = self.df_tactics.merge(self.df_counters_per_tactic, left_on='id', right_on='tactic_id', how='left').fillna('').drop('tactic_id', axis=1) + self.df_techniques_per_tactic = self.df_techniques.groupby('tactic_id')['amitt_id'].apply(list).reset_index().rename({'amitt_id':'technique_ids'}, axis=1) + self.df_counters_per_tactic = self.df_counters.groupby('tactic_id')['amitt_id'].apply(list).reset_index().rename({'amitt_id':'counter_ids'}, axis=1) + self.df_tactics = self.df_tactics.merge(self.df_techniques_per_tactic, left_on='amitt_id', right_on='tactic_id', how='left').fillna('').drop('tactic_id', axis=1) + self.df_tactics = self.df_tactics.merge(self.df_counters_per_tactic, left_on='amitt_id', right_on='tactic_id', how='left').fillna('').drop('tactic_id', axis=1) # Add simple dictionaries (id -> name) for objects self.phases = self.make_object_dictionary(self.df_phases) @@ -120,38 +120,38 @@ class Amitt: self.techniques = self.make_object_dictionary(self.df_techniques) self.counters = self.make_object_dictionary(self.df_counters) self.metatechniques = self.make_object_dictionary(self.df_metatechniques) - self.actors = self.make_object_dictionary(self.df_actors) + self.actortypes = self.make_object_dictionary(self.df_actortypes) self.resources = self.make_object_dictionary(self.df_resources) # Create the data table for each framework file self.num_tactics = len(self.df_tactics) # Create counters cross-tables - self.cross_counterid_techniqueid = self.create_cross_table(self.df_counters[['id', 'techniques']], + self.cross_counterid_techniqueid = self.create_cross_table(self.df_counters[['amitt_id', 'techniques']], 'techniques', 'technique', '\n') - self.cross_counterid_resourceid = self.create_cross_table(self.df_counters[['id', 'resources_needed']], + self.cross_counterid_resourceid = self.create_cross_table(self.df_counters[['amitt_id', 'resources_needed']], 'resources_needed', 'resource', ',') - self.cross_counterid_actorid = self.create_cross_table(self.df_counters[['id', 'actors']], - 'actors', 'actor', ',') + self.cross_counterid_actortypeid = self.create_cross_table(self.df_counters[['amitt_id', 'actortypes']], + 'actortypes', 'actortype', ',') def create_incident_technique_crosstable(self, it_metadata): # Generate full cross-table between incidents and techniques it = it_metadata - it.index=it['id'] - it = it['technique_ids'].str.split(',').apply(lambda x: pd.Series(x)).stack().reset_index(level=1, drop=True).to_frame('technique_id').reset_index().merge(it.drop('id', axis=1).reset_index()).drop('technique_ids', axis=1) - it = it.merge(self.df_incidents[['id','name']], - left_on='incident_id', right_on='id', + it.index=it['amitt_id'] + it = it['technique_ids'].str.split(',').apply(lambda x: pd.Series(x)).stack().reset_index(level=1, drop=True).to_frame('technique_id').reset_index().merge(it.drop('amitt_id', axis=1).reset_index()).drop('technique_ids', axis=1) + it = it.merge(self.df_incidents[['amitt_id','name']], + left_on='incident_id', right_on='amitt_id', suffixes=['','_incident']).drop('incident_id', axis=1) - it = it.merge(self.df_techniques[['id','name']], - left_on='technique_id', right_on='id', + it = it.merge(self.df_techniques[['amitt_id','name']], + left_on='technique_id', right_on='amitt_id', suffixes=['','_technique']).drop('technique_id', axis=1) return(it) def make_object_dictionary(self, df): - return(pd.Series(df.name.values,index=df.id).to_dict()) + return(pd.Series(df.name.values,index=df.amitt_id).to_dict()) def create_cross_table(self, df, col, newcol, divider=','): @@ -176,10 +176,10 @@ class Amitt: | -------- | -------------------- | ''' incirow = '| [{0} {1}](../incidents/{0}.md) | {2} |\n' - its = self.it[self.it['id_technique']==techniqueid] - for index, row in its[['id_incident', 'name_incident']].drop_duplicates().sort_values('id_incident').iterrows(): - techstring = ', '.join(its[its['id_incident']==row['id_incident']]['name'].to_list()) - incidentstr += incirow.format(row['id_incident'], row['name_incident'], techstring) + its = self.it[self.it['amitt_id_technique']==techniqueid] + for index, row in its[['amitt_id_incident', 'name_incident']].drop_duplicates().sort_values('amitt_id_incident').iterrows(): + techstring = ', '.join(its[its['amitt_id_incident']==row['amitt_id_incident']]['name'].to_list()) + incidentstr += incirow.format(row['amitt_id_incident'], row['name_incident'], techstring) return incidentstr @@ -190,10 +190,10 @@ class Amitt: | --------- | ------------------------- | ''' techrow = '| [{0} {1}](../techniques/{0}.md) | {2} {3} |\n' - techlist = self.it[self.it['id_incident'] == incidentid] - for index, row in techlist.sort_values('id_technique').iterrows(): - techstr += techrow.format(row['id_technique'], row['name_technique'], - row['id'], row['name']) + techlist = self.it[self.it['amitt_id_incident'] == incidentid] + for index, row in techlist.sort_values('amitt_id_technique').iterrows(): + techstr += techrow.format(row['amitt_id_technique'], row['name_technique'], + row['amitt_id'], row['name']) return techstr @@ -205,8 +205,8 @@ class Amitt: ''' tactic_tasks = self.df_tasks[self.df_tasks['tactic_id']==tactic_id] task_string = '| [{0} {1}](../tasks/{0}.md) |\n' - for index, row in tactic_tasks.sort_values('id').iterrows(): - table_string += task_string.format(row['id'], row['name']) + for index, row in tactic_tasks.sort_values('amitt_id').iterrows(): + table_string += task_string.format(row['amitt_id'], row['name']) return table_string @@ -218,8 +218,8 @@ class Amitt: ''' tactic_techniques = self.df_techniques[self.df_techniques['tactic_id']==tactic_id] row_string = '| [{0} {1}](../techniques/{0}.md) |\n' - for index, row in tactic_techniques.sort_values('id').iterrows(): - table_string += row_string.format(row['id'], row['name']) + for index, row in tactic_techniques.sort_values('amitt_id').iterrows(): + table_string += row_string.format(row['amitt_id'], row['name']) return table_string @@ -230,8 +230,8 @@ class Amitt: ''' object_counters = self.df_counters[self.df_counters[objectcolumn]==object_id] row_string = '| [{0} {1}](../counters/{0}.md) | {2} |\n' - for index, row in object_counters.sort_values(['responsetype', 'id']).iterrows(): - table_string += row_string.format(row['id'], row['name'], row['responsetype']) + for index, row in object_counters.sort_values(['responsetype', 'amitt_id']).iterrows(): + table_string += row_string.format(row['amitt_id'], row['name'], row['responsetype']) return table_string def create_technique_counters_string(self, technique_id): @@ -240,34 +240,34 @@ class Amitt: | -------- | -------------- | ''' technique_counters = self.cross_counterid_techniqueid[self.cross_counterid_techniqueid['technique_id']==technique_id] - technique_counters = pd.merge(technique_counters, self.df_counters[['id', 'name', 'responsetype']]) + technique_counters = pd.merge(technique_counters, self.df_counters[['amitt_id', 'name', 'responsetype']]) row_string = '| [{0} {1}](../counters/{0}.md) | {2} |\n' - for index, row in technique_counters.sort_values('id').iterrows(): - table_string += row_string.format(row['id'], row['name'], row['responsetype']) + for index, row in technique_counters.sort_values('amitt_id').iterrows(): + table_string += row_string.format(row['amitt_id'], row['name'], row['responsetype']) return table_string - def create_counter_actors_string(self, counter_id): + def create_counter_actortypes_string(self, counter_id): table_string = ''' -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | ''' - counter_actors = self.cross_counterid_actorid[self.cross_counterid_actorid['id']==counter_id] - counter_actors = pd.merge(counter_actors, self.df_actors[['id', 'name', 'sector']], left_on='actor_id', right_on='id') - row_string = '| [{0} {1}](../actors/{0}.md) | {2} |\n' - for index, row in counter_actors.sort_values('actor_id').iterrows(): - table_string += row_string.format(row['actor_id'], row['name'], row['sector']) + counter_actortypes = self.cross_counterid_actortypeid[self.cross_counterid_actortypeid['amitt_id']==counter_id] + counter_actortypes = pd.merge(counter_actortypes, self.df_actortypes[['amitt_id', 'name', 'sector']], left_on='actortype_id', right_on='amitt_id') + row_string = '| [{0} {1}](../actortypes/{0}.md) | {2} |\n' + for index, row in counter_actortypes.sort_values('actortype_id').iterrows(): + table_string += row_string.format(row['actortype_id'], row['name'], row['sector']) return table_string - def create_actor_counters_string(self, actor_id): + def create_actortype_counters_string(self, actortype_id): table_string = ''' | Counters | Response types | | -------- | -------------- | ''' - actor_counters = self.cross_counterid_actorid[self.cross_counterid_actorid['actor_id']==actor_id] - actor_counters = pd.merge(actor_counters, self.df_counters[['id', 'name', 'responsetype']]) + actortype_counters = self.cross_counterid_actortypeid[self.cross_counterid_actortypeid['actortype_id']==actortype_id] + actortype_counters = pd.merge(actortype_counters, self.df_counters[['amitt_id', 'name', 'responsetype']]) row_string = '| [{0} {1}](../counters/{0}.md) | {2} |\n' - for index, row in actor_counters.sort_values('id').iterrows(): - table_string += row_string.format(row['id'], row['name'], row['responsetype']) + for index, row in actortype_counters.sort_values('amitt_id').iterrows(): + table_string += row_string.format(row['amitt_id'], row['name'], row['responsetype']) return table_string def create_resource_counters_string(self, resource_id): @@ -276,10 +276,10 @@ class Amitt: | -------- | -------------- | ''' resource_counters = self.cross_counterid_resourceid[self.cross_counterid_resourceid['resource_id']==resource_id] - resource_counters = pd.merge(resource_counters, self.df_counters[['id', 'name', 'responsetype']]) + resource_counters = pd.merge(resource_counters, self.df_counters[['amitt_id', 'name', 'responsetype']]) row_string = '| [{0} {1}](../counters/{0}.md) | {2} |\n' - for index, row in actor_counters.sort_values('id').iterrows(): - table_string += row_string.format(row['id'], row['name'], row['responsetype']) + for index, row in actortype_counters.sort_values('amitt_id').iterrows(): + table_string += row_string.format(row['amitt_id'], row['name'], row['responsetype']) return table_string @@ -290,8 +290,8 @@ class Amitt: ''' # tactic_counters = self.df_counters[self.df_counters['tactic_id']==tactic_id] # row_string = '| {0} | [{1} {2}](../counters/{1}.md) |\n' - # for index, row in tactic_counters.sort_values(['responsetype', 'id']).iterrows(): - # table_string += row_string.format(row['responsetype'], row['id'], row['name']) + # for index, row in tactic_counters.sort_values(['responsetype', 'amitt_id']).iterrows(): + # table_string += row_string.format(row['responsetype'], row['amitt_id'], row['name']) return table_string def create_counter_techniques_string(self, counter_id): @@ -299,10 +299,10 @@ class Amitt: | Counters these Techniques | | ------------------------- | ''' - counter_techniques = self.cross_counterid_techniqueid[self.cross_counterid_techniqueid['id']==counter_id] - counter_techniques = pd.merge(counter_techniques, self.df_techniques[['id', 'name']].rename(columns={'id': 'technique_id'})) + counter_techniques = self.cross_counterid_techniqueid[self.cross_counterid_techniqueid['amitt_id']==counter_id] + counter_techniques = pd.merge(counter_techniques, self.df_techniques[['amitt_id', 'name']].rename(columns={'amitt_id': 'technique_id'})) row_string = '| [{0} {1}](../techniques/{0}.md) |\n' - for index, row in counter_techniques.sort_values('id').iterrows(): + for index, row in counter_techniques.sort_values('amitt_id').iterrows(): table_string += row_string.format(row['technique_id'], row['name']) return table_string @@ -313,15 +313,15 @@ class Amitt: ''' # tactic_counters = self.df_counters[self.df_counters['tactic_id']==tactic_id] # row_string = '| {0} | [{1} {2}](../counters/{1}.md) |\n' - # for index, row in tactic_counters.sort_values(['responsetype', 'id']).iterrows(): - # table_string += row_string.format(row['responsetype'], row['id'], row['name']) + # for index, row in tactic_counters.sort_values(['responsetype', 'amitt_id']).iterrows(): + # table_string += row_string.format(row['responsetype'], row['amitt_id'], row['name']) return table_string def write_object_index_to_file(self, objectname, objectcols, dfobject, outfile): ''' Write HTML version of incident list to markdown file - Assumes that dfobject has columns named 'id' and 'name' + Assumes that dfobject has columns named 'amitt_id' and 'name' ''' html = '''# AMITT {}: @@ -331,14 +331,14 @@ class Amitt: '''.format(objectname.capitalize()) # Create header row - html += '{}\n'.format('id') + html += '{}\n'.format('amitt_id') html += ''.join(['{}\n'.format(col) for col in objectcols]) html += '\n' # Add row for each object for index, row in dfobject[dfobject['name'].notnull()].iterrows(): html += '\n' - html += '{1}\n'.format(objectname, row['id']) + html += '{1}\n'.format(objectname, row['amitt_id']) html += ''.join(['{}\n'.format(row[col]) for col in objectcols]) html += '\n' html += '\n' @@ -379,7 +379,7 @@ class Amitt: 'incident': self.df_incidents, 'counter': self.df_counters, 'metatechnique': self.df_metatechniques, - 'actor': self.df_actors, + 'actortype': self.df_actortypes, #'resource': self.df_resources, #'responsetype': self.df_responsetypes, #'detection': self.df_detections @@ -390,12 +390,12 @@ class Amitt: 'tactic': ['name', 'summary', 'phase_id'], 'technique': ['name', 'summary', 'tactic_id'], 'task': ['name', 'summary', 'tactic_id'], - 'incident': ['name', 'type', 'Year Started', 'To country', 'Found via'], + 'incident': ['name', 'type', 'year_started', 'to_country', 'found_via'], 'counter': ['name', 'summary', 'metatechnique', 'tactic', 'responsetype'], 'detection': ['name', 'summary', 'metatechnique', 'tactic', 'responsetype'], 'responsetype': ['name', 'summary'], 'metatechnique': ['name', 'summary'], - 'actor': ['name', 'summary', 'sector'], + 'actortype': ['name', 'summary', 'sector'], 'resource': ['name', 'summary', 'resource type'] } @@ -417,7 +417,7 @@ class Amitt: # First read in the file - if it exists - and grab everything # below the "do not write about this line". Will write this # out below new metadata. - datafile = '../{}/{}.md'.format(objecttypeplural, row['id']) + datafile = '../{}/{}.md'.format(objecttypeplural, row['amitt_id']) oldmetatext = '' if os.path.exists(datafile): with open(datafile) as f: @@ -434,52 +434,52 @@ class Amitt: # Now populate datafiles with new metadata plus old userdata if objecttype == 'phase': - metatext = template.format(type='Phase', id=row['id'], name=row['name'], summary=row['summary']) + metatext = template.format(type='Phase', id=row['amitt_id'], name=row['name'], summary=row['summary']) if objecttype == 'tactic': - metatext = template.format(type = 'Tactic', id=row['id'], name=row['name'], + metatext = template.format(type = 'Tactic', id=row['amitt_id'], name=row['name'], phase=row['phase_id'], summary=row['summary'], - tasks=self.create_tactic_tasks_string(row['id']), - techniques=self.create_tactic_techniques_string(row['id']), - counters=self.create_object_counters_string('tactic_id', row['id'])) + tasks=self.create_tactic_tasks_string(row['amitt_id']), + techniques=self.create_tactic_techniques_string(row['amitt_id']), + counters=self.create_object_counters_string('tactic_id', row['amitt_id'])) if objecttype == 'task': - metatext = template.format(type='Task', id=row['id'], name=row['name'], + metatext = template.format(type='Task', id=row['amitt_id'], name=row['name'], tactic=row['tactic_id'], summary=row['summary']) if objecttype == 'technique': - metatext = template.format(type = 'Technique', id=row['id'], name=row['name'], + metatext = template.format(type = 'Technique', id=row['amitt_id'], name=row['name'], tactic=row['tactic_id'], summary=row['summary'], - incidents=self.create_technique_incidents_string(row['id']), - counters=self.create_technique_counters_string(row['id'])) + incidents=self.create_technique_incidents_string(row['amitt_id']), + counters=self.create_technique_counters_string(row['amitt_id'])) if objecttype == 'counter': - metatext = template.format(type = 'Counter', id=row['id'], name=row['name'], + metatext = template.format(type = 'Counter', id=row['amitt_id'], name=row['name'], tactic=row['tactic_id'], summary=row['summary'], - playbooks=row['playbooks'], metatechnique=row['metatechnique'], - actors=self.create_counter_actors_string(row['id']), + playbooks='', metatechnique=row['metatechnique'], + actortypes=self.create_counter_actortypes_string(row['amitt_id']), resources_needed=row['resources_needed'], - tactics=self.create_counter_tactics_string(row['id']), - techniques=self.create_counter_techniques_string(row['id']), - incidents=self.create_counter_incidents_string(row['id'])) + tactics=self.create_counter_tactics_string(row['amitt_id']), + techniques=self.create_counter_techniques_string(row['amitt_id']), + incidents=self.create_counter_incidents_string(row['amitt_id'])) if objecttype == 'incident': - metatext = template.format(type = 'Incident', id=row['id'], name=row['name'], + metatext = template.format(type = 'Incident', id=row['amitt_id'], name=row['name'], incidenttype=row['type'], summary=row['summary'], - yearstarted=row['Year Started'], - fromcountry=row['From country'], - tocountry=row['To country'], - foundvia=row['Found via'], - dateadded=row['When added'], - techniques=self.create_incident_techniques_string(row['id'])) - if objecttype == 'actor': - metatext = template.format(type = 'Actor', id=row['id'], name=row['name'], + yearstarted=row['year_started'], + fromcountry=row['from_country'], + tocountry=row['to_country'], + foundvia=row['found_via'], + dateadded=row['when_added'], + techniques=self.create_incident_techniques_string(row['amitt_id'])) + if objecttype == 'actortype': + metatext = template.format(type = 'Actor', id=row['amitt_id'], name=row['name'], summary=row['summary'], sector=row['sector'], viewpoint=row['viewpoint'], - counters=self.create_actor_counters_string(row['id'])) + counters=self.create_actortype_counters_string(row['amitt_id'])) if objecttype == 'resource': - metatext = template.format(type = 'Resource', id=row['id'], name=row['name'], + metatext = template.format(type = 'Resource', id=row['amitt_id'], name=row['name'], summary=row['summary'], resource_type=row['resource_type'], - counters=self.create_resource_counters_string(row['id'])) + counters=self.create_resource_counters_string(row['amitt_id'])) if objecttype == 'metatechnique': - metatext = template.format(type='Metatechnique', id=row['id'], name=row['name'], + metatext = template.format(type='Metatechnique', id=row['amitt_id'], name=row['name'], summary=row['summary'], - counters=self.create_object_counters_string('metatechnique_id', row['id'])) + counters=self.create_object_counters_string('metatechnique_id', row['amitt_id'])) # Make sure the user data goes in if (metatext + warntext) != oldmetatext: @@ -502,7 +502,7 @@ class Amitt: arr = [['' for i in range(self.num_tactics)] for j in range(numrows)] for index, tactic in self.df_tactics.iterrows(): arr[0][index] = tactic['phase_id'] - arr[1][index] = tactic['id'] + arr[1][index] = tactic['amitt_id'] if tactic[ttp_col] == '': continue for index2, technique in enumerate(tactic[ttp_col]): @@ -643,14 +643,14 @@ function handleTechniqueClick(box) {{ def print_technique_incidents(self): - for id_technique in self.df_techniques['id'].to_list(): + for id_technique in self.df_techniques['amitt_id'].to_list(): print('{}\n{}'.format(id_technique, self.create_incidentstring(id_technique))) return def print_incident_techniques(self): - for id_incident in self.df_incidents['id'].to_list(): + for id_incident in self.df_incidents['amitt_id'].to_list(): print('{}\n{}'.format(id_incident, self.create_techstring(id_incident))) return @@ -669,10 +669,10 @@ function handleTechniqueClick(box) {{ def analyse_coverage(self, technique_id_list, counter_id_list): ct = self.cross_counterid_techniqueid.copy() - ct = ct[ct['technique_id'].isin(self.df_techniques['id'].to_list()) & ct['id'].isin(self.df_counters['id'].to_list())] + ct = ct[ct['technique_id'].isin(self.df_techniques['amitt_id'].to_list()) & ct['amitt_id'].isin(self.df_counters['amitt_id'].to_list())] possible_counters_for_techniques = ct[ct['technique_id'].isin(technique_id_list)] possible_techniques_for_counters = ct[ct['technique_id'].isin(counter_id_list)] - coverage = ct[(ct['id'].isin(counter_id_list)) & (ct['technique_id'].isin(technique_id_list))] + coverage = ct[(ct['amitt_id'].isin(counter_id_list)) & (ct['technique_id'].isin(technique_id_list))] return coverage, possible_counters_for_techniques, possible_techniques_for_counters @@ -714,7 +714,7 @@ function handleTechniqueClick(box) {{ ''' Write course of action matrix for tactics vs responsetype ''' - counts_table = pd.pivot_table(self.df_counters[['responsetype', 'tactic_id','id']], + counts_table = pd.pivot_table(self.df_counters[['responsetype', 'tactic_id','amitt_id']], index='tactic_id', columns='responsetype', aggfunc=len, fill_value=0) counts_table['TOTALS'] = counts_table.sum(axis=1) @@ -725,7 +725,7 @@ function handleTechniqueClick(box) {{ def write_metatechniques_responsetype_table_file(self, outfile = '../metatechniques_by_responsetype_table.md'): - counts_table = pd.pivot_table(self.df_counters[['responsetype', 'metatechnique_id','id']], + counts_table = pd.pivot_table(self.df_counters[['responsetype', 'metatechnique_id','amitt_id']], index='metatechnique_id', columns='responsetype', aggfunc=len, fill_value=0) counts_table['TOTALS'] = counts_table.sum(axis=1) @@ -737,7 +737,7 @@ function handleTechniqueClick(box) {{ def write_resources_responsetype_table_file(self, outfile = '../resources_by_responsetype_table.md'): # dirty hack because there are lots of -blanks?- in the cross-table that should have been filtered out - crosstable_with_responsetype = self.cross_counterid_resourceid.merge(self.df_counters[['id', 'responsetype']]) + crosstable_with_responsetype = self.cross_counterid_resourceid.merge(self.df_counters[['amitt_id', 'responsetype']]) crosstable_with_responsetype = crosstable_with_responsetype[crosstable_with_responsetype['responsetype'].isin(self.resources.keys())] counts_table = pd.pivot_table(crosstable_with_responsetype, index='resource_id', columns='responsetype', aggfunc=len, diff --git a/HTML_GENERATING_CODE/template_actor.md b/HTML_GENERATING_CODE/template_actortype.md similarity index 100% rename from HTML_GENERATING_CODE/template_actor.md rename to HTML_GENERATING_CODE/template_actortype.md diff --git a/HTML_GENERATING_CODE/template_counter.md b/HTML_GENERATING_CODE/template_counter.md index 51fb3ec..98dc36d 100644 --- a/HTML_GENERATING_CODE/template_counter.md +++ b/HTML_GENERATING_CODE/template_counter.md @@ -10,7 +10,7 @@ * **Belongs to tactic stage**: {tactic} -{actors} +{actortypes} {tactics} diff --git a/HTML_GENERATING_CODE/test_new_code.ipynb b/HTML_GENERATING_CODE/test_new_code.ipynb deleted file mode 100644 index 3aebb33..0000000 --- a/HTML_GENERATING_CODE/test_new_code.ipynb +++ /dev/null @@ -1,203 +0,0 @@ -{ - "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", - "Updating ../tactics/TA01.md\n", - "Updating ../tactics/TA06.md\n", - "Updating ../tactics/TA07.md\n", - "Updating ../tactics/TA08.md\n", - "Updating ../tactics/TA09.md\n", - "Updating ../tactics/TA11.md\n", - "Updating ../tactics/TA12.md\n", - "updated ../techniques_index.md\n", - "Updating ../techniques/T0001.md\n", - "Updating ../techniques/T0002.md\n", - "Updating ../techniques/T0003.md\n", - "Updating ../techniques/T0007.md\n", - "Updating ../techniques/T0008.md\n", - "Updating ../techniques/T0009.md\n", - "Updating ../techniques/T0010.md\n", - "Updating ../techniques/T0011.md\n", - "Updating ../techniques/T0013.md\n", - "Updating ../techniques/T0014.md\n", - "Updating ../techniques/T0015.md\n", - "Updating ../techniques/T0016.md\n", - "Updating ../techniques/T0017.md\n", - "Updating ../techniques/T0018.md\n", - "Updating ../techniques/T0020.md\n", - "Updating ../techniques/T0021.md\n", - "Updating ../techniques/T0022.md\n", - "Updating ../techniques/T0024.md\n", - "Updating ../techniques/T0025.md\n", - "Updating ../techniques/T0026.md\n", - "Updating ../techniques/T0027.md\n", - "Updating ../techniques/T0029.md\n", - "Updating ../techniques/T0039.md\n", - "Updating ../techniques/T0044.md\n", - "Updating ../techniques/T0045.md\n", - "Updating ../techniques/T0046.md\n", - "Updating ../techniques/T0048.md\n", - "Updating ../techniques/T0049.md\n", - "Updating ../techniques/T0051.md\n", - "Updating ../techniques/T0052.md\n", - "Updating ../techniques/T0053.md\n", - "Updating ../techniques/T0054.md\n", - "Updating ../techniques/T0055.md\n", - "Updating ../techniques/T0056.md\n", - "Updating ../techniques/T0057.md\n", - "Updating ../techniques/T0061.md\n", - "Updating ../techniques/T0063.md\n", - "updated ../tasks_index.md\n", - "updated ../incidents_index.md\n", - "updated ../counters_index.md\n", - "Updating ../counters/C00006.md\n", - "Updating ../counters/C00006.md\n", - "Updating ../counters/C00012.md\n", - "Updating ../counters/C00026.md\n", - "Updating ../counters/C00030.md\n", - "Updating ../counters/C00056.md\n", - "Updating ../counters/C00073.md\n", - "Updating ../counters/C00090.md\n", - "Updating ../counters/C00101.md\n", - "Updating ../counters/C00103.md\n", - "Updating ../counters/C00107.md\n", - "Updating ../counters/C00111.md\n", - "Updating ../counters/C00117.md\n", - "Updating ../counters/C00122.md\n", - "Updating ../counters/C00139.md\n", - "Updating ../counters/C00144.md\n", - "Updating ../counters/C00149.md\n", - "Updating ../counters/C00172.md\n", - "Updating ../counters/C00174.md\n", - "Updating ../counters/C00178.md\n", - "Updating ../counters/C00182.md\n", - "Updating ../counters/C00188.md\n", - "Updating ../counters/C00190.md\n", - "Updating ../counters/C00195.md\n", - "Updating ../counters/C00200.md\n", - "Updating ../counters/C00211.md\n", - "updated ../metatechniques_index.md\n", - "Updating ../metatechniques/M001.md\n", - "Updating ../metatechniques/M002.md\n", - "Updating ../metatechniques/M003.md\n", - "Updating ../metatechniques/M004.md\n", - "Updating ../metatechniques/M005.md\n", - "Updating ../metatechniques/M007.md\n", - "Updating ../metatechniques/M008.md\n", - "Updating ../metatechniques/M010.md\n", - "updated ../actors_index.md\n", - "Updating ../actors/A006.md\n", - "Updating ../actors/A018.md\n", - "Updating ../actors/A020.md\n", - "Updating ../actors/A021.md\n", - "Updating ../actors/A027.md\n", - "Updating ../actors/A028.md\n", - "Updating ../actors/A031.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": null, - "metadata": {}, - "outputs": [], - "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": null, - "metadata": {}, - "outputs": [], - "source": [ - "import pandas as pd\n", - "from generate_amitt_ttps import Amitt\n", - "amitt = Amitt()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "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": null, - "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 -} diff --git a/actortypes/A001.md b/actortypes/A001.md new file mode 100644 index 0000000..1debe11 --- /dev/null +++ b/actortypes/A001.md @@ -0,0 +1,16 @@ +# Actor A001: data scientist + +* **Summary:** Person who can wrangle data, implement machine learning algorithms etc + +* **Sector:** All + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00092 Establish a truth teller reputation score for influencers](../counters/C00092.md) | D7 Deter | +| [C00160 find and train influencers](../counters/C00160.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A002.md b/actortypes/A002.md new file mode 100644 index 0000000..78a1cef --- /dev/null +++ b/actortypes/A002.md @@ -0,0 +1,14 @@ +# Actor A002: target + +* **Summary:** Person being targeted by disinformation campaign + +* **Sector:** All + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A003.md b/actortypes/A003.md new file mode 100644 index 0000000..599fea0 --- /dev/null +++ b/actortypes/A003.md @@ -0,0 +1,15 @@ +# Actor A003: trusted authority + +* **Summary:** Influencer + +* **Sector:** All + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00128 Create friction by marking content with ridicule or other "decelerants"](../counters/C00128.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A004.md b/actortypes/A004.md new file mode 100644 index 0000000..e320d3c --- /dev/null +++ b/actortypes/A004.md @@ -0,0 +1,16 @@ +# Actor A004: activist + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00052 Infiltrate platforms](../counters/C00052.md) | D4 Degrade | +| [C00197 remove suspicious accounts](../counters/C00197.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A005.md b/actortypes/A005.md new file mode 100644 index 0000000..8e1421f --- /dev/null +++ b/actortypes/A005.md @@ -0,0 +1,15 @@ +# Actor A005: community group + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A006.md b/actortypes/A006.md new file mode 100644 index 0000000..12e5164 --- /dev/null +++ b/actortypes/A006.md @@ -0,0 +1,20 @@ +# Actor A006: educator + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00009 Educate high profile influencers on best practices](../counters/C00009.md) | D2 Deny | +| [C00011 Media literacy. Games to identify fake news](../counters/C00011.md) | D2 Deny | +| [C00051 Counter social engineering training](../counters/C00051.md) | D2 Deny | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | +| [C00188 Newsroom/Journalist training to counter influence moves](../counters/C00188.md) | D3 Disrupt | +| [C00212 build public resilience by making civil society more vibrant](../counters/C00212.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A007.md b/actortypes/A007.md new file mode 100644 index 0000000..092c683 --- /dev/null +++ b/actortypes/A007.md @@ -0,0 +1,16 @@ +# Actor A007: factchecker + +* **Summary:** Someone with the skills to verify whether information posted is factual + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00008 Create shared fact-checking database](../counters/C00008.md) | D4 Degrade | +| [C00014 Real-time updates to fact-checking database](../counters/C00014.md) | D4 Degrade | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A008.md b/actortypes/A008.md new file mode 100644 index 0000000..fced9e6 --- /dev/null +++ b/actortypes/A008.md @@ -0,0 +1,15 @@ +# Actor A008: library + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A009.md b/actortypes/A009.md new file mode 100644 index 0000000..c3cf96a --- /dev/null +++ b/actortypes/A009.md @@ -0,0 +1,15 @@ +# Actor A009: NGO + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A010.md b/actortypes/A010.md new file mode 100644 index 0000000..d0942c0 --- /dev/null +++ b/actortypes/A010.md @@ -0,0 +1,15 @@ +# Actor A010: religious organisation + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A011.md b/actortypes/A011.md new file mode 100644 index 0000000..9ea4d0b --- /dev/null +++ b/actortypes/A011.md @@ -0,0 +1,14 @@ +# Actor A011: school + +* **Summary:** + +* **Sector:** Civil Society + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A012.md b/actortypes/A012.md new file mode 100644 index 0000000..1b2f33e --- /dev/null +++ b/actortypes/A012.md @@ -0,0 +1,15 @@ +# Actor A012: account owner + +* **Summary:** Anyone who owns an account online + +* **Sector:** General Public + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00053 Delete old accounts / Remove unused social media accounts](../counters/C00053.md) | D4 Degrade | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A013.md b/actortypes/A013.md new file mode 100644 index 0000000..08828d9 --- /dev/null +++ b/actortypes/A013.md @@ -0,0 +1,15 @@ +# Actor A013: content creator + +* **Summary:** + +* **Sector:** General Public + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00111 Reduce polarisation by connecting and presenting sympathetic renditions of opposite views](../counters/C00111.md) | D4 Degrade | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A014.md b/actortypes/A014.md new file mode 100644 index 0000000..c775ea9 --- /dev/null +++ b/actortypes/A014.md @@ -0,0 +1,15 @@ +# Actor A014: elves + +* **Summary:** + +* **Sector:** General Public + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00143 (botnet) DMCA takedown requests to waste group time](../counters/C00143.md) | D4 Degrade | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A015.md b/actortypes/A015.md new file mode 100644 index 0000000..354fe0f --- /dev/null +++ b/actortypes/A015.md @@ -0,0 +1,18 @@ +# Actor A015: general public + +* **Summary:** + +* **Sector:** General Public + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00114 Don't engage with payloads](../counters/C00114.md) | D2 Deny | +| [C00124 Don't feed the trolls](../counters/C00124.md) | D3 Disrupt | +| [C00143 (botnet) DMCA takedown requests to waste group time](../counters/C00143.md) | D4 Degrade | +| [C00190 open engagement with civil society](../counters/C00190.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A016.md b/actortypes/A016.md new file mode 100644 index 0000000..7b995a1 --- /dev/null +++ b/actortypes/A016.md @@ -0,0 +1,17 @@ +# Actor A016: influencer + +* **Summary:** + +* **Sector:** General Public + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00009 Educate high profile influencers on best practices](../counters/C00009.md) | D2 Deny | +| [C00160 find and train influencers](../counters/C00160.md) | D2 Deny | +| [C00200 Respected figure (influencer) disavows misinfo](../counters/C00200.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A017.md b/actortypes/A017.md new file mode 100644 index 0000000..5e3fe25 --- /dev/null +++ b/actortypes/A017.md @@ -0,0 +1,15 @@ +# Actor A017: coordinating body + +* **Summary:** For example the DHS + +* **Sector:** Government + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A018.md b/actortypes/A018.md new file mode 100644 index 0000000..0f4c612 --- /dev/null +++ b/actortypes/A018.md @@ -0,0 +1,20 @@ +# Actor A018: government + +* **Summary:** Government agencies + +* **Sector:** Government + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00012 Platform regulation](../counters/C00012.md) | D2 Deny | +| [C00156 Better tell your country or organization story](../counters/C00156.md) | D3 Disrupt | +| [C00203 Stop offering press credentials to propaganda outlets](../counters/C00203.md) | D3 Disrupt | +| [C00205 strong dialogue between the federal government and private sector to encourage better reporting](../counters/C00205.md) | D3 Disrupt | +| [C00207 Run a competing disinformation campaign - not recommended](../counters/C00207.md) | D7 Deter | +| [C00212 build public resilience by making civil society more vibrant](../counters/C00212.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A019.md b/actortypes/A019.md new file mode 100644 index 0000000..8618295 --- /dev/null +++ b/actortypes/A019.md @@ -0,0 +1,15 @@ +# Actor A019: military + +* **Summary:** + +* **Sector:** Government + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00156 Better tell your country or organization story](../counters/C00156.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A020.md b/actortypes/A020.md new file mode 100644 index 0000000..7954d8c --- /dev/null +++ b/actortypes/A020.md @@ -0,0 +1,18 @@ +# Actor A020: policy maker + +* **Summary:** + +* **Sector:** Government + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00010 Enhanced privacy regulation for social media](../counters/C00010.md) | D2 Deny | +| [C00012 Platform regulation](../counters/C00012.md) | D2 Deny | +| [C00060 Legal action against for-profit engagement factories](../counters/C00060.md) | D3 Disrupt | +| [C00065 Reduce political targeting](../counters/C00065.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A021.md b/actortypes/A021.md new file mode 100644 index 0000000..ee85a54 --- /dev/null +++ b/actortypes/A021.md @@ -0,0 +1,21 @@ +# Actor A021: media organisation + +* **Summary:** + +* **Sector:** Media + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00017 Repair broken social connections](../counters/C00017.md) | D3 Disrupt | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | +| [C00111 Reduce polarisation by connecting and presenting sympathetic renditions of opposite views](../counters/C00111.md) | D4 Degrade | +| [C00124 Don't feed the trolls](../counters/C00124.md) | D3 Disrupt | +| [C00154 Ask media not to report false information](../counters/C00154.md) | D2 Deny | +| [C00174 Create a healthier news environment](../counters/C00174.md) | D2 Deny | +| [C00188 Newsroom/Journalist training to counter influence moves](../counters/C00188.md) | D3 Disrupt | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A022.md b/actortypes/A022.md new file mode 100644 index 0000000..e661eb1 --- /dev/null +++ b/actortypes/A022.md @@ -0,0 +1,14 @@ +# Actor A022: company + +* **Summary:** + +* **Sector:** Other Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A023.md b/actortypes/A023.md new file mode 100644 index 0000000..2f1ba24 --- /dev/null +++ b/actortypes/A023.md @@ -0,0 +1,16 @@ +# Actor A023: adtech provider + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00105 Buy more advertising than misinformation creators](../counters/C00105.md) | D3 Disrupt | +| [C00216 Use advertiser controls to stem flow of funds to bad actors](../counters/C00216.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A024.md b/actortypes/A024.md new file mode 100644 index 0000000..fa4f33e --- /dev/null +++ b/actortypes/A024.md @@ -0,0 +1,16 @@ +# Actor A024: developer + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00011 Media literacy. Games to identify fake news](../counters/C00011.md) | D2 Deny | +| [C00103 Create a bot that engages / distract trolls](../counters/C00103.md) | D5 Deceive | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A025.md b/actortypes/A025.md new file mode 100644 index 0000000..164ef8f --- /dev/null +++ b/actortypes/A025.md @@ -0,0 +1,15 @@ +# Actor A025: funding_site_admin + +* **Summary:** Funding site admin + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00155 Ban incident actors from funding sites](../counters/C00155.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A026.md b/actortypes/A026.md new file mode 100644 index 0000000..a1a3438 --- /dev/null +++ b/actortypes/A026.md @@ -0,0 +1,15 @@ +# Actor A026: games designer + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** both + + +| Counters | Response types | +| -------- | -------------- | +| [C00011 Media literacy. Games to identify fake news](../counters/C00011.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A027.md b/actortypes/A027.md new file mode 100644 index 0000000..f50a2b8 --- /dev/null +++ b/actortypes/A027.md @@ -0,0 +1,16 @@ +# Actor A027: information security + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00153 Take pre-emptive action against actors' infrastructure](../counters/C00153.md) | D3 Disrupt | +| [C00182 Redirection / malware detection/ remediation](../counters/C00182.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A028.md b/actortypes/A028.md new file mode 100644 index 0000000..68a5032 --- /dev/null +++ b/actortypes/A028.md @@ -0,0 +1,16 @@ +# Actor A028: platform administrator + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00053 Delete old accounts / Remove unused social media accounts](../counters/C00053.md) | D4 Degrade | +| [C00074 Identify and delete or rate limit identical content](../counters/C00074.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A029.md b/actortypes/A029.md new file mode 100644 index 0000000..edf59fa --- /dev/null +++ b/actortypes/A029.md @@ -0,0 +1,15 @@ +# Actor A029: server admininistrator + +* **Summary:** + +* **Sector:** Other Tech Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00131 Seize and analyse botnet servers](../counters/C00131.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A030.md b/actortypes/A030.md new file mode 100644 index 0000000..1506171 --- /dev/null +++ b/actortypes/A030.md @@ -0,0 +1,14 @@ +# Actor A030: platforms + +* **Summary:** + +* **Sector:** Social Media Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A031.md b/actortypes/A031.md new file mode 100644 index 0000000..4c56194 --- /dev/null +++ b/actortypes/A031.md @@ -0,0 +1,32 @@ +# Actor A031: social media platform adminstrator + +* **Summary:** Person with the authority to make changes to algorithms, take down content etc. + +* **Sector:** Social Media Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00006 Charge for social media](../counters/C00006.md) | D2 Deny | +| [C00006 Censorship](../counters/C00006.md) | D2 Deny | +| [C00044 Keep people from posting to social media immediately](../counters/C00044.md) | D3 Disrupt | +| [C00053 Delete old accounts / Remove unused social media accounts](../counters/C00053.md) | D4 Degrade | +| [C00074 Identify and delete or rate limit identical content](../counters/C00074.md) | D2 Deny | +| [C00097 Require use of verified identities to contribute to poll or comment](../counters/C00097.md) | D2 Deny | +| [C00098 Revocation of allowlisted or "verified" status](../counters/C00098.md) | D2 Deny | +| [C00099 Strengthen verification methods](../counters/C00099.md) | D2 Deny | +| [C00101 Create friction by rate-limiting engagement](../counters/C00101.md) | D4 Degrade | +| [C00107 Content moderation](../counters/C00107.md) | D2 Deny | +| [C00122 Content moderation](../counters/C00122.md) | D2 Deny | +| [C00133 Deplatform Account*](../counters/C00133.md) | D3 Disrupt | +| [C00135 Deplatform message groups and/or message boards](../counters/C00135.md) | D3 Disrupt | +| [C00142 Platform adds warning label and decision point when sharing content](../counters/C00142.md) | D4 Degrade | +| [C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | +| [C00148 Add random links to network graphs](../counters/C00148.md) | D4 Degrade | +| [C00172 social media source removal](../counters/C00172.md) | D2 Deny | +| [C00197 remove suspicious accounts](../counters/C00197.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A032.md b/actortypes/A032.md new file mode 100644 index 0000000..ecafbc3 --- /dev/null +++ b/actortypes/A032.md @@ -0,0 +1,15 @@ +# Actor A032: social media platform outreach + +* **Summary:** + +* **Sector:** Social Media Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes/A033.md b/actortypes/A033.md new file mode 100644 index 0000000..fa5d782 --- /dev/null +++ b/actortypes/A033.md @@ -0,0 +1,19 @@ +# Actor A033: social media platform owner + +* **Summary:** Person with authority to make changes to a social media company’s business model + +* **Sector:** Social Media Company + +* **Viewpoint:** blue + + +| Counters | Response types | +| -------- | -------------- | +| [C00006 Charge for social media](../counters/C00006.md) | D2 Deny | +| [C00006 Censorship](../counters/C00006.md) | D2 Deny | +| [C00012 Platform regulation](../counters/C00012.md) | D2 Deny | +| [C00205 strong dialogue between the federal government and private sector to encourage better reporting](../counters/C00205.md) | D3 Disrupt | +| [C00207 Run a competing disinformation campaign - not recommended](../counters/C00207.md) | D7 Deter | + + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/actortypes_index.md b/actortypes_index.md new file mode 100644 index 0000000..132b606 --- /dev/null +++ b/actortypes_index.md @@ -0,0 +1,208 @@ +# AMITT Actortypes: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
amitt_idnamesummarysector
A001data scientist Person who can wrangle data, implement machine learning algorithms etcAll
A002targetPerson being targeted by disinformation campaignAll
A003trusted authority InfluencerAll
A004activistCivil Society
A005community groupCivil Society
A006educatorCivil Society
A007factcheckerSomeone with the skills to verify whether information posted is factualCivil Society
A008libraryCivil Society
A009NGOCivil Society
A010religious organisation Civil Society
A011school Civil Society
A012account ownerAnyone who owns an account onlineGeneral Public
A013content creator General Public
A014elvesGeneral Public
A015general publicGeneral Public
A016influencerGeneral Public
A017coordinating bodyFor example the DHSGovernment
A018government Government agenciesGovernment
A019military Government
A020policy makerGovernment
A021media organisationMedia
A022companyOther Company
A023adtech providerOther Tech Company
A024developerOther Tech Company
A025funding_site_adminFunding site adminOther Tech Company
A026games designerOther Tech Company
A027information securityOther Tech Company
A028platform administratorOther Tech Company
A029server admininistrator Other Tech Company
A030platforms Social Media Company
A031social media platform adminstratorPerson with the authority to make changes to algorithms, take down content etc. Social Media Company
A032social media platform outreach Social Media Company
A033social media platform ownerPerson with authority to make changes to a social media company’s business modelSocial Media Company
diff --git a/amitt_blue_framework.md b/amitt_blue_framework.md index 80301d0..372cc87 100644 --- a/amitt_blue_framework.md +++ b/amitt_blue_framework.md @@ -52,7 +52,7 @@ C00130 Mentorship: elders, youth, credit. Learn vicariously. C00071 Block source of pollution C00098 Revocation of allowlisted or "verified" status -C00113 Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert +C00113 Debunk and defuse a fake expert / credentials. C00123 Remove or rate limit botnets C00139 Weaponise youtube content matrices @@ -107,7 +107,7 @@ C00135 Deplatform message groups and/or message boards C00076 Prohibit images in political discourse channels -C00105 Buy more advertising than the adversary to shift influence and algorithms +C00105 Buy more advertising than misinformation creators C00117 Downgrade / de-amplify so message is seen by fewer people C00128 Create friction by marking content with ridicule or other "decelerants" @@ -136,8 +136,8 @@ C00080 Create competing narrative -C00119 Engage payload and debunk. Provide link to facts. -C00147 Make amplification of social media ports expire (e.g. can't like/ retweet after n days) +C00119 Engage payload and debunk. +C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days) diff --git a/amitt_blue_framework_clickable.html b/amitt_blue_framework_clickable.html index 2fd4a06..fc01736 100644 --- a/amitt_blue_framework_clickable.html +++ b/amitt_blue_framework_clickable.html @@ -87,7 +87,7 @@ function handleTechniqueClick(box) { C00130 Mentorship: elders, youth, credit. Learn vicariously. C00071 Block source of pollution C00098 Revocation of allowlisted or "verified" status -C00113 Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert +C00113 Debunk and defuse a fake expert / credentials. C00123 Remove or rate limit botnets C00139 Weaponise youtube content matrices @@ -142,7 +142,7 @@ function handleTechniqueClick(box) { C00135 Deplatform message groups and/or message boards C00076 Prohibit images in political discourse channels -C00105 Buy more advertising than the adversary to shift influence and algorithms +C00105 Buy more advertising than misinformation creators C00117 Downgrade / de-amplify so message is seen by fewer people C00128 Create friction by marking content with ridicule or other "decelerants" @@ -171,8 +171,8 @@ function handleTechniqueClick(box) { C00080 Create competing narrative -C00119 Engage payload and debunk. Provide link to facts. -C00147 Make amplification of social media ports expire (e.g. can't like/ retweet after n days) +C00119 Engage payload and debunk. +C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days) @@ -477,7 +477,7 @@ function handleTechniqueClick(box) { - + @@ -513,7 +513,7 @@ function handleTechniqueClick(box) { - + @@ -529,8 +529,8 @@ function handleTechniqueClick(box) { - - + + diff --git a/counters/C00006.md b/counters/C00006.md index 325943f..5481794 100644 --- a/counters/C00006.md +++ b/counters/C00006.md @@ -1,6 +1,6 @@ # Counter C00006: Censorship -* **Summary**: Alter and/or block the publication/dissemination of adversary controlled information +* **Summary**: Alter and/or block the publication/dissemination of information controlled by disinformation creators. Not recommended. * **Playbooks**: @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | -| [A033 social media platform owner](../actors/A033.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | +| [A033 social media platform owner](../actortypes/A033.md) | Social Media Company | diff --git a/counters/C00008.md b/counters/C00008.md index fabacbe..1f8c4e6 100644 --- a/counters/C00008.md +++ b/counters/C00008.md @@ -1,6 +1,6 @@ # Counter C00008: Create shared fact-checking database -* **Summary**: Snopes is best-known example +* **Summary**: Share fact-checking resources - tips, responses, countermessages, across respose groups. Snopes is best-known example of fact-checking sites. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A007 factchecker](../actors/A007.md) | Civil Society | +| Actor types | Sectors | +| ----------- | ------- | +| [A007 factchecker](../actortypes/A007.md) | Civil Society | diff --git a/counters/C00009.md b/counters/C00009.md index f6204be..e638bad 100644 --- a/counters/C00009.md +++ b/counters/C00009.md @@ -1,6 +1,6 @@ # Counter C00009: Educate high profile influencers on best practices -* **Summary**: +* **Summary**: Find online influencers. Provide training in the mechanisms of disinformation, how to spot campaigns, and/or how to contribute to responses by countermessaging, boosting information sites etc. * **Playbooks**: @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A006 educator](../actors/A006.md) | Civil Society | -| [A016 influencer](../actors/A016.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A006 educator](../actortypes/A006.md) | Civil Society | +| [A016 influencer](../actortypes/A016.md) | General Public | diff --git a/counters/C00010.md b/counters/C00010.md index 50f694b..6eb5cca 100644 --- a/counters/C00010.md +++ b/counters/C00010.md @@ -1,6 +1,6 @@ # Counter C00010: Enhanced privacy regulation for social media -* **Summary**: Privacy standards +* **Summary**: Implement stronger privacy standards, to reduce the ability to microtarget community members. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A020 policy maker](../actors/A020.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A020 policy maker](../actortypes/A020.md) | Government | diff --git a/counters/C00011.md b/counters/C00011.md index dfe9f0d..52ccc4f 100644 --- a/counters/C00011.md +++ b/counters/C00011.md @@ -1,10 +1,8 @@ # Counter C00011: Media literacy. Games to identify fake news -* **Summary**: +* **Summary**: Create and use games to show people the mechanics of disinformation, and how to counter them. -* **Playbooks**: Game Mechanics: --Show examples of fake news and train the user to identify them on the basis of various types of indicators --Use a crowd-sourced mechanism so that the public can categorize newly spreading news sources or articles ala Re-Captcha +* **Playbooks**: * **Metatechnique**: M001 - resilience @@ -13,11 +11,11 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A006 educator](../actors/A006.md) | Civil Society | -| [A024 developer](../actors/A024.md) | Other Tech Company | -| [A026 games designer](../actors/A026.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A006 educator](../actortypes/A006.md) | Civil Society | +| [A024 developer](../actortypes/A024.md) | Other Tech Company | +| [A026 games designer](../actortypes/A026.md) | Other Tech Company | diff --git a/counters/C00012.md b/counters/C00012.md index a59f6d3..14db893 100644 --- a/counters/C00012.md +++ b/counters/C00012.md @@ -2,7 +2,7 @@ * **Summary**: Empower existing regulators to govern social media. Also covers Destroy. Includes: Include the role of social media in the regulatory framework for media - The European Union created significant new regulations in 2018; the U.S. approach will need to be carefully crafted to protect First Amendment principles, create needed transparency, ensure liability, and impose costs for noncompliance. Includes Create policy that makes social media police disinformation - example: German model: facebook forced to police content by law. Includes: Use fraud legislation to clean up social media -* **Playbooks**: P0001: Develop a regulatory body like the CFPB to regulate and enforce regulation for digital organizations. P0002: Government regulation. Government shutdown. +* **Playbooks**: * **Metatechnique**: M007 - metatechnique @@ -11,11 +11,11 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A018 government ](../actors/A018.md) | Government | -| [A020 policy maker](../actors/A020.md) | Government | -| [A033 social media platform owner](../actors/A033.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A018 government ](../actortypes/A018.md) | Government | +| [A020 policy maker](../actortypes/A020.md) | Government | +| [A033 social media platform owner](../actortypes/A033.md) | Social Media Company | diff --git a/counters/C00013.md b/counters/C00013.md index 46c80d4..17e0455 100644 --- a/counters/C00013.md +++ b/counters/C00013.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00014.md b/counters/C00014.md index 5a4eedc..388f526 100644 --- a/counters/C00014.md +++ b/counters/C00014.md @@ -1,6 +1,6 @@ # Counter C00014: Real-time updates to fact-checking database -* **Summary**: existing examples at Buzzfeed and Fema, especially during disasters +* **Summary**: Update fact-checking databases and resources in real time. Especially import for time-limited events like natural disasters. Existing examples at Buzzfeed and Fema. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | -| [A007 factchecker](../actors/A007.md) | Civil Society | +| Actor types | Sectors | +| ----------- | ------- | +| [A007 factchecker](../actortypes/A007.md) | Civil Society | diff --git a/counters/C00017.md b/counters/C00017.md index d69ef8a..2b20775 100644 --- a/counters/C00017.md +++ b/counters/C00017.md @@ -1,6 +1,6 @@ # Counter C00017: Repair broken social connections -* **Summary**: For example, use a media campaign to promote in-group to out-group in person communication / activities . Technique could be in terms of forcing a reality-check by talking to people instead of reading about bogeymen. +* **Summary**: Technique could be in terms of forcing a reality-check by talking to people instead of reading about bogeymen. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00019.md b/counters/C00019.md index 66884f8..289d460 100644 --- a/counters/C00019.md +++ b/counters/C00019.md @@ -2,12 +2,7 @@ * **Summary**: includes Promote constructive communication by shaming division-enablers, and Promote playbooks to call out division-enablers -* **Playbooks**: Spread Infographics & Training Material teaching ways to identify and counter divisive rhetorical techniques and content, by stimulating their sense of outrage at being manipulated. Show them how to address the rhetorical technique rather than the content - --Twitter hashtags & paid advertising --Teach people to identify non-civil/unconstructive conversations and call them out --Popularize (via memes, infographics) and get the centrists demographic who are tired of polarization to identify such messaging, call it out and display their outrage on the basis of divisive rhetorical techniques rather than merely arguing about the content - +* **Playbooks**: * **Metatechnique**: M003 - daylight @@ -16,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00021.md b/counters/C00021.md index c3d5a6b..7c9284b 100644 --- a/counters/C00021.md +++ b/counters/C00021.md @@ -1,6 +1,6 @@ # Counter C00021: Encourage in-person communication -* **Summary**: +* **Summary**: Encourage offline communication * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00022.md b/counters/C00022.md index a688a5a..866fec5 100644 --- a/counters/C00022.md +++ b/counters/C00022.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00024.md b/counters/C00024.md index b7e7583..6280232 100644 --- a/counters/C00024.md +++ b/counters/C00024.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00026.md b/counters/C00026.md index 98912f5..df8c2e2 100644 --- a/counters/C00026.md +++ b/counters/C00026.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00027.md b/counters/C00027.md index 9459897..61799fd 100644 --- a/counters/C00027.md +++ b/counters/C00027.md @@ -2,10 +2,7 @@ * **Summary**: This is passive. Includes promoting civility as an identity that people will defend. -* **Playbooks**: Playbook 1: Recruit respected thought leaders to model behavior -Playbook 2: Feature established respected thought leaders to model behavior -Playbook 3: Promote dialog from communities with disparate viewpoints -Playbook 4: Establish facilitation guidelines for "civil" interaction. +* **Playbooks**: * **Metatechnique**: M001 - resilience @@ -14,8 +11,8 @@ Playbook 4: Establish facilitation guidelines for "civil" interaction. * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00028.md b/counters/C00028.md index 06a6f5b..8bcd1c2 100644 --- a/counters/C00028.md +++ b/counters/C00028.md @@ -13,8 +13,8 @@ This could be used to adjust upvote weight via a trust factor of people and orga * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00029.md b/counters/C00029.md index c823c87..0863465 100644 --- a/counters/C00029.md +++ b/counters/C00029.md @@ -1,12 +1,8 @@ # Counter C00029: Create fake website to issue counter narrative and counter narrative through physical merchandise -* **Summary**: +* **Summary**: Create websites in disinformation voids - spaces where people are looking for known disinformation. -* **Playbooks**: -Identify ignorant agents (ex: anti-vaxx people willing to pay money to advertise their cause) --Sell physical merchandise that has instructive counter-effect - -Secondary Objective: --Obtain real-life identity of ignorant agents, to further disrupt their influence activities +* **Playbooks**: * **Metatechnique**: M002 - diversion @@ -15,8 +11,8 @@ Secondary Objective: * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00030.md b/counters/C00030.md index 8aa363d..1d77c25 100644 --- a/counters/C00030.md +++ b/counters/C00030.md @@ -12,8 +12,8 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00031.md b/counters/C00031.md index e6879bf..8beb678 100644 --- a/counters/C00031.md +++ b/counters/C00031.md @@ -2,8 +2,7 @@ * **Summary**: Create competing narratives. Included "Facilitate State Propaganda" as diluting the narrative could have an effect on the pro-state narrative used by volunteers, or lower their involvement. -* **Playbooks**: Playbook 1: Create multiple versions of the narrative and amplify. -Playbook 2: Dissect narrative, piecemeal the components and then amplify +* **Playbooks**: * **Metatechnique**: M009 - dilution @@ -12,8 +11,8 @@ Playbook 2: Dissect narrative, piecemeal the components and then amplify * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00032.md b/counters/C00032.md index 42fe4cc..99c05ab 100644 --- a/counters/C00032.md +++ b/counters/C00032.md @@ -2,8 +2,7 @@ * **Summary**: Link to platform -* **Playbooks**: Playbook 1: Hijack hashtag and redirect conversation to truth based content. -Playbook 2: Hijack (man in the middle) redirect from bad content to good content +* **Playbooks**: * **Metatechnique**: M002 - diversion @@ -12,8 +11,8 @@ Playbook 2: Hijack (man in the middle) redirect from bad content to good content * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00034.md b/counters/C00034.md index 4df9388..6405849 100644 --- a/counters/C00034.md +++ b/counters/C00034.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00036.md b/counters/C00036.md index 764a126..64cbf25 100644 --- a/counters/C00036.md +++ b/counters/C00036.md @@ -2,9 +2,7 @@ * **Summary**: All of these would be highly affected by infiltration or false-claims of infiltration. -* **Playbooks**: -Discredit via backstopped blogs/websites showing their past activity and opinions as being opposite to their current ingroup --Create a trail of commentary about their idea of infiltrating the enemy (current in-group) --Publicize this by targeting their in-group competitors (ignorant agents) +* **Playbooks**: * **Metatechnique**: M013 - targeting @@ -13,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00040.md b/counters/C00040.md index 22ee96f..0e9877d 100644 --- a/counters/C00040.md +++ b/counters/C00040.md @@ -2,9 +2,7 @@ * **Summary**: counters fake experts -* **Playbooks**: - Verify personal credentials -- Syndicated reputation management (fact-checking syndication) -- Academia ISAO +* **Playbooks**: * **Metatechnique**: M011 - verification @@ -13,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00042.md b/counters/C00042.md index 62359bd..a57880c 100644 --- a/counters/C00042.md +++ b/counters/C00042.md @@ -1,6 +1,6 @@ # Counter C00042: Address truth contained in narratives -* **Summary**: +* **Summary**: Focus on and boost truths in misinformation narratives, removing misinformation from them. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00044.md b/counters/C00044.md index 5bd9c4e..1445a90 100644 --- a/counters/C00044.md +++ b/counters/C00044.md @@ -1,9 +1,8 @@ # Counter C00044: Keep people from posting to social media immediately -* **Summary**: My interpretation is that this is method would be used to slow down activities or force a small delay between posts or replies to new posts. +* **Summary**: Use this to slow down activities or force a small delay between posts or replies to new posts. -* **Playbooks**: Rate restrict via regulation posting above a statistical threshold -Unless account is de-anonymized and advertised as automated messaging +* **Playbooks**: * **Metatechnique**: M004 - friction @@ -12,9 +11,9 @@ Unless account is de-anonymized and advertised as automated messaging * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00046.md b/counters/C00046.md index 9742579..1a562e7 100644 --- a/counters/C00046.md +++ b/counters/C00046.md @@ -1,6 +1,6 @@ # Counter C00046: Marginalise and discredit extremist groups -* **Summary**: +* **Summary**: Reduce the credibility of extremist groups posting misinformation. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00047.md b/counters/C00047.md index 3cc5d4c..89f97f4 100644 --- a/counters/C00047.md +++ b/counters/C00047.md @@ -1,6 +1,6 @@ # Counter C00047: Coordinated inauthentics -* **Summary**: +* **Summary**: Flood disinformation spaces with obviously fake content, to dilute core misinformation narratives in them. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00048.md b/counters/C00048.md index 807eac1..1f33fc9 100644 --- a/counters/C00048.md +++ b/counters/C00048.md @@ -2,7 +2,7 @@ * **Summary**: Think about the different levels: individual vs state-sponsored account. Includes “call them out” and “name and shame”. Note that USAID operations were at a different level. Identify social media accounts as sources of propaganda—“calling them out”— might be helpful to prevent the spread of their message to audiences that otherwise would consider them factual. USAID has been restructuring its programs to address predatory Chinese development projects and the information operations that support them. USAID’s new strategy has tailored programs to counter Chinese educational exchange programs and to support free and fair elections, youth empowerment, democratic governance, and free press. USAID’s Russia regional teams have also been compiling a strategy for Russia’s information operations. One strong point of USAID’s programming is a system of indicators and measurements for a country’s vulnerability to foreign influence and information operations. Identify, monitor, and, if necessary, target externally-based nonattributed social media accounts. Impact of and Dealing with Trolls - "Chatham House has observed that trolls also sometimes function as decoys, as a way of “keeping the infantry busy” that “aims to wear down the other side” (Lough et al., 2014). Another type of troll involves “false accounts posing as authoritative information sources on social media”. -* **Playbooks**: Identify the accounts, the real person's name and shame them on social media. +* **Playbooks**: * **Metatechnique**: M003 - daylight @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00051.md b/counters/C00051.md index d375cf3..4d18418 100644 --- a/counters/C00051.md +++ b/counters/C00051.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A006 educator](../actors/A006.md) | Civil Society | +| Actor types | Sectors | +| ----------- | ------- | +| [A006 educator](../actortypes/A006.md) | Civil Society | diff --git a/counters/C00052.md b/counters/C00052.md index 01fb56c..47204a6 100644 --- a/counters/C00052.md +++ b/counters/C00052.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | -| [A004 activist](../actors/A004.md) | Civil Society | +| Actor types | Sectors | +| ----------- | ------- | +| [A004 activist](../actortypes/A004.md) | Civil Society | diff --git a/counters/C00053.md b/counters/C00053.md index 598da7a..35b6b31 100644 --- a/counters/C00053.md +++ b/counters/C00053.md @@ -1,8 +1,8 @@ # Counter C00053: Delete old accounts / Remove unused social media accounts -* **Summary**: +* **Summary**: remove or remove access to (e.g. stop the ability to update) old social media accounts, to reduce the pool of accounts available for takeover, botnets etc. -* **Playbooks**: Social media companies remove inactive accounts. Account holders remove accounts they're no longer using. Influencers encourage people to remove their inactive accounts "Do you really need that old account" campaign, world-war-two poster-style. Create alternative memorial websites for accounts of deceased people, so their accounts can't be reactivated on 'live' sites. Educate/scare users on the risks of losing control over a dormant account (would their employer be forgiving if an account associated with the user suddenly starting posting extremist content?). +* **Playbooks**: * **Metatechnique**: M012 - cleaning @@ -11,11 +11,11 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | -| [A012 account owner](../actors/A012.md) | General Public | -| [A028 platform administrator](../actors/A028.md) | Other Tech Company | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A012 account owner](../actortypes/A012.md) | General Public | +| [A028 platform administrator](../actortypes/A028.md) | Other Tech Company | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00056.md b/counters/C00056.md index 485d727..afca63e 100644 --- a/counters/C00056.md +++ b/counters/C00056.md @@ -1,6 +1,6 @@ # Counter C00056: Get off social media -* **Summary**: We don't expect this to work +* **Summary**: Encourage people to leave spcial media. We don't expect this to work * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00058.md b/counters/C00058.md index e297436..b5dd70b 100644 --- a/counters/C00058.md +++ b/counters/C00058.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00059.md b/counters/C00059.md index 543e0ca..319da37 100644 --- a/counters/C00059.md +++ b/counters/C00059.md @@ -1,6 +1,6 @@ # Counter C00059: Verification of project before posting (counters funding campaigns) -* **Summary**: +* **Summary**: third-party verification of projects posting funding campaigns before those campaigns can be posted. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00060.md b/counters/C00060.md index e5ee53f..7f3a715 100644 --- a/counters/C00060.md +++ b/counters/C00060.md @@ -1,6 +1,6 @@ # Counter C00060: Legal action against for-profit engagement factories -* **Summary**: +* **Summary**: Take legal action against for-profit "factories" creating misinformation. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A020 policy maker](../actors/A020.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A020 policy maker](../actortypes/A020.md) | Government | diff --git a/counters/C00062.md b/counters/C00062.md index 31943b7..af72ad9 100644 --- a/counters/C00062.md +++ b/counters/C00062.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00065.md b/counters/C00065.md index da5a422..e837b23 100644 --- a/counters/C00065.md +++ b/counters/C00065.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA05 -| Actors | Sectors | -| ------ | ------- | -| [A020 policy maker](../actors/A020.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A020 policy maker](../actortypes/A020.md) | Government | diff --git a/counters/C00066.md b/counters/C00066.md index 781d199..a4da4f1 100644 --- a/counters/C00066.md +++ b/counters/C00066.md @@ -1,6 +1,6 @@ # Counter C00066: Co-opt a hashtag and drown it out (hijack it back) -* **Summary**: +* **Summary**: Flood a disinformation-related hashtag with other content. Examples include kPop stans flooding extremist hashtags with pop videos and images. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA05 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00067.md b/counters/C00067.md index ede2409..69bac1b 100644 --- a/counters/C00067.md +++ b/counters/C00067.md @@ -1,6 +1,6 @@ # Counter C00067: Denigrate the recipient/ project (of online funding) -* **Summary**: +* **Summary**: Reduce the credibility of groups behind misinformation-linked funding campaigns. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00070.md b/counters/C00070.md index 0ba87ac..5176d77 100644 --- a/counters/C00070.md +++ b/counters/C00070.md @@ -19,8 +19,8 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00071.md b/counters/C00071.md index 71428b5..03b3f37 100644 --- a/counters/C00071.md +++ b/counters/C00071.md @@ -1,6 +1,6 @@ # Counter C00071: Block source of pollution -* **Summary**: +* **Summary**: Block websites, accounts, groups etc connected to misinformation and other information pollution. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00072.md b/counters/C00072.md index 8963af2..9b6ebbb 100644 --- a/counters/C00072.md +++ b/counters/C00072.md @@ -1,6 +1,6 @@ # Counter C00072: Remove non-relevant content from special interest groups – not recommended -* **Summary**: +* **Summary**: Check special-interest groups (e.g. medical, knitting) for unrelated and misinformation-linked content, and remove it. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00073.md b/counters/C00073.md index 40b93b3..2a6052d 100644 --- a/counters/C00073.md +++ b/counters/C00073.md @@ -11,16 +11,16 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A005 community group](../actors/A005.md) | Civil Society | -| [A006 educator](../actors/A006.md) | Civil Society | -| [A008 library](../actors/A008.md) | Civil Society | -| [A009 NGO](../actors/A009.md) | Civil Society | -| [A010 religious organisation ](../actors/A010.md) | Civil Society | -| [A017 coordinating body](../actors/A017.md) | Government | -| [A021 media organisation](../actors/A021.md) | Media | -| [A032 social media platform outreach ](../actors/A032.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A005 community group](../actortypes/A005.md) | Civil Society | +| [A006 educator](../actortypes/A006.md) | Civil Society | +| [A008 library](../actortypes/A008.md) | Civil Society | +| [A009 NGO](../actortypes/A009.md) | Civil Society | +| [A010 religious organisation ](../actortypes/A010.md) | Civil Society | +| [A017 coordinating body](../actortypes/A017.md) | Government | +| [A021 media organisation](../actortypes/A021.md) | Media | +| [A032 social media platform outreach ](../actortypes/A032.md) | Social Media Company | diff --git a/counters/C00074.md b/counters/C00074.md index 47b631c..0f7b342 100644 --- a/counters/C00074.md +++ b/counters/C00074.md @@ -1,14 +1,9 @@ # Counter C00074: Identify and delete or rate limit identical content -* **Summary**: +* **Summary**: Search for repeated content (text, images, videos etc); check for misinformation, rate-limit or delete repeats. -* **Playbooks**: In all cases some checks need to prevent deplatforming of highly correlated organic traffic such as a community group copy/pasting their bake sale advert. -Playbook 1: Platform adds a hash of the post to the post metadata and make it publicly available (content addressing). Scrape for duplicate content and deplatform the content/users across affected platforms. -Playbook 2: Platform adds plagiarism score metadata to a post and makes it publicly available. Scrape for duplicate content and deplatform the content/users across affected platforms. -Playbook 3: Use message hashing and fuzzy hashing to detect identical/similar content. -Playbook 4: Use plagiarism algorithm to detect similar blog posts. -Playbook 5: Use basic web scraping techniques, Google dorks, etc to identify similar head lines, uniques phrases, authorship, embedded links and any other correlating data point. +* **Playbooks**: * **Metatechnique**: M012 - cleaning @@ -17,10 +12,10 @@ Playbook 5: Use basic web scraping techniques, Google dorks, etc to identify sim * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | -| [A028 platform administrator](../actors/A028.md) | Other Tech Company | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A028 platform administrator](../actortypes/A028.md) | Other Tech Company | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00075.md b/counters/C00075.md index 213bf4b..7f57891 100644 --- a/counters/C00075.md +++ b/counters/C00075.md @@ -1,6 +1,6 @@ # Counter C00075: normalise language -* **Summary**: +* **Summary**: normalise the language around disinformation and misinformation; give people the words for artifact and effect types. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00076.md b/counters/C00076.md index 174eaa2..3a70cc1 100644 --- a/counters/C00076.md +++ b/counters/C00076.md @@ -1,6 +1,6 @@ # Counter C00076: Prohibit images in political discourse channels -* **Summary**: +* **Summary**: Make political discussion channels text-only. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00077.md b/counters/C00077.md index d81d732..cf46afc 100644 --- a/counters/C00077.md +++ b/counters/C00077.md @@ -1,6 +1,6 @@ # Counter C00077: Active defence: run TA03 "develop people” - not recommended -* **Summary**: +* **Summary**: Develop networks of communities and influencers around counter-misinformation. Match them to misinformation creators * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00078.md b/counters/C00078.md index e5d5c70..537eaf7 100644 --- a/counters/C00078.md +++ b/counters/C00078.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00080.md b/counters/C00080.md index 03fa3e7..9e5f2eb 100644 --- a/counters/C00080.md +++ b/counters/C00080.md @@ -1,6 +1,6 @@ # Counter C00080: Create competing narrative -* **Summary**: Could also be degrade +* **Summary**: Create counternarratives, or narratives that compete in the same spaces as misinformation narratives. Could also be degrade * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00081.md b/counters/C00081.md index 4ba4dac..9c95312 100644 --- a/counters/C00081.md +++ b/counters/C00081.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00082.md b/counters/C00082.md index 32843a3..83cd542 100644 --- a/counters/C00082.md +++ b/counters/C00082.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00084.md b/counters/C00084.md index f3aa2e4..8d09f45 100644 --- a/counters/C00084.md +++ b/counters/C00084.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00085.md b/counters/C00085.md index 8e14084..63a0396 100644 --- a/counters/C00085.md +++ b/counters/C00085.md @@ -13,8 +13,8 @@ Online archives of content (archives of websites, social media profiles, media, * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00086.md b/counters/C00086.md index 997a505..43dec24 100644 --- a/counters/C00086.md +++ b/counters/C00086.md @@ -13,8 +13,8 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00087.md b/counters/C00087.md index 317e0e5..bffc318 100644 --- a/counters/C00087.md +++ b/counters/C00087.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00090.md b/counters/C00090.md index 6f806c0..b3fea6c 100644 --- a/counters/C00090.md +++ b/counters/C00090.md @@ -1,6 +1,6 @@ # Counter C00090: Fake engagement system -* **Summary**: +* **Summary**: Create honeypots for misinformation creators to engage with, and reduce the resources they have available for misinformation campaigns. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00091.md b/counters/C00091.md index 911ec26..70b15d2 100644 --- a/counters/C00091.md +++ b/counters/C00091.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00092.md b/counters/C00092.md index 3ee0969..c30523f 100644 --- a/counters/C00092.md +++ b/counters/C00092.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A001 data scientist ](../actors/A001.md) | All | +| Actor types | Sectors | +| ----------- | ------- | +| [A001 data scientist ](../actortypes/A001.md) | All | diff --git a/counters/C00093.md b/counters/C00093.md index 1a37483..1a92e4b 100644 --- a/counters/C00093.md +++ b/counters/C00093.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00094.md b/counters/C00094.md index 4313225..4c148e1 100644 --- a/counters/C00094.md +++ b/counters/C00094.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00096.md b/counters/C00096.md index 44027fd..b92308c 100644 --- a/counters/C00096.md +++ b/counters/C00096.md @@ -1,6 +1,6 @@ # Counter C00096: Strengthen institutions that are always truth tellers -* **Summary**: +* **Summary**: Increase credibility, visibility, and reach of positive influencers in the information space. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00097.md b/counters/C00097.md index 28a3127..aaf5caa 100644 --- a/counters/C00097.md +++ b/counters/C00097.md @@ -1,6 +1,6 @@ # Counter C00097: Require use of verified identities to contribute to poll or comment -* **Summary**: +* **Summary**: Reduce poll flooding by online taking comments or poll entries from verified accounts. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00098.md b/counters/C00098.md index 84412c5..4af43ab 100644 --- a/counters/C00098.md +++ b/counters/C00098.md @@ -1,8 +1,8 @@ # Counter C00098: Revocation of allowlisted or "verified" status -* **Summary**: +* **Summary**: remove blue checkmarks etc from known misinformation accounts. -* **Playbooks**: Affected person contacts platform for action +* **Playbooks**: * **Metatechnique**: M004 - friction @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00099.md b/counters/C00099.md index 484f939..e5d5c07 100644 --- a/counters/C00099.md +++ b/counters/C00099.md @@ -1,6 +1,6 @@ # Counter C00099: Strengthen verification methods -* **Summary**: +* **Summary**: Improve content veerification methods available to groups, individuals etc. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00100.md b/counters/C00100.md index 43a57c1..60e1d53 100644 --- a/counters/C00100.md +++ b/counters/C00100.md @@ -1,6 +1,6 @@ # Counter C00100: Hashtag jacking -* **Summary**: +* **Summary**: Post large volumes of unrelated content on known misinformation hashtags * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00101.md b/counters/C00101.md index 8ce139f..01aed9d 100644 --- a/counters/C00101.md +++ b/counters/C00101.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00103.md b/counters/C00103.md index a1bc144..8bbc6a4 100644 --- a/counters/C00103.md +++ b/counters/C00103.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A024 developer](../actors/A024.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A024 developer](../actortypes/A024.md) | Other Tech Company | diff --git a/counters/C00105.md b/counters/C00105.md index 37dc910..3963fcd 100644 --- a/counters/C00105.md +++ b/counters/C00105.md @@ -1,6 +1,6 @@ -# Counter C00105: Buy more advertising than the adversary to shift influence and algorithms +# Counter C00105: Buy more advertising than misinformation creators -* **Summary**: +* **Summary**: Shift influence and algorithms by posting more adverts into spaces than misinformation creators. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | -| [A023 adtech provider](../actors/A023.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A023 adtech provider](../actortypes/A023.md) | Other Tech Company | diff --git a/counters/C00106.md b/counters/C00106.md index 8f01db6..be7f20a 100644 --- a/counters/C00106.md +++ b/counters/C00106.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00107.md b/counters/C00107.md index 979f675..a8bb8f7 100644 --- a/counters/C00107.md +++ b/counters/C00107.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00109.md b/counters/C00109.md index 522fb43..9f4da49 100644 --- a/counters/C00109.md +++ b/counters/C00109.md @@ -1,6 +1,6 @@ # Counter C00109: Dampen Emotional Reaction -* **Summary**: +* **Summary**: Reduce emotional responses to misinformation through calming messages, etc. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00111.md b/counters/C00111.md index 7a7a90a..9e858f7 100644 --- a/counters/C00111.md +++ b/counters/C00111.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A013 content creator ](../actors/A013.md) | General Public | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A013 content creator ](../actortypes/A013.md) | General Public | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00112.md b/counters/C00112.md index 816e971..f3189c7 100644 --- a/counters/C00112.md +++ b/counters/C00112.md @@ -1,6 +1,6 @@ # Counter C00112: "Prove they are not an op!" -* **Summary**: +* **Summary**: Challenge misinformation creators to prove they're not an information operation. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00113.md b/counters/C00113.md index 27ff8e1..267c428 100644 --- a/counters/C00113.md +++ b/counters/C00113.md @@ -1,6 +1,6 @@ -# Counter C00113: Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert +# Counter C00113: Debunk and defuse a fake expert / credentials. -* **Summary**: +* **Summary**: Debunk fake experts, their credentials, and potentially also their audience quality * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00114.md b/counters/C00114.md index b0381c8..5b9c1ae 100644 --- a/counters/C00114.md +++ b/counters/C00114.md @@ -1,6 +1,6 @@ # Counter C00114: Don't engage with payloads -* **Summary**: +* **Summary**: Stop passing on misinformation * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | -| [A015 general public](../actors/A015.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A015 general public](../actortypes/A015.md) | General Public | diff --git a/counters/C00115.md b/counters/C00115.md index 8f1a1e7..faae1aa 100644 --- a/counters/C00115.md +++ b/counters/C00115.md @@ -1,6 +1,6 @@ # Counter C00115: Expose actor and intentions -* **Summary**: +* **Summary**: Debunk misinformation creators and posters. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00116.md b/counters/C00116.md index 9631637..32292b9 100644 --- a/counters/C00116.md +++ b/counters/C00116.md @@ -1,6 +1,6 @@ # Counter C00116: Provide proof of involvement -* **Summary**: +* **Summary**: Build and post information about groups etc's involvement in misinformation incidents. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00117.md b/counters/C00117.md index 0f14793..f985416 100644 --- a/counters/C00117.md +++ b/counters/C00117.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00118.md b/counters/C00118.md index 0ab0a25..041fa14 100644 --- a/counters/C00118.md +++ b/counters/C00118.md @@ -1,6 +1,6 @@ # Counter C00118: Repurpose images with new text -* **Summary**: +* **Summary**: Add countermessage text to iamges used in misinformation incidents. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00119.md b/counters/C00119.md index ee547c3..fbe8779 100644 --- a/counters/C00119.md +++ b/counters/C00119.md @@ -1,6 +1,6 @@ -# Counter C00119: Engage payload and debunk. Provide link to facts. +# Counter C00119: Engage payload and debunk. -* **Summary**: Might be okay. +* **Summary**: debunk misinformation content. Provide link to facts. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00120.md b/counters/C00120.md index 0952828..b17f401 100644 --- a/counters/C00120.md +++ b/counters/C00120.md @@ -1,6 +1,6 @@ # Counter C00120: Open dialogue about design of platforms to produce different outcomes -* **Summary**: +* **Summary**: Redesign platforms and algorithms to reduce the effectiveness of disinformation * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00121.md b/counters/C00121.md index c3aeea5..9b0eced 100644 --- a/counters/C00121.md +++ b/counters/C00121.md @@ -1,6 +1,6 @@ # Counter C00121: Tool transparency and literacy for channels people follow. -* **Summary**: +* **Summary**: Make algorithms in platforms explainable, and visible to people using those platforms. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00122.md b/counters/C00122.md index 789c884..f7a5d50 100644 --- a/counters/C00122.md +++ b/counters/C00122.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00123.md b/counters/C00123.md index 247f788..6b2f9dc 100644 --- a/counters/C00123.md +++ b/counters/C00123.md @@ -1,6 +1,6 @@ # Counter C00123: Remove or rate limit botnets -* **Summary**: +* **Summary**: reduce the visibility of known botnets online. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00124.md b/counters/C00124.md index d8a0cdc..5a7af1b 100644 --- a/counters/C00124.md +++ b/counters/C00124.md @@ -1,6 +1,6 @@ # Counter C00124: Don't feed the trolls -* **Summary**: +* **Summary**: Don't engage with individuals relaying misinformation. * **Playbooks**: @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A015 general public](../actors/A015.md) | General Public | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A015 general public](../actortypes/A015.md) | General Public | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00125.md b/counters/C00125.md index bf8c64c..d380a04 100644 --- a/counters/C00125.md +++ b/counters/C00125.md @@ -1,6 +1,6 @@ # Counter C00125: Prebunking -* **Summary**: +* **Summary**: Produce material in advance of misinformation incidents, by anticipating the narratives used in them, and debunking them. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00126.md b/counters/C00126.md index ddccd73..51f46ab 100644 --- a/counters/C00126.md +++ b/counters/C00126.md @@ -1,6 +1,6 @@ # Counter C00126: Social media amber alert -* **Summary**: +* **Summary**: Create an alert system around disinformation and misinformation artifacts, narratives, and incidents * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00128.md b/counters/C00128.md index d4876eb..a7c9c34 100644 --- a/counters/C00128.md +++ b/counters/C00128.md @@ -1,6 +1,6 @@ # Counter C00128: Create friction by marking content with ridicule or other "decelerants" -* **Summary**: +* **Summary**: Repost or comment on misinformation artifacts, using ridicule or other content to reduce the likelihood of reposting. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A003 trusted authority ](../actors/A003.md) | All | +| Actor types | Sectors | +| ----------- | ------- | +| [A003 trusted authority ](../actortypes/A003.md) | All | diff --git a/counters/C00129.md b/counters/C00129.md index 234e547..6a75d51 100644 --- a/counters/C00129.md +++ b/counters/C00129.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00130.md b/counters/C00130.md index 56b2017..b26978e 100644 --- a/counters/C00130.md +++ b/counters/C00130.md @@ -1,6 +1,6 @@ # Counter C00130: Mentorship: elders, youth, credit. Learn vicariously. -* **Summary**: +* **Summary**: Train local influencers in countering misinformation. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA05 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00131.md b/counters/C00131.md index 0c57a07..a8d7bda 100644 --- a/counters/C00131.md +++ b/counters/C00131.md @@ -1,6 +1,6 @@ # Counter C00131: Seize and analyse botnet servers -* **Summary**: +* **Summary**: Take botnet servers offline by seizing them. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA11 -| Actors | Sectors | -| ------ | ------- | -| [A029 server admininistrator ](../actors/A029.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A029 server admininistrator ](../actortypes/A029.md) | Other Tech Company | diff --git a/counters/C00133.md b/counters/C00133.md index 80d75e2..9222bd2 100644 --- a/counters/C00133.md +++ b/counters/C00133.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00135.md b/counters/C00135.md index d3cdf3a..387d96c 100644 --- a/counters/C00135.md +++ b/counters/C00135.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00136.md b/counters/C00136.md index f0a918a..69e891d 100644 --- a/counters/C00136.md +++ b/counters/C00136.md @@ -1,10 +1,8 @@ # Counter C00136: Microtarget most likely targets then send them countermessages -* **Summary**: - -* **Playbooks**: Playbook 1: Work with platform to identify active target audiences through finanical data and messaging. -Playbook 2: Use a platform's publicly available advertising/targeting capabilities to enumerate a list of possible microtargeted demographics. Compare these to known TAs of past/ongoing influence ops to identify the vulnerable demographics. +* **Summary**: Find communities likely to be targetted by misinformation campaigns, and send them countermessages or pointers to information sources. +* **Playbooks**: * **Metatechnique**: M010 - countermessaging @@ -13,8 +11,8 @@ Playbook 2: Use a platform's publicly available advertising/targeting capabiliti * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00138.md b/counters/C00138.md index d5e80a1..bbe4da5 100644 --- a/counters/C00138.md +++ b/counters/C00138.md @@ -1,6 +1,6 @@ # Counter C00138: Spam domestic actors with lawsuits -* **Summary**: +* **Summary**: File multiple lawsuits against known misinformation creators and posters, to distract them from disinformation creation. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA11 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00139.md b/counters/C00139.md index 0a9512e..0476a6c 100644 --- a/counters/C00139.md +++ b/counters/C00139.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA11 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00140.md b/counters/C00140.md index 5acda26..603b05d 100644 --- a/counters/C00140.md +++ b/counters/C00140.md @@ -2,9 +2,7 @@ * **Summary**: Applies to most of the content used by exposure techniques except "T0055 - Use hashtag”. Applies to analytics -* **Playbooks**: Playbook 1: DDoS adversary link shorteners by spamming real links. -Playbook 2: Compromise service and reroute links to benign content or counter messaging. - +* **Playbooks**: * **Metatechnique**: M008 - data pollution @@ -13,8 +11,8 @@ Playbook 2: Compromise service and reroute links to benign content or counter me * **Belongs to tactic stage**: TA12 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00142.md b/counters/C00142.md index aa13fc2..6ec17aa 100644 --- a/counters/C00142.md +++ b/counters/C00142.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00143.md b/counters/C00143.md index 9ac7d99..4179e21 100644 --- a/counters/C00143.md +++ b/counters/C00143.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA11 -| Actors | Sectors | -| ------ | ------- | -| [A014 elves](../actors/A014.md) | General Public | -| [A015 general public](../actors/A015.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A014 elves](../actortypes/A014.md) | General Public | +| [A015 general public](../actortypes/A015.md) | General Public | diff --git a/counters/C00144.md b/counters/C00144.md index 41a8a30..a0a97f9 100644 --- a/counters/C00144.md +++ b/counters/C00144.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00147.md b/counters/C00147.md index 7e933c1..6565f08 100644 --- a/counters/C00147.md +++ b/counters/C00147.md @@ -1,6 +1,6 @@ -# Counter C00147: Make amplification of social media ports expire (e.g. can't like/ retweet after n days) +# Counter C00147: Make amplification of social media posts expire (e.g. can't like/ retweet after n days) -* **Summary**: +* **Summary**: Stop new community activity (likes, comments) on old social media posts. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00148.md b/counters/C00148.md index 7dc70a9..8e99678 100644 --- a/counters/C00148.md +++ b/counters/C00148.md @@ -2,8 +2,7 @@ * **Summary**: If creators are using network analysis to determine how to attack networks, then adding random extra links to those networks might throw that analysis out enough to change attack outcomes. Unsure which AMITT techniques. -* **Playbooks**: Playbook 1: Degrade TA engagement using bots; direct the adversary to engage insular bot communities-within-communities rather than the authentic target audience. -Playbook 2: Degrade MOEs/MOPs by faking inter-community sharing. +* **Playbooks**: * **Metatechnique**: M008 - data pollution @@ -12,9 +11,9 @@ Playbook 2: Degrade MOEs/MOPs by faking inter-community sharing. * **Belongs to tactic stage**: TA12 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00149.md b/counters/C00149.md index 7fe8bdb..9d7f1b6 100644 --- a/counters/C00149.md +++ b/counters/C00149.md @@ -2,14 +2,7 @@ * **Summary**: Includes Pollute the AB-testing data feeds: Polluting A/B testing requires knowledge of MOEs and MOPs. A/B testing must be caught early when there is relatively little data available so infiltration of TAs and understanding of how content is migrated from testing to larger audiences is fundamental. -* **Playbooks**: Playbook 1: Distort TA demographics by posting irrelevant content, misleading demogaphic data, etc. -Playbook 2: Work with the media platform to distort publicly available metrics. Can we work with Twitter to get crappy off-brand memes artificially bumped without needing to create fake accounts, etc.? -Playbook 3: Use adtech to promote content inconsistent with TA demographics. If the adversary is reverse engineering a groups demographics by analyzing ads placed on the platform/group, by spamming ads for out-group stuff it may distort analysis of the group. -Playbook 4: Distort Google Trends and other publicly available source of metrics using bots, cyborgs, adtech. -Playbook 5: Distort TA emotional response to content/narratives. -Playbook 6: Promote damp squibs. Within a known TA promote/inflate crappy off-brand memes which are unlikley to resonate. -Playbook 7: Detect early trending/engagement and undermine the content by responding with 5Ds, toxic community behaviour, satirical responses, etc. -Playbook 8: If adtech is used, fake clicks and engagements on the content. +* **Playbooks**: * **Metatechnique**: M008 - data pollution @@ -18,8 +11,8 @@ Playbook 8: If adtech is used, fake clicks and engagements on the content. * **Belongs to tactic stage**: TA12 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00153.md b/counters/C00153.md index 5989615..5e01adf 100644 --- a/counters/C00153.md +++ b/counters/C00153.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A027 information security](../actors/A027.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A027 information security](../actortypes/A027.md) | Other Tech Company | diff --git a/counters/C00154.md b/counters/C00154.md index d236185..11b162b 100644 --- a/counters/C00154.md +++ b/counters/C00154.md @@ -1,6 +1,6 @@ # Counter C00154: Ask media not to report false information -* **Summary**: +* **Summary**: Train media to spot and respond to misinformation, and ask them not to post or transmit misinformation they've found. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00155.md b/counters/C00155.md index fd57aad..d73c1bc 100644 --- a/counters/C00155.md +++ b/counters/C00155.md @@ -1,6 +1,6 @@ # Counter C00155: Ban incident actors from funding sites -* **Summary**: +* **Summary**: Ban misinformation creators and posters from funding sites * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A025 funding_site_admin](../actors/A025.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A025 funding_site_admin](../actortypes/A025.md) | Other Tech Company | diff --git a/counters/C00156.md b/counters/C00156.md index b4edb1d..dd97f7f 100644 --- a/counters/C00156.md +++ b/counters/C00156.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A018 government ](../actors/A018.md) | Government | -| [A019 military ](../actors/A019.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A018 government ](../actortypes/A018.md) | Government | +| [A019 military ](../actortypes/A019.md) | Government | diff --git a/counters/C00159.md b/counters/C00159.md index b59fc68..9c4f6cd 100644 --- a/counters/C00159.md +++ b/counters/C00159.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00160.md b/counters/C00160.md index 9508e73..1104694 100644 --- a/counters/C00160.md +++ b/counters/C00160.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A001 data scientist ](../actors/A001.md) | All | -| [A016 influencer](../actors/A016.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A001 data scientist ](../actortypes/A001.md) | All | +| [A016 influencer](../actortypes/A016.md) | General Public | diff --git a/counters/C00161.md b/counters/C00161.md index c5afc79..ca31213 100644 --- a/counters/C00161.md +++ b/counters/C00161.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00162.md b/counters/C00162.md index 53fb538..b218bc8 100644 --- a/counters/C00162.md +++ b/counters/C00162.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00164.md b/counters/C00164.md index 0505404..88f1348 100644 --- a/counters/C00164.md +++ b/counters/C00164.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00165.md b/counters/C00165.md index 032fd12..1fa7484 100644 --- a/counters/C00165.md +++ b/counters/C00165.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00169.md b/counters/C00169.md index c6fa273..c5dd79a 100644 --- a/counters/C00169.md +++ b/counters/C00169.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00170.md b/counters/C00170.md index e713cce..fb8f610 100644 --- a/counters/C00170.md +++ b/counters/C00170.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00172.md b/counters/C00172.md index 66d3209..8e03294 100644 --- a/counters/C00172.md +++ b/counters/C00172.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00174.md b/counters/C00174.md index 4e817e7..eda7a87 100644 --- a/counters/C00174.md +++ b/counters/C00174.md @@ -2,7 +2,7 @@ * **Summary**: Free and fair press: create bipartisan, patriotic commitment to press freedom. Note difference between news and editorialising. Build alternative news sources: create alternative local-language news sources to counter local-language propaganda outlets. Delegitimize the 24 hour news cycle. includes Provide an alternative to disinformation content by expanding and improving local content: Develop content that can displace geopolitically-motivated narratives in the entire media environment, both new and old media alike. -* **Playbooks**: Elected officials lead return to First Amendment norms that embrace free and fair media as central to democracy. +* **Playbooks**: * **Metatechnique**: M007 - metatechnique, M002 - diversion @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00176.md b/counters/C00176.md index b07066f..30e254a 100644 --- a/counters/C00176.md +++ b/counters/C00176.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00178.md b/counters/C00178.md index 9500c45..70eee1e 100644 --- a/counters/C00178.md +++ b/counters/C00178.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA05 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00182.md b/counters/C00182.md index 08b0cfe..49f3f63 100644 --- a/counters/C00182.md +++ b/counters/C00182.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A027 information security](../actors/A027.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A027 information security](../actortypes/A027.md) | Other Tech Company | diff --git a/counters/C00184.md b/counters/C00184.md index e5f0c30..eab0763 100644 --- a/counters/C00184.md +++ b/counters/C00184.md @@ -1,6 +1,6 @@ # Counter C00184: Media exposure -* **Summary**: +* **Summary**: highlight misinformation activities and actors in media * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00188.md b/counters/C00188.md index 54f3363..d2338be 100644 --- a/counters/C00188.md +++ b/counters/C00188.md @@ -2,7 +2,7 @@ * **Summary**: Includes SEO influence. August 2014, Russian news agency Rossiya Segodnya commissioned a poll in France with poorly worded questions and a statistically insignificant subsample that RT used to back a story titled “15% of French people back ISIS [Islamic State of Iraq and Syria] militants, poll finds.” The story and summary infographic circulated on the internet, initially appearing primarily on French sites. After a week, the generally respectable digital U.S. news outlet Vox ran the story, now titled “One in Six French People Say They Support ISIS.” Although this effect has now worn off or been overwritten, for a time—despite a later story from The Washington Post debunking the claim—typing “ISIS France” into Google resulted in an autosuggestion of “ISIS France support” (Borthwick, 2015). Includes promotion of a “higher standard of journalism”: journalism training “would be helpful, especially for the online community. Includes Strengthen local media: Improve effectiveness of local media outlets. Using eastern Latvia media outlets as an example, one expert noted that the media outlets are “very weak,” are often politically affiliated, or have “little local oligarchs that control them.” -* **Playbooks**: TechCamp bringing together local journalists, with a several-day training program that includes a sponsored yearlong investigative project +* **Playbooks**: * **Metatechnique**: M001 - resilience @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA08 -| Actors | Sectors | -| ------ | ------- | -| [A006 educator](../actors/A006.md) | Civil Society | -| [A021 media organisation](../actors/A021.md) | Media | +| Actor types | Sectors | +| ----------- | ------- | +| [A006 educator](../actortypes/A006.md) | Civil Society | +| [A021 media organisation](../actortypes/A021.md) | Media | diff --git a/counters/C00189.md b/counters/C00189.md index a822978..1261028 100644 --- a/counters/C00189.md +++ b/counters/C00189.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00190.md b/counters/C00190.md index 0a9ab0e..5c5ce6e 100644 --- a/counters/C00190.md +++ b/counters/C00190.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A015 general public](../actors/A015.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A015 general public](../actortypes/A015.md) | General Public | diff --git a/counters/C00195.md b/counters/C00195.md index 049e1e0..f73a83d 100644 --- a/counters/C00195.md +++ b/counters/C00195.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA07 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00197.md b/counters/C00197.md index 8e85f51..be229b5 100644 --- a/counters/C00197.md +++ b/counters/C00197.md @@ -2,25 +2,7 @@ * **Summary**: Standard reporting for false profiles (identity issues). Includes detecting hijacked accounts and reallocating them - if possible, back to original owners. -* **Playbooks**: Playbook 1: Create a standard reporting format and method for social platforms for reporting false accounts. -Playbook 2: -- Is the account compromised? -- Is it known to be associated with threat actors -- common/random name -- Names violate terms of service -- Dormant account -- Change of country IP -- Social network growth patterns (number of friends etc) -- Evidence of linguistic artifacts (multiple fingerprints, terms/idiosyncrasies ) -- Community vs. narrative vs. individuals -Playbook 3: Report suspected bots. -- Report ToS violations. -- In all playbooks the platform must force user verification, credential reset and enable MFA. Suspend the account if it cannot be verified. -Playbook 1: Use sites like https://haveibeenpwned.com to detect compromised and at risk user accounts. -Playbook 2: Monitor for unusual account usage (use of VPN, new geographic location, unusual usage hours, etc). -Playbook 3: Detect sudden deviation in user sentiment such as suddenly dropping hashtags linked to extremist content. -Playbook 4: Purchase "likes", "retweets" and other vehicles which identify a bot and/or hijacked account. Ban the account. -Playbook 5: Detect hijacked account and spam their posts. "OP is a known disinformation bot. http://link.to.proof[.]com" +* **Playbooks**: * **Metatechnique**: M005 - removal @@ -29,10 +11,10 @@ Playbook 5: Detect hijacked account and spam their posts. "OP is a known disinfo * **Belongs to tactic stage**: TA03 -| Actors | Sectors | -| ------ | ------- | -| [A004 activist](../actors/A004.md) | Civil Society | -| [A031 social media platform adminstrator](../actors/A031.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A004 activist](../actortypes/A004.md) | Civil Society | +| [A031 social media platform adminstrator](../actortypes/A031.md) | Social Media Company | diff --git a/counters/C00200.md b/counters/C00200.md index 4f93d6c..ac982c5 100644 --- a/counters/C00200.md +++ b/counters/C00200.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | -| [A016 influencer](../actors/A016.md) | General Public | +| Actor types | Sectors | +| ----------- | ------- | +| [A016 influencer](../actortypes/A016.md) | General Public | diff --git a/counters/C00202.md b/counters/C00202.md index 4a1731a..0719de3 100644 --- a/counters/C00202.md +++ b/counters/C00202.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00203.md b/counters/C00203.md index 171640d..cb83001 100644 --- a/counters/C00203.md +++ b/counters/C00203.md @@ -1,6 +1,6 @@ # Counter C00203: Stop offering press credentials to propaganda outlets -* **Summary**: +* **Summary**: Remove access to official press events from known misinformation actors. * **Playbooks**: @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA04 -| Actors | Sectors | -| ------ | ------- | -| [A018 government ](../actors/A018.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A018 government ](../actortypes/A018.md) | Government | diff --git a/counters/C00205.md b/counters/C00205.md index 9356fe3..f857ba5 100644 --- a/counters/C00205.md +++ b/counters/C00205.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A018 government ](../actors/A018.md) | Government | -| [A033 social media platform owner](../actors/A033.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A018 government ](../actortypes/A018.md) | Government | +| [A033 social media platform owner](../actortypes/A033.md) | Social Media Company | diff --git a/counters/C00207.md b/counters/C00207.md index 31da24c..bcc8620 100644 --- a/counters/C00207.md +++ b/counters/C00207.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | -| [A018 government ](../actors/A018.md) | Government | -| [A033 social media platform owner](../actors/A033.md) | Social Media Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A018 government ](../actortypes/A018.md) | Government | +| [A033 social media platform owner](../actortypes/A033.md) | Social Media Company | diff --git a/counters/C00211.md b/counters/C00211.md index f13d4ba..a05d549 100644 --- a/counters/C00211.md +++ b/counters/C00211.md @@ -17,8 +17,8 @@ https://internews.org/story/using-comedy-and-social-media-educate-disinformation * **Belongs to tactic stage**: TA09 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00212.md b/counters/C00212.md index d867e78..11b1f09 100644 --- a/counters/C00212.md +++ b/counters/C00212.md @@ -11,10 +11,10 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | -| [A006 educator](../actors/A006.md) | Civil Society | -| [A018 government ](../actors/A018.md) | Government | +| Actor types | Sectors | +| ----------- | ------- | +| [A006 educator](../actortypes/A006.md) | Civil Society | +| [A018 government ](../actortypes/A018.md) | Government | diff --git a/counters/C00216.md b/counters/C00216.md index 46bffa8..31133c2 100644 --- a/counters/C00216.md +++ b/counters/C00216.md @@ -11,9 +11,9 @@ * **Belongs to tactic stage**: TA05 -| Actors | Sectors | -| ------ | ------- | -| [A023 adtech provider](../actors/A023.md) | Other Tech Company | +| Actor types | Sectors | +| ----------- | ------- | +| [A023 adtech provider](../actortypes/A023.md) | Other Tech Company | diff --git a/counters/C00219.md b/counters/C00219.md index 254d32c..12e4935 100644 --- a/counters/C00219.md +++ b/counters/C00219.md @@ -2,7 +2,7 @@ * **Summary**: Steganography. Adding date, signatures etc to stop issue of photo relabelling etc. -* **Playbooks**: Add date and source to images +* **Playbooks**: * **Metatechnique**: M003 - daylight @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA06 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00220.md b/counters/C00220.md index aab95a6..7fff2c2 100644 --- a/counters/C00220.md +++ b/counters/C00220.md @@ -1,6 +1,6 @@ # Counter C00220: Develop a monitoring and intelligence plan -* **Summary**: +* **Summary**: Create a plan for misinformation and disinformation response, before it's needed. Include connections / contacts needed, expected counteremessages etc. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00221.md b/counters/C00221.md index 742118c..0a0e665 100644 --- a/counters/C00221.md +++ b/counters/C00221.md @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00222.md b/counters/C00222.md index 510ce96..d893627 100644 --- a/counters/C00222.md +++ b/counters/C00222.md @@ -1,6 +1,6 @@ # Counter C00222: Tabletop simulations -* **Summary**: +* **Summary**: Simulate misinformation and disinformation campaigns, and responses to them, before campaigns happen. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA02 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters/C00223.md b/counters/C00223.md index e927160..fd9b855 100644 --- a/counters/C00223.md +++ b/counters/C00223.md @@ -1,6 +1,6 @@ # Counter C00223: Strengthen Trust in social media platforms -* **Summary**: +* **Summary**: Improve trust in the misinformation responses from social media and other platforms. Examples include creating greater transparancy on their actions and algorithms. * **Playbooks**: @@ -11,8 +11,8 @@ * **Belongs to tactic stage**: TA01 -| Actors | Sectors | -| ------ | ------- | +| Actor types | Sectors | +| ----------- | ------- | diff --git a/counters_index.md b/counters_index.md index 92c5e91..9525f6c 100644 --- a/counters_index.md +++ b/counters_index.md @@ -2,7 +2,7 @@ - + @@ -20,7 +20,7 @@ - + @@ -28,7 +28,7 @@ - + @@ -36,7 +36,7 @@ - + @@ -44,7 +44,7 @@ - + @@ -52,7 +52,7 @@ - + @@ -76,7 +76,7 @@ - + @@ -84,7 +84,7 @@ - + @@ -100,7 +100,7 @@ - + @@ -150,7 +150,7 @@ This could be used to adjust upvote weight via a trust factor of people and orga - + @@ -207,7 +207,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -215,7 +215,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -223,7 +223,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -231,7 +231,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -263,7 +263,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -271,7 +271,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -287,7 +287,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -295,7 +295,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -319,7 +319,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -327,7 +327,7 @@ https://www.isdglobal.org/wp-content/uploads/2016/06/Counter-narrative-Handbook_ - + @@ -351,7 +351,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -359,7 +359,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -375,7 +375,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - @@ -384,7 +384,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -392,7 +392,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -400,7 +400,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -416,7 +416,7 @@ T0046 - Search Engine Optimization: Sub-optimal website performance affect its s - + @@ -476,7 +476,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -516,7 +516,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -524,7 +524,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -532,7 +532,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -540,7 +540,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -548,7 +548,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -571,8 +571,8 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - - + + @@ -596,7 +596,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -612,15 +612,15 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + - - + + @@ -628,7 +628,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -636,7 +636,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -644,7 +644,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -660,15 +660,15 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + - - + + @@ -676,7 +676,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -684,7 +684,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -700,7 +700,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -708,7 +708,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -716,7 +716,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -724,7 +724,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -732,7 +732,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -748,7 +748,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -756,7 +756,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -780,7 +780,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -788,7 +788,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -835,8 +835,8 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - - + + @@ -868,7 +868,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -876,7 +876,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -996,7 +996,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -1060,7 +1060,7 @@ Note: This sounds eerlily like many Reddit communities where the most upvoted co - + @@ -1122,7 +1122,7 @@ https://internews.org/story/using-comedy-and-social-media-educate-disinformation - + @@ -1138,7 +1138,7 @@ https://internews.org/story/using-comedy-and-social-media-educate-disinformation - + @@ -1146,7 +1146,7 @@ https://internews.org/story/using-comedy-and-social-media-educate-disinformation - + diff --git a/detections_index.md b/detections_index.md index e684c25..1c705f5 100644 --- a/detections_index.md +++ b/detections_index.md @@ -2,7 +2,7 @@
idamitt_id name summary metatechnique
C00006 CensorshipAlter and/or block the publication/dissemination of adversary controlled informationAlter and/or block the publication/dissemination of information controlled by disinformation creators. Not recommended. M005 - removal TA01 Strategic Planning D2 Deny
C00008 Create shared fact-checking databaseSnopes is best-known exampleShare fact-checking resources - tips, responses, countermessages, across respose groups. Snopes is best-known example of fact-checking sites. M006 - scoring TA01 Strategic Planning D4 Degrade
C00009 Educate high profile influencers on best practicesFind online influencers. Provide training in the mechanisms of disinformation, how to spot campaigns, and/or how to contribute to responses by countermessaging, boosting information sites etc. M001 - resilience TA02 Objective Planning D2 Deny
C00010 Enhanced privacy regulation for social mediaPrivacy standardsImplement stronger privacy standards, to reduce the ability to microtarget community members. M004 - friction TA01 Strategic Planning D2 Deny
C00011 Media literacy. Games to identify fake newsCreate and use games to show people the mechanics of disinformation, and how to counter them. M001 - resilience TA02 Objective Planning D2 Deny
C00014 Real-time updates to fact-checking databaseexisting examples at Buzzfeed and Fema, especially during disastersUpdate fact-checking databases and resources in real time. Especially import for time-limited events like natural disasters. Existing examples at Buzzfeed and Fema. M006 - scoring TA06 Develop Content D4 Degrade
C00017 Repair broken social connectionsFor example, use a media campaign to promote in-group to out-group in person communication / activities . Technique could be in terms of forcing a reality-check by talking to people instead of reading about bogeymen. Technique could be in terms of forcing a reality-check by talking to people instead of reading about bogeymen. M010 - countermessaging TA01 Strategic Planning D3 Disrupt
C00021 Encourage in-person communicationEncourage offline communication M001 - resilience TA01 Strategic Planning D4 Degrade
C00029 Create fake website to issue counter narrative and counter narrative through physical merchandiseCreate websites in disinformation voids - spaces where people are looking for known disinformation. M002 - diversion TA02 Objective Planning D3 Disrupt
C00042 Address truth contained in narrativesFocus on and boost truths in misinformation narratives, removing misinformation from them. M010 - countermessaging TA03 Develop People D3 Disrupt
C00044 Keep people from posting to social media immediatelyMy interpretation is that this is method would be used to slow down activities or force a small delay between posts or replies to new posts.Use this to slow down activities or force a small delay between posts or replies to new posts. M004 - friction TA03 Develop People D3 Disrupt
C00046 Marginalise and discredit extremist groupsReduce the credibility of extremist groups posting misinformation. M013 - targeting TA03 Develop People D4 Degrade
C00047 Coordinated inauthenticsFlood disinformation spaces with obviously fake content, to dilute core misinformation narratives in them. M008 - data pollution TA04 Develop Networks D5 Deceive
C00053 Delete old accounts / Remove unused social media accountsremove or remove access to (e.g. stop the ability to update) old social media accounts, to reduce the pool of accounts available for takeover, botnets etc. M012 - cleaning TA04 Develop Networks D4 Degrade
C00056 Get off social mediaWe don't expect this to workEncourage people to leave spcial media. We don't expect this to work M004 - friction TA04 Develop Networks D2 Deny
C00059 Verification of project before posting (counters funding campaigns)third-party verification of projects posting funding campaigns before those campaigns can be posted. M011 - verification TA04 Develop Networks D2 Deny
C00060 Legal action against for-profit engagement factoriesTake legal action against for-profit "factories" creating misinformation. M013 - targeting TA02 Objective Planning D3 Disrupt
C00066 Co-opt a hashtag and drown it out (hijack it back)Flood a disinformation-related hashtag with other content. Examples include kPop stans flooding extremist hashtags with pop videos and images. M009 - dilution TA05 Microtargeting D3 Disrupt
C00067 Denigrate the recipient/ project (of online funding)Reduce the credibility of groups behind misinformation-linked funding campaigns. M013 - targeting TA03 Develop People D3 Disrupt
C00071 Block source of pollutionBlock websites, accounts, groups etc connected to misinformation and other information pollution. M005 - removal TA06 Develop Content D2 Deny
C00072 Remove non-relevant content from special interest groups – not recommendedCheck special-interest groups (e.g. medical, knitting) for unrelated and misinformation-linked content, and remove it. M005 - removal TA06 Develop Content D2 Deny
C00074 Identify and delete or rate limit identical content +Search for repeated content (text, images, videos etc); check for misinformation, rate-limit or delete repeats. M012 - cleaning TA06 Develop Content
C00075 normalise languagenormalise the language around disinformation and misinformation; give people the words for artifact and effect types. M010 - countermessaging TA06 Develop Content D2 Deny
C00076 Prohibit images in political discourse channelsMake political discussion channels text-only. M005 - removal TA06 Develop Content D2 Deny
C00077 Active defence: run TA03 "develop people” - not recommendedDevelop networks of communities and influencers around counter-misinformation. Match them to misinformation creators M013 - targeting TA03 Develop People D3 Disrupt
C00080 Create competing narrativeCould also be degradeCreate counternarratives, or narratives that compete in the same spaces as misinformation narratives. Could also be degrade M002 - diversion TA06 Develop Content D3 Disrupt
C00090 Fake engagement systemCreate honeypots for misinformation creators to engage with, and reduce the resources they have available for misinformation campaigns. M002 - diversion TA07 Channel Selection D5 Deceive
C00096 Strengthen institutions that are always truth tellersIncrease credibility, visibility, and reach of positive influencers in the information space. M006 - scoring TA01 Strategic Planning D7 Deter
C00097 Require use of verified identities to contribute to poll or commentReduce poll flooding by online taking comments or poll entries from verified accounts. M004 - friction TA07 Channel Selection D2 Deny
C00098 Revocation of allowlisted or "verified" statusremove blue checkmarks etc from known misinformation accounts. M004 - friction TA07 Channel Selection D2 Deny
C00099 Strengthen verification methodsImprove content veerification methods available to groups, individuals etc. M004 - friction TA07 Channel Selection D2 Deny
C00100 Hashtag jackingPost large volumes of unrelated content on known misinformation hashtags M002 - diversion TA08 Pump Priming D3 Disrupt
C00105Buy more advertising than the adversary to shift influence and algorithmsBuy more advertising than misinformation creatorsShift influence and algorithms by posting more adverts into spaces than misinformation creators. M009 - dilution TA07 Channel Selection D3 Disrupt
C00109 Dampen Emotional ReactionReduce emotional responses to misinformation through calming messages, etc. M001 - resilience TA09 Exposure D3 Disrupt
C00112 "Prove they are not an op!"Challenge misinformation creators to prove they're not an information operation. M004 - friction TA08 Pump Priming D2 Deny
C00113Debunk and defuse a fake expert / credentials. Attack audience quality of fake expertDebunk and defuse a fake expert / credentials.Debunk fake experts, their credentials, and potentially also their audience quality M003 - daylight TA08 Pump Priming D2 Deny
C00114 Don't engage with payloadsStop passing on misinformation M004 - friction TA08 Pump Priming D2 Deny
C00115 Expose actor and intentionsDebunk misinformation creators and posters. M003 - daylight TA08 Pump Priming D2 Deny
C00116 Provide proof of involvementBuild and post information about groups etc's involvement in misinformation incidents. M003 - daylight TA08 Pump Priming D2 Deny
C00118 Repurpose images with new textAdd countermessage text to iamges used in misinformation incidents. M010 - countermessaging TA08 Pump Priming D4 Degrade
C00119Engage payload and debunk. Provide link to facts. Might be okay. Engage payload and debunk. debunk misinformation content. Provide link to facts. M010 - countermessaging TA08 Pump Priming D7 Deter
C00120 Open dialogue about design of platforms to produce different outcomesRedesign platforms and algorithms to reduce the effectiveness of disinformation M007 - metatechnique TA08 Pump Priming D7 Deter
C00121 Tool transparency and literacy for channels people follow. Make algorithms in platforms explainable, and visible to people using those platforms. M001 - resilience TA08 Pump Priming D7 Deter
C00123 Remove or rate limit botnetsreduce the visibility of known botnets online. M004 - friction TA09 Exposure D3 Disrupt
C00124 Don't feed the trollsDon't engage with individuals relaying misinformation. M004 - friction TA09 Exposure D3 Disrupt
C00125 PrebunkingProduce material in advance of misinformation incidents, by anticipating the narratives used in them, and debunking them. M001 - resilience TA09 Exposure D3 Disrupt
C00126 Social media amber alertCreate an alert system around disinformation and misinformation artifacts, narratives, and incidents M003 - daylight TA09 Exposure D3 Disrupt
C00128 Create friction by marking content with ridicule or other "decelerants"Repost or comment on misinformation artifacts, using ridicule or other content to reduce the likelihood of reposting. M009 - dilution TA09 Exposure D3 Disrupt
C00130 Mentorship: elders, youth, credit. Learn vicariously.Train local influencers in countering misinformation. M001 - resilience TA05 Microtargeting D7 Deter
C00131 Seize and analyse botnet serversTake botnet servers offline by seizing them. M005 - removal TA11 Persistence D2 Deny
C00136 Microtarget most likely targets then send them countermessagesFind communities likely to be targetted by misinformation campaigns, and send them countermessages or pointers to information sources. M010 - countermessaging TA08 Pump Priming D3 Disrupt
C00138 Spam domestic actors with lawsuitsFile multiple lawsuits against known misinformation creators and posters, to distract them from disinformation creation. M014 - reduce resources TA11 Persistence D3 Disrupt
C00147Make amplification of social media ports expire (e.g. can't like/ retweet after n days)Make amplification of social media posts expire (e.g. can't like/ retweet after n days)Stop new community activity (likes, comments) on old social media posts. M004 - friction TA09 Exposure D3 Disrupt
C00154 Ask media not to report false informationTrain media to spot and respond to misinformation, and ask them not to post or transmit misinformation they've found. M005 - removal TA08 Pump Priming D2 Deny
C00155 Ban incident actors from funding sitesBan misinformation creators and posters from funding sites M005 - removal TA03 Develop People D2 Deny
C00184 Media exposurehighlight misinformation activities and actors in media M003 - daylight TA08 Pump Priming D4 Degrade
C00203 Stop offering press credentials to propaganda outletsRemove access to official press events from known misinformation actors. M004 - friction TA04 Develop Networks D3 Disrupt
C00220 Develop a monitoring and intelligence planCreate a plan for misinformation and disinformation response, before it's needed. Include connections / contacts needed, expected counteremessages etc. M007 - metatechnique TA01 Strategic Planning D3 Disrupt
C00222 Tabletop simulationsSimulate misinformation and disinformation campaigns, and responses to them, before campaigns happen. M007 - metatechnique TA02 Objective Planning D3 Disrupt
C00223 Strengthen Trust in social media platformsImprove trust in the misinformation responses from social media and other platforms. Examples include creating greater transparancy on their actions and algorithms. M001 - resilience TA01 Strategic Planning D3 Disrupt
- + @@ -12,7 +12,7 @@ - + diff --git a/incidents_index.md b/incidents_index.md index 22c9283..ece2eda 100644 --- a/incidents_index.md +++ b/incidents_index.md @@ -2,12 +2,12 @@
idamitt_id name summary metatechnique
F00001 Analyse aborted / failed campaignsExamine failed campaigns. How did they fail? Can we create useful activities that increase these failures? TA01 Strategic Planning D1 Detect
- + - - - + + + diff --git a/metatechniques/M003.md b/metatechniques/M003.md index 1af8872..9073a1d 100644 --- a/metatechniques/M003.md +++ b/metatechniques/M003.md @@ -5,7 +5,7 @@ | Counters | Response types | | -------- | -------------- | -| [C00113 Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert](../counters/C00113.md) | D2 Deny | +| [C00113 Debunk and defuse a fake expert / credentials.](../counters/C00113.md) | D2 Deny | | [C00115 Expose actor and intentions](../counters/C00115.md) | D2 Deny | | [C00116 Provide proof of involvement](../counters/C00116.md) | D2 Deny | | [C00019 Reduce effect of division-enablers](../counters/C00019.md) | D3 Disrupt | diff --git a/metatechniques/M004.md b/metatechniques/M004.md index e01fe70..c7eaf10 100644 --- a/metatechniques/M004.md +++ b/metatechniques/M004.md @@ -20,7 +20,7 @@ | [C00123 Remove or rate limit botnets](../counters/C00123.md) | D3 Disrupt | | [C00124 Don't feed the trolls](../counters/C00124.md) | D3 Disrupt | | [C00139 Weaponise youtube content matrices](../counters/C00139.md) | D3 Disrupt | -| [C00147 Make amplification of social media ports expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | +| [C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | | [C00203 Stop offering press credentials to propaganda outlets](../counters/C00203.md) | D3 Disrupt | | [C00101 Create friction by rate-limiting engagement](../counters/C00101.md) | D4 Degrade | | [C00142 Platform adds warning label and decision point when sharing content](../counters/C00142.md) | D4 Degrade | diff --git a/metatechniques/M009.md b/metatechniques/M009.md index 00d9ced..219220e 100644 --- a/metatechniques/M009.md +++ b/metatechniques/M009.md @@ -7,7 +7,7 @@ | -------- | -------------- | | [C00031 Dilute the core narrative - create multiple permutations, target / amplify](../counters/C00031.md) | D3 Disrupt | | [C00066 Co-opt a hashtag and drown it out (hijack it back)](../counters/C00066.md) | D3 Disrupt | -| [C00105 Buy more advertising than the adversary to shift influence and algorithms](../counters/C00105.md) | D3 Disrupt | +| [C00105 Buy more advertising than misinformation creators](../counters/C00105.md) | D3 Disrupt | | [C00128 Create friction by marking content with ridicule or other "decelerants"](../counters/C00128.md) | D3 Disrupt | | [C00087 Make more noise than the disinformation](../counters/C00087.md) | D4 Degrade | | [C00178 Fill information voids with non-disinformation content](../counters/C00178.md) | D4 Degrade | diff --git a/metatechniques/M010.md b/metatechniques/M010.md index 85619a4..7fd3516 100644 --- a/metatechniques/M010.md +++ b/metatechniques/M010.md @@ -18,7 +18,7 @@ | [C00062 Free open library sources worldwide](../counters/C00062.md) | D4 Degrade | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | | [C00118 Repurpose images with new text](../counters/C00118.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | diff --git a/metatechniques_index.md b/metatechniques_index.md index 8fd9ebc..7485e2b 100644 --- a/metatechniques_index.md +++ b/metatechniques_index.md @@ -2,7 +2,7 @@
idamitt_id name typeYear StartedTo countryFound viayear_startedto_countryfound_via
I00001
- + diff --git a/phases_index.md b/phases_index.md index 709b8d4..78226fa 100644 --- a/phases_index.md +++ b/phases_index.md @@ -2,7 +2,7 @@
idamitt_id name summary
- + diff --git a/responsetype_index.md b/responsetype_index.md index 4278758..fe66d01 100644 --- a/responsetype_index.md +++ b/responsetype_index.md @@ -2,7 +2,7 @@
idamitt_id name summary
- + diff --git a/tactics/TA01.md b/tactics/TA01.md index c0a1080..4a364fd 100644 --- a/tactics/TA01.md +++ b/tactics/TA01.md @@ -11,6 +11,7 @@ | [TK0001 Goal setting](../tasks/TK0001.md) | | [TK0002 Population research / audience analysis (centre of gravity)](../tasks/TK0002.md) | | [TK0003 Campaign design (objective design)](../tasks/TK0003.md) | +| [TK0031 OPSEC for TA01](../tasks/TK0031.md) | diff --git a/tactics/TA02.md b/tactics/TA02.md index e451eb4..507fc03 100644 --- a/tactics/TA02.md +++ b/tactics/TA02.md @@ -18,6 +18,7 @@ | [TK0007 Decide on techniques (4Ds etc)](../tasks/TK0007.md) | | [TK0008 Create subnarratives](../tasks/TK0008.md) | | [TK0009 4chan/8chan coordinating content](../tasks/TK0009.md) | +| [TK0032 OPSEC for TA02](../tasks/TK0032.md) | diff --git a/tactics/TA03.md b/tactics/TA03.md index b9b536c..9b3629d 100644 --- a/tactics/TA03.md +++ b/tactics/TA03.md @@ -12,6 +12,7 @@ | [TK0011 Recruit contractors](../tasks/TK0011.md) | | [TK0012 Recruit partisans](../tasks/TK0012.md) | | [TK0013 find influencers](../tasks/TK0013.md) | +| [TK0033 OPSEC for TA03](../tasks/TK0033.md) | diff --git a/tactics/TA04.md b/tactics/TA04.md index 8b60ff5..907dd6a 100644 --- a/tactics/TA04.md +++ b/tactics/TA04.md @@ -11,6 +11,7 @@ | [TK0014 Network building](../tasks/TK0014.md) | | [TK0015 Network infiltration](../tasks/TK0015.md) | | [TK0016 identify targets - susceptible audience members in networks](../tasks/TK0016.md) | +| [TK0034 OPSEC for TA04](../tasks/TK0034.md) | diff --git a/tactics/TA05.md b/tactics/TA05.md index 8b435be..c6cf694 100644 --- a/tactics/TA05.md +++ b/tactics/TA05.md @@ -8,6 +8,7 @@ | Tasks | | ----- | +| [TK0035 OPSEC for TA05](../tasks/TK0035.md) | diff --git a/tactics/TA06.md b/tactics/TA06.md index de896a4..cae8fee 100644 --- a/tactics/TA06.md +++ b/tactics/TA06.md @@ -10,6 +10,7 @@ | ----- | | [TK0017 content creation](../tasks/TK0017.md) | | [TK0018 content appropriation](../tasks/TK0018.md) | +| [TK0036 OPSEC for TA06](../tasks/TK0036.md) | diff --git a/tactics/TA07.md b/tactics/TA07.md index d4949d7..9e3ecbe 100644 --- a/tactics/TA07.md +++ b/tactics/TA07.md @@ -8,6 +8,7 @@ | Tasks | | ----- | +| [TK0037 OPSEC for TA07](../tasks/TK0037.md) | @@ -32,7 +33,7 @@ | [C00098 Revocation of allowlisted or "verified" status](../counters/C00098.md) | D2 Deny | | [C00099 Strengthen verification methods](../counters/C00099.md) | D2 Deny | | [C00195 Redirect searches away from disinformation or extremist content ](../counters/C00195.md) | D2 Deny | -| [C00105 Buy more advertising than the adversary to shift influence and algorithms](../counters/C00105.md) | D3 Disrupt | +| [C00105 Buy more advertising than misinformation creators](../counters/C00105.md) | D3 Disrupt | | [C00101 Create friction by rate-limiting engagement](../counters/C00101.md) | D4 Degrade | | [C00090 Fake engagement system](../counters/C00090.md) | D5 Deceive | | [C00103 Create a bot that engages / distract trolls](../counters/C00103.md) | D5 Deceive | diff --git a/tactics/TA08.md b/tactics/TA08.md index 93140c2..6e2a5db 100644 --- a/tactics/TA08.md +++ b/tactics/TA08.md @@ -10,6 +10,7 @@ | ----- | | [TK0019 anchor trust / credibility](../tasks/TK0019.md) | | [TK0020 insert themes](../tasks/TK0020.md) | +| [TK0038 OPSEC for TA08](../tasks/TK0038.md) | @@ -29,7 +30,7 @@ | Counters | Response types | | -------- | -------------- | | [C00112 "Prove they are not an op!"](../counters/C00112.md) | D2 Deny | -| [C00113 Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert](../counters/C00113.md) | D2 Deny | +| [C00113 Debunk and defuse a fake expert / credentials.](../counters/C00113.md) | D2 Deny | | [C00114 Don't engage with payloads](../counters/C00114.md) | D2 Deny | | [C00115 Expose actor and intentions](../counters/C00115.md) | D2 Deny | | [C00116 Provide proof of involvement](../counters/C00116.md) | D2 Deny | @@ -40,7 +41,7 @@ | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | | [C00118 Repurpose images with new text](../counters/C00118.md) | D4 Degrade | | [C00184 Media exposure](../counters/C00184.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00120 Open dialogue about design of platforms to produce different outcomes](../counters/C00120.md) | D7 Deter | | [C00121 Tool transparency and literacy for channels people follow. ](../counters/C00121.md) | D7 Deter | diff --git a/tactics/TA09.md b/tactics/TA09.md index 0af07a1..bcd449f 100644 --- a/tactics/TA09.md +++ b/tactics/TA09.md @@ -10,6 +10,7 @@ | ----- | | [TK0021 deamplification (suppression, censoring)](../tasks/TK0021.md) | | [TK0022 amplification](../tasks/TK0022.md) | +| [TK0039 OPSEC for TA09](../tasks/TK0039.md) | @@ -39,7 +40,7 @@ | [C00125 Prebunking](../counters/C00125.md) | D3 Disrupt | | [C00126 Social media amber alert](../counters/C00126.md) | D3 Disrupt | | [C00128 Create friction by marking content with ridicule or other "decelerants"](../counters/C00128.md) | D3 Disrupt | -| [C00147 Make amplification of social media ports expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | +| [C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | | [C00200 Respected figure (influencer) disavows misinfo](../counters/C00200.md) | D3 Disrupt | | [C00211 Use humorous counter-narratives](../counters/C00211.md) | D3 Disrupt | diff --git a/tactics/TA10.md b/tactics/TA10.md index 6eebbac..5b60221 100644 --- a/tactics/TA10.md +++ b/tactics/TA10.md @@ -8,6 +8,7 @@ | Tasks | | ----- | +| [TK0040 OPSEC for TA10](../tasks/TK0040.md) | diff --git a/tactics/TA11.md b/tactics/TA11.md index a7e362d..8aa488e 100644 --- a/tactics/TA11.md +++ b/tactics/TA11.md @@ -13,6 +13,7 @@ | [TK0025 advocacy/ zealotry](../tasks/TK0025.md) | | [TK0026 conversion](../tasks/TK0026.md) | | [TK0027 keep recruiting/prospecting](../tasks/TK0027.md) | +| [TK0041 OPSEC for TA11](../tasks/TK0041.md) | diff --git a/tactics/TA12.md b/tactics/TA12.md index 8b8e3b0..1bcd3e2 100644 --- a/tactics/TA12.md +++ b/tactics/TA12.md @@ -11,6 +11,7 @@ | [TK0028 evaluation](../tasks/TK0028.md) | | [TK0029 post-mortem](../tasks/TK0029.md) | | [TK0030 after-action analysis](../tasks/TK0030.md) | +| [TK0042 OPSEC for TA12](../tasks/TK0042.md) | diff --git a/tactics_index.md b/tactics_index.md index 8fa4a9a..eb02edd 100644 --- a/tactics_index.md +++ b/tactics_index.md @@ -2,7 +2,7 @@
idamitt_id name summary
- + diff --git a/tasks/TK0031.md b/tasks/TK0031.md new file mode 100644 index 0000000..9bea86e --- /dev/null +++ b/tasks/TK0031.md @@ -0,0 +1,7 @@ +# Task TK0031: OPSEC for TA01 + +* **Summary:** + +* **Belongs to tactic stage:** TA01 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0032.md b/tasks/TK0032.md new file mode 100644 index 0000000..44599ad --- /dev/null +++ b/tasks/TK0032.md @@ -0,0 +1,7 @@ +# Task TK0032: OPSEC for TA02 + +* **Summary:** + +* **Belongs to tactic stage:** TA02 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0033.md b/tasks/TK0033.md new file mode 100644 index 0000000..4eef41d --- /dev/null +++ b/tasks/TK0033.md @@ -0,0 +1,7 @@ +# Task TK0033: OPSEC for TA03 + +* **Summary:** + +* **Belongs to tactic stage:** TA03 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0034.md b/tasks/TK0034.md new file mode 100644 index 0000000..6c5e50d --- /dev/null +++ b/tasks/TK0034.md @@ -0,0 +1,7 @@ +# Task TK0034: OPSEC for TA04 + +* **Summary:** + +* **Belongs to tactic stage:** TA04 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0035.md b/tasks/TK0035.md new file mode 100644 index 0000000..65f672c --- /dev/null +++ b/tasks/TK0035.md @@ -0,0 +1,7 @@ +# Task TK0035: OPSEC for TA05 + +* **Summary:** + +* **Belongs to tactic stage:** TA05 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0036.md b/tasks/TK0036.md new file mode 100644 index 0000000..ccdf56e --- /dev/null +++ b/tasks/TK0036.md @@ -0,0 +1,7 @@ +# Task TK0036: OPSEC for TA06 + +* **Summary:** + +* **Belongs to tactic stage:** TA06 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0037.md b/tasks/TK0037.md new file mode 100644 index 0000000..d206e42 --- /dev/null +++ b/tasks/TK0037.md @@ -0,0 +1,7 @@ +# Task TK0037: OPSEC for TA07 + +* **Summary:** + +* **Belongs to tactic stage:** TA07 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0038.md b/tasks/TK0038.md new file mode 100644 index 0000000..a870cae --- /dev/null +++ b/tasks/TK0038.md @@ -0,0 +1,7 @@ +# Task TK0038: OPSEC for TA08 + +* **Summary:** + +* **Belongs to tactic stage:** TA08 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0039.md b/tasks/TK0039.md new file mode 100644 index 0000000..d491130 --- /dev/null +++ b/tasks/TK0039.md @@ -0,0 +1,7 @@ +# Task TK0039: OPSEC for TA09 + +* **Summary:** + +* **Belongs to tactic stage:** TA09 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0040.md b/tasks/TK0040.md new file mode 100644 index 0000000..fd573af --- /dev/null +++ b/tasks/TK0040.md @@ -0,0 +1,7 @@ +# Task TK0040: OPSEC for TA10 + +* **Summary:** + +* **Belongs to tactic stage:** TA10 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0041.md b/tasks/TK0041.md new file mode 100644 index 0000000..f16046f --- /dev/null +++ b/tasks/TK0041.md @@ -0,0 +1,7 @@ +# Task TK0041: OPSEC for TA11 + +* **Summary:** + +* **Belongs to tactic stage:** TA11 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks/TK0042.md b/tasks/TK0042.md new file mode 100644 index 0000000..5e744d5 --- /dev/null +++ b/tasks/TK0042.md @@ -0,0 +1,7 @@ +# Task TK0042: OPSEC for TA12 + +* **Summary:** + +* **Belongs to tactic stage:** TA12 + +DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/tasks_index.md b/tasks_index.md index 8877165..dad2ea5 100644 --- a/tasks_index.md +++ b/tasks_index.md @@ -2,7 +2,7 @@
idamitt_id name summary phase_id
- + @@ -188,69 +188,75 @@ - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - + + + + + + + +
idamitt_id name summary tactic_idTA12
TK0031OPSEC for TA01 TA01
TK0032OPSEC for TA02 TA02
TK0033OPSEC for TA03 TA03
TK0034OPSEC for TA04 TA04
TK0035OPSEC for TA05 TA05
TK0036OPSEC for TA06 TA06
TK0037OPSEC for TA07 TA07
TK0038OPSEC for TA08 TA08
TK0039OPSEC for TA09 TA09
TK0040OPSEC for TA10 TA10
TK0041OPSEC for TA11 TA11
TK0042OPSEC for TA12 TA12
diff --git a/techniques/T0016.md b/techniques/T0016.md index 034db6f..4214819 100644 --- a/techniques/T0016.md +++ b/techniques/T0016.md @@ -18,7 +18,7 @@ | [C00012 Platform regulation](../counters/C00012.md) | D2 Deny | | [C00073 Inoculate populations through media literacy training](../counters/C00073.md) | D2 Deny | | [C00076 Prohibit images in political discourse channels](../counters/C00076.md) | D2 Deny | -| [C00105 Buy more advertising than the adversary to shift influence and algorithms](../counters/C00105.md) | D3 Disrupt | +| [C00105 Buy more advertising than misinformation creators](../counters/C00105.md) | D3 Disrupt | | [C00106 Click-bait centrist content](../counters/C00106.md) | D3 Disrupt | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | diff --git a/techniques/T0018.md b/techniques/T0018.md index bb98dcd..4859f4a 100644 --- a/techniques/T0018.md +++ b/techniques/T0018.md @@ -20,7 +20,7 @@ | [C00012 Platform regulation](../counters/C00012.md) | D2 Deny | | [C00065 Reduce political targeting](../counters/C00065.md) | D3 Disrupt | | [C00076 Prohibit images in political discourse channels](../counters/C00076.md) | D2 Deny | -| [C00105 Buy more advertising than the adversary to shift influence and algorithms](../counters/C00105.md) | D3 Disrupt | +| [C00105 Buy more advertising than misinformation creators](../counters/C00105.md) | D3 Disrupt | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00129 Use banking to cut off access ](../counters/C00129.md) | D2 Deny | diff --git a/techniques/T0021.md b/techniques/T0021.md index 0eb9296..890a3e7 100644 --- a/techniques/T0021.md +++ b/techniques/T0021.md @@ -27,7 +27,7 @@ | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | | [C00118 Repurpose images with new text](../counters/C00118.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00176 Improve Coordination amongst stakeholders: public and private](../counters/C00176.md) | D7 Deter | | [C00211 Use humorous counter-narratives](../counters/C00211.md) | D3 Disrupt | diff --git a/techniques/T0022.md b/techniques/T0022.md index 31c7381..5df4ff2 100644 --- a/techniques/T0022.md +++ b/techniques/T0022.md @@ -32,7 +32,7 @@ Example: QAnon: conspiracy theory is an explanation of an event or situation tha | [C00096 Strengthen institutions that are always truth tellers](../counters/C00096.md) | D7 Deter | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00125 Prebunking](../counters/C00125.md) | D3 Disrupt | | [C00126 Social media amber alert](../counters/C00126.md) | D3 Disrupt | diff --git a/techniques/T0024.md b/techniques/T0024.md index 3488715..21708bf 100644 --- a/techniques/T0024.md +++ b/techniques/T0024.md @@ -22,7 +22,7 @@ | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | | [C00118 Repurpose images with new text](../counters/C00118.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00143 (botnet) DMCA takedown requests to waste group time](../counters/C00143.md) | D4 Degrade | | [C00176 Improve Coordination amongst stakeholders: public and private](../counters/C00176.md) | D7 Deter | diff --git a/techniques/T0025.md b/techniques/T0025.md index 4ad409d..7f8b84b 100644 --- a/techniques/T0025.md +++ b/techniques/T0025.md @@ -30,7 +30,7 @@ Example (2019) DFRLab report "Secondary Infektion” highlights incident with ke | [C00096 Strengthen institutions that are always truth tellers](../counters/C00096.md) | D7 Deter | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00165 Ensure integrity of official documents](../counters/C00165.md) | D2 Deny | | [C00176 Improve Coordination amongst stakeholders: public and private](../counters/C00176.md) | D7 Deter | diff --git a/techniques/T0026.md b/techniques/T0026.md index 1b24b5a..a2c608c 100644 --- a/techniques/T0026.md +++ b/techniques/T0026.md @@ -25,7 +25,7 @@ | [C00096 Strengthen institutions that are always truth tellers](../counters/C00096.md) | D7 Deter | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00176 Improve Coordination amongst stakeholders: public and private](../counters/C00176.md) | D7 Deter | | [C00195 Redirect searches away from disinformation or extremist content ](../counters/C00195.md) | D2 Deny | diff --git a/techniques/T0044.md b/techniques/T0044.md index 240ff18..0cead4d 100644 --- a/techniques/T0044.md +++ b/techniques/T0044.md @@ -28,7 +28,7 @@ Examples: (2019) China formally arrests Canadians Spavor and Kovrig, accuses the | [C00092 Establish a truth teller reputation score for influencers](../counters/C00092.md) | D7 Deter | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | | [C00118 Repurpose images with new text](../counters/C00118.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00174 Create a healthier news environment](../counters/C00174.md) | D2 Deny | | [C00184 Media exposure](../counters/C00184.md) | D4 Degrade | diff --git a/techniques/T0045.md b/techniques/T0045.md index 2a7524d..ecaa195 100644 --- a/techniques/T0045.md +++ b/techniques/T0045.md @@ -22,9 +22,9 @@ | [C00097 Require use of verified identities to contribute to poll or comment](../counters/C00097.md) | D2 Deny | | [C00099 Strengthen verification methods](../counters/C00099.md) | D2 Deny | | [C00107 Content moderation](../counters/C00107.md) | D2 Deny | -| [C00113 Debunk and defuse a fake expert / credentials. Attack audience quality of fake expert](../counters/C00113.md) | D2 Deny | +| [C00113 Debunk and defuse a fake expert / credentials.](../counters/C00113.md) | D2 Deny | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00125 Prebunking](../counters/C00125.md) | D3 Disrupt | | [C00126 Social media amber alert](../counters/C00126.md) | D3 Disrupt | diff --git a/techniques/T0060.md b/techniques/T0060.md index 7c745d6..676fac2 100644 --- a/techniques/T0060.md +++ b/techniques/T0060.md @@ -17,13 +17,13 @@ | [C00078 Change Search Algorithms for Disinformation Content](../counters/C00078.md) | D3 Disrupt | | [C00085 Mute content](../counters/C00085.md) | D3 Disrupt | | [C00117 Downgrade / de-amplify so message is seen by fewer people](../counters/C00117.md) | D4 Degrade | -| [C00119 Engage payload and debunk. Provide link to facts. ](../counters/C00119.md) | D7 Deter | +| [C00119 Engage payload and debunk. ](../counters/C00119.md) | D7 Deter | | [C00122 Content moderation](../counters/C00122.md) | D2 Deny | | [C00123 Remove or rate limit botnets](../counters/C00123.md) | D3 Disrupt | | [C00131 Seize and analyse botnet servers](../counters/C00131.md) | D2 Deny | | [C00138 Spam domestic actors with lawsuits](../counters/C00138.md) | D3 Disrupt | | [C00143 (botnet) DMCA takedown requests to waste group time](../counters/C00143.md) | D4 Degrade | -| [C00147 Make amplification of social media ports expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | +| [C00147 Make amplification of social media posts expire (e.g. can't like/ retweet after n days)](../counters/C00147.md) | D3 Disrupt | DO NOT EDIT ABOVE THIS LINE - PLEASE ADD NOTES BELOW \ No newline at end of file diff --git a/techniques/T0062.md b/techniques/T0062.md index a689479..a91deaa 100644 --- a/techniques/T0062.md +++ b/techniques/T0062.md @@ -1,6 +1,6 @@ # Technique T0062: Behaviour changes -* **Summary**: +* **Summary**: Monitor and evaluate behaviour changes from misinformation incidents. * **Belongs to tactic stage**: TA12 diff --git a/techniques/T0063.md b/techniques/T0063.md index 6d37fdc..da6e335 100644 --- a/techniques/T0063.md +++ b/techniques/T0063.md @@ -1,6 +1,6 @@ # Technique T0063: Message reach -* **Summary**: +* **Summary**: Monitor and evaluate message reach in misinformation incidents. * **Belongs to tactic stage**: TA12 diff --git a/techniques/T0064.md b/techniques/T0064.md index cec5331..b42e84b 100644 --- a/techniques/T0064.md +++ b/techniques/T0064.md @@ -1,6 +1,6 @@ # Technique T0064: Social media engagement -* **Summary**: +* **Summary**: Monitor and evaluate social media engagement in misinformation incidents. * **Belongs to tactic stage**: TA12 diff --git a/techniques_index.md b/techniques_index.md index e9a1a19..69260a0 100644 --- a/techniques_index.md +++ b/techniques_index.md @@ -2,7 +2,7 @@ - + @@ -421,19 +421,19 @@ Examples of tertiary sites include Russia Insider, The Duran, geopolitica.ru, Mi - + - + - +
idamitt_id name summary tactic_id
T0062 Behaviour changesMonitor and evaluate behaviour changes from misinformation incidents. TA12
T0063 Message reachMonitor and evaluate message reach in misinformation incidents. TA12
T0064 Social media engagementMonitor and evaluate social media engagement in misinformation incidents. TA12
diff --git a/visualisations/cross_counterid_techniqueid.csv b/visualisations/cross_counterid_techniqueid.csv index 5f12d17..41359b4 100644 --- a/visualisations/cross_counterid_techniqueid.csv +++ b/visualisations/cross_counterid_techniqueid.csv @@ -21,17 +21,36 @@ C00011,T0059,1 C00012,TA07,1 C00012,TA09,1 C00012,TA10,1 +C00012,T0001,1 C00012,T0002,1 C00012,T0007,1 +C00012,T0008,1 +C00012,T0009,1 +C00012,T0013,1 C00012,T0014,1 C00012,T0015,1 +C00012,T0016,1 +C00012,T0017,1 +C00012,T0018,1 +C00012,T0021,1 +C00012,T0022,1 +C00012,T0024,1 C00012,T0025,1 +C00012,T0026,1 C00012,T0043,1 +C00012,T0045,1 C00012,T0046,1 C00012,T0047,1 C00012,T0048,1 +C00012,T0049,1 C00012,T0051,1 +C00012,T0052,1 +C00012,T0053,1 +C00012,T0054,1 C00012,T0055,1 +C00012,T0056,1 +C00012,T0057,1 +C00012,T0061,1 C00014,TA01,1 C00014,TA06,1 C00014,TA08,1 @@ -40,8 +59,31 @@ C00014,T0009,1 C00014,T0008,1 C00014,T0013,1 C00014,T0014,1 -C00016,TA07,1 -C00016,T0043,1 +C00006,T0009,1 +C00006,T0008,1 +C00006,T0007,1 +C00006,T0013,1 +C00006,T0014,1 +C00006,T0015,1 +C00006,T0016,1 +C00006,T0017,1 +C00006,T0018,1 +C00006,T0022,1 +C00006,T0021,1 +C00006,T0025,1 +C00006,T0024,1 +C00006,T0026,1 +C00006,T0045,1 +C00006,T0043,1 +C00006,T0056,1 +C00006,T0051,1 +C00006,T0049,1 +C00006,T0052,1 +C00006,T0054,1 +C00006,T0053,1 +C00006,T0055,1 +C00006,T0058,1 +C00006,T0057,1 C00019,TA08,1 C00019,TA09,1 C00019,TA10,1 @@ -115,51 +157,163 @@ C00070,T0046,1 C00070,T0052,1 C00070,T0055,1 C00070,T0057,1 -C00070,T0061,1 +C00070,T0056,1 C00071,T0019,1 C00071,T0056,1 +C00072,T0019,1 +C00072,T0010,1 +C00072,T0044,1 +C00072,T0021,1 C00072,T0022,1 -C00073,T0012,1 +C00072,T0023,1 +C00072,T0026,1 +C00072,T0025,1 +C00072,T0027,1 +C00072,T0039,1 +C00072,T0055,1 +C00072,T0049,1 +C00073,T0016,1 C00073,T0019,1 C00073,T0056,1 +C00073,T0010,1 +C00073,T0021,1 +C00073,T0022,1 +C00073,T0023,1 +C00073,T0026,1 +C00073,T0025,1 +C00073,T0027,1 +C00073,T0039,1 +C00073,T0040,1 +C00073,T0044,1 +C00073,T0045,1 +C00073,T0048,1 +C00073,T0053,1 +C00073,T0056,1 +C00073,T0060,1 +C00074,T0019,1 +C00074,T0021,1 C00074,T0022,1 C00074,T0026,1 C00074,T0025,1 +C00074,T0043,1 +C00074,T0050,1 +C00074,T0051,1 +C00074,T0049,1 +C00074,T0052,1 +C00074,T0053,1 +C00074,T0054,1 +C00074,T0055,1 +C00074,T0057,1 +C00074,T0061,1 +C00074,T0060,1 +C00076,T0016,1 +C00076,T0018,1 +C00076,T0039,1 +C00076,T0044,1 C00076,T0021,1 -C00076,T0024,1 C00078,TA07,1 +C00078,T0044,1 C00078,T0046,1 -C00078,T0021,1 -C00080,adapt,1 -C00081,info,1 +C00078,T0056,1 +C00078,T0052,1 +C00078,T0060,1 +C00080,T0003,1 +C00080,T0004,1 +C00080,T0028,1 +C00080,T0022,1 +C00080,T0027,1 +C00081,T0003,1 +C00081,T0004,1 +C00081,T0028,1 +C00081,T0006,1 +C00081,T0022,1 +C00081,T0023,1 +C00081,T0026,1 +C00081,T0027,1 +C00081,T0044,1 +C00081,T0053,1 +C00081,T0054,1 +C00081,T0055,1 +C00081,T0056,1 +C00082,T0002,1 +C00082,T0003,1 +C00082,T0004,1 +C00082,T0028,1 +C00082,T0006,1 +C00082,T0022,1 +C00082,T0023,1 +C00082,T0025,1 +C00082,T0026,1 +C00082,T0027,1 +C00082,T0044,1 +C00082,T0053,1 +C00082,T0054,1 +C00082,T0055,1 +C00082,T0056,1 C00084,T0002,1 +C00084,T0003,1 +C00084,T0004,1 +C00084,T0028,1 C00084,T0006,1 -C00084,T0015,1 -C00084,T0017,1 -C00084,T0057,1 +C00084,T0022,1 +C00084,T0027,1 C00084,T0059,1 -C00085,TA03,1 -C00085,TA04,1 -C00085,TA05,1 -C00085,TA06,1 -C00085,TA07,1 -C00085,TA08,1 -C00085,TA09,1 -C00085,TA10,1 -C00085,TA11,1 -C00086,TA09,1 -C00089,T0021,1 +C00085,T0008,1 +C00085,T0007,1 +C00085,T0017,1 +C00085,T0022,1 +C00085,T0021,1 +C00085,T0025,1 +C00085,T0024,1 +C00085,T0026,1 +C00085,T0045,1 +C00085,T0044,1 +C00085,T0049,1 +C00085,T0051,1 +C00085,T0052,1 +C00085,T0053,1 +C00085,T0054,1 +C00085,T0055,1 +C00085,T0056,1 +C00085,T0057,1 +C00085,T0061,1 +C00085,T0060,1 +C00086,T0044,1 +C00086,T0050,1 +C00086,T0051,1 +C00086,T0049,1 +C00086,T0054,1 +C00086,T0053,1 +C00086,T0055,1 +C00087,T0039,1 +C00087,T0044,1 +C00087,T0048,1 +C00087,T0050,1 +C00087,T0051,1 +C00087,T0049,1 +C00087,T0052,1 +C00087,T0054,1 +C00087,T0053,1 +C00087,T0055,1 +C00087,T0056,1 C00090,T0020,1 -C00091,T0019,1 +C00090,T0062,1 +C00090,T0063,1 +C00091,T0062,1 +C00091,T0063,1 +C00091,T0054,1 +C00091,T0053,1 +C00091,T0049,1 C00092,TA07,1 C00092,TA08,1 +C00092,T0010,1 C00092,T0023,1 -C00092,T0024,1 -C00092,T0025,1 -C00092,T0026,1 +C00092,T0039,1 C00092,T0045,1 -C00092,T0047,1 +C00092,T0044,1 +C00092,T0054,1 C00092,T0053,1 +C00092,T0056,1 C00093,TA07,1 C00093,T0010,1 C00093,T0017,1 @@ -169,30 +323,89 @@ C00093,T0048,1 C00093,T0053,1 C00094,T0026,1 C00096,T0022,1 +C00096,T0027,1 +C00096,T0026,1 +C00096,T0024,1 +C00096,T0023,1 +C00096,T0025,1 C00097,T0029,1 +C00097,T0030,1 +C00097,T0045,1 +C00097,T0009,1 +C00097,T0007,1 +C00097,T0054,1 +C00097,T0053,1 C00098,T0038,1 +C00098,T0011,1 C00099,T0030,1 -C00100,use,1 +C00099,T0045,1 +C00099,T0009,1 +C00099,T0008,1 +C00099,T0007,1 +C00100,T0055,1 C00101,T0029,1 -C00102,T0029,1 +C00101,T0049,1 +C00101,T0053,1 +C00101,T0054,1 C00103,T0029,1 -C00107,T0032,1 -C00107,T0035,1 +C00103,T0062,1 +C00103,T0063,1 +C00103,T0053,1 +C00105,T0016,1 +C00105,T0018,1 +C00106,T0016,1 +C00107,T0009,1 +C00107,T0008,1 +C00107,T0007,1 +C00107,T0013,1 +C00107,T0014,1 +C00107,T0015,1 +C00107,T0016,1 +C00107,T0017,1 +C00107,T0018,1 +C00107,T0021,1 +C00107,T0025,1 +C00107,T0024,1 +C00107,T0026,1 +C00107,T0045,1 +C00107,T0055,1 +C00107,T0057,1 +C00107,T0001,1 +C00107,T0022,1 +C00107,T0027,1 +C00107,T0061,1 +C00111,T0010,1 C00112,T0040,1 C00112,T0042,1 C00113,T0045,1 C00114,T0039,1 -C00115,T0046,1 +C00114,T0048,1 +C00115,T0041,1 C00115,T0048,1 C00115,T0052,1 C00115,T0053,1 -C00115,T0054,1 -C00115,T0055,1 C00115,T0056,1 C00116,T0041,1 C00117,T0046,1 +C00117,T0022,1 +C00117,T0021,1 +C00117,T0025,1 +C00117,T0024,1 +C00117,T0026,1 +C00117,T0045,1 +C00117,T0044,1 +C00117,T0060,1 C00118,T0044,1 +C00118,T0021,1 +C00118,T0024,1 +C00119,T0022,1 +C00119,T0021,1 +C00119,T0025,1 +C00119,T0024,1 +C00119,T0026,1 +C00119,T0045,1 C00119,T0044,1 +C00119,T0060,1 C00120,T0047,1 C00120,T0052,1 C00120,T0053,1 @@ -200,49 +413,102 @@ C00120,T0054,1 C00120,T0055,1 C00120,T0056,1 C00121,T0043,1 +C00122,T0008,1 +C00122,T0007,1 +C00122,T0014,1 +C00122,T0015,1 +C00122,T0016,1 +C00122,T0017,1 +C00122,T0018,1 +C00122,T0022,1 +C00122,T0021,1 +C00122,T0025,1 +C00122,T0024,1 +C00122,T0026,1 +C00122,T0045,1 +C00122,T0044,1 +C00122,T0049,1 +C00122,T0051,1 +C00122,T0052,1 +C00122,T0053,1 +C00122,T0054,1 +C00122,T0055,1 +C00122,T0056,1 +C00122,T0057,1 +C00122,T0061,1 +C00122,T0060,1 +C00123,T0029,1 C00123,T0049,1 -C00123,T0051,1 -C00123,T0052,1 -C00123,T0053,1 C00123,T0054,1 -C00123,T0055,1 -C00123,T0056,1 +C00123,T0060,1 C00124,TA08,1 C00124,TA09,1 -C00125,distort,1 -C00126,T0052,1 -C00126,T0053,1 -C00126,T0054,1 -C00126,T0055,1 +C00124,T0053,1 +C00124,T0063,1 +C00125,T0056,1 +C00125,T0052,1 +C00125,T0054,1 +C00125,T0053,1 +C00125,T0055,1 +C00125,T0045,1 +C00125,T0022,1 +C00125,T0027,1 +C00125,T0002,1 +C00125,T0003,1 +C00125,T0004,1 +C00125,T0010,1 C00126,T0056,1 +C00126,T0052,1 +C00126,T0054,1 +C00126,T0053,1 +C00126,T0055,1 +C00126,T0045,1 +C00126,T0022,1 +C00126,T0027,1 +C00126,T0002,1 +C00126,T0003,1 +C00126,T0004,1 +C00126,T0010,1 +C00126,T0057,1 +C00128,T0050,1 +C00128,T0056,1 +C00128,T0049,1 +C00128,T0052,1 +C00128,T0054,1 +C00128,T0053,1 +C00128,T0055,1 +C00128,T0057,1 +C00128,T0061,1 C00129,T0057,1 C00129,T0061,1 +C00129,T0014,1 +C00129,T0017,1 +C00129,T0018,1 +C00130,T0010,1 C00131,T0049,1 C00131,T0054,1 +C00131,T0060,1 C00133,TA07,1 C00133,TA09,1 C00133,TA10,1 C00133,T0007,1 C00133,T0009,1 +C00133,T0045,1 C00133,T0011,1 -C00133,T0014,1 -C00133,T0017,1 -C00133,T0018,1 C00133,T0045,1 C00135,TA07,1 C00135,TA09,1 C00135,TA10,1 C00135,T0007,1 -C00135,T0011,1 -C00135,T0017,1 -C00135,T0045,1 +C00135,T0043,1 C00136,TA08,1 C00136,TA09,1 C00136,TA10,1 -C00136,T0005,1 C00136,T0010,1 -C00136,T0029,1 -C00137,T0020,1 +C00136,T0020,1 +C00136,T0063,1 +C00138,T0060,1 +C00138,T0056,1 C00140,TA05,1 C00140,TA09,1 C00140,TA10,1 @@ -250,15 +516,203 @@ C00142,TA05,1 C00142,TA09,1 C00142,TA10,1 C00142,TA11,1 -C00142,T00016,1 +C00142,T0016,1 +C00143,T0060,1 +C00143,T0058,1 +C00143,T0024,1 C00144,T0053,1 -C00145,T0015,1 -C00145,T0046,1 C00147,T0060,1 +C00148,T0062,1 +C00148,T0063,1 C00149,TA12,1 C00149,T0020,1 -C00165,T00025,1 +C00149,T0046,1 +C00149,T0057,1 +C00149,T0063,1 +C00153,T0008,1 +C00153,T0007,1 +C00153,T0011,1 +C00153,T0013,1 +C00153,T0014,1 +C00153,T0017,1 +C00153,T0018,1 +C00153,T0056,1 +C00153,T0049,1 +C00153,T0052,1 +C00153,T0054,1 +C00153,T0053,1 +C00153,T0058,1 +C00153,T0057,1 +C00153,T0061,1 +C00154,T0039,1 +C00154,T0048,1 +C00154,T0045,1 +C00155,T0014,1 +C00155,T0017,1 +C00156,T0022,1 +C00156,T0027,1 +C00156,T0002,1 +C00156,T0003,1 +C00156,T0004,1 +C00156,T0010,1 +C00160,T0039,1 +C00160,T0010,1 +C00160,T0048,1 +C00161,T0022,1 +C00161,T0027,1 +C00161,T0002,1 +C00161,T0003,1 +C00161,T0004,1 +C00162,T0010,1 +C00162,T0022,1 +C00162,T0027,1 +C00162,T0002,1 +C00162,T0003,1 +C00162,T0004,1 +C00162,T0039,1 +C00162,T0052,1 +C00162,T0056,1 +C00162,T0050,1 +C00164,T0022,1 +C00164,T0027,1 +C00164,T0002,1 +C00164,T0003,1 +C00164,T0004,1 +C00165,T0025,1 +C00169,T0010,1 +C00169,T0022,1 +C00169,T0027,1 +C00169,T0002,1 +C00169,T0003,1 +C00169,T0004,1 +C00169,T0039,1 +C00172,T0008,1 +C00172,T0007,1 +C00172,T0013,1 C00174,T0001,1 +C00174,T0045,1 +C00174,T0010,1 +C00174,T0022,1 +C00174,T0027,1 +C00174,T0044,1 +C00176,T0009,1 +C00176,T0008,1 +C00176,T0007,1 +C00176,T0013,1 +C00176,T0014,1 +C00176,T0015,1 +C00176,T0016,1 +C00176,T0017,1 +C00176,T0018,1 +C00176,T0021,1 +C00176,T0025,1 +C00176,T0024,1 +C00176,T0026,1 +C00176,T0045,1 +C00176,T0043,1 +C00176,T0056,1 +C00176,T0051,1 +C00176,T0049,1 +C00176,T0052,1 +C00176,T0054,1 +C00176,T0053,1 +C00176,T0055,1 +C00176,T0058,1 +C00176,T0057,1 +C00176,T0001,1 +C00176,T0003,1 +C00176,T0010,1 +C00176,T0022,1 +C00176,T0027,1 +C00176,T0061,1 +C00178,T0016,1 +C00178,T0017,1 +C00178,T0018,1 +C00178,T0020,1 +C00182,T0011,1 +C00182,T0054,1 +C00184,T0045,1 +C00184,T0055,1 +C00184,T0039,1 +C00184,T0041,1 +C00184,T0044,1 +C00184,T0045,1 +C00184,T0010,1 +C00188,T0001,1 +C00188,T0003,1 +C00188,T0022,1 +C00188,T0027,1 +C00188,T0045,1 +C00188,T0008,1 +C00188,T0010,1 +C00188,T0039,1 +C00188,T0046,1 +C00189,T0008,1 +C00189,T0007,1 +C00189,T0011,1 +C00189,T0014,1 +C00189,T0009,1 +C00190,T0001,1 +C00190,T0003,1 +C00190,T0010,1 +C00190,T0022,1 +C00190,T0027,1 +C00190,T0025,1 +C00195,T0010,1 +C00195,T0016,1 +C00195,T0018,1 +C00195,T0022,1 +C00195,T0027,1 +C00195,T0025,1 +C00195,T0024,1 +C00195,T0026,1 +C00195,T0045,1 +C00195,T0046,1 +C00195,T0055,1 +C00197,T0009,1 C00197,T0007,1 C00197,T0011,1 +C00200,T0010,1 +C00200,T0027,1 +C00200,T0022,1 +C00200,T0045,1 +C00200,T0025,1 C00202,T0025,1 +C00203,T0010,1 +C00203,T0027,1 +C00203,T0022,1 +C00203,T0028,1 +C00203,T0039,1 +C00203,T0045,1 +C00203,T0056,1 +C00203,T0052,1 +C00205,T0001,1 +C00205,T0003,1 +C00205,T0022,1 +C00205,T0025,1 +C00205,T0027,1 +C00211,T0027,1 +C00211,T0022,1 +C00211,T0028,1 +C00211,T0026,1 +C00211,T0021,1 +C00211,T0020,1 +C00211,T0025,1 +C00211,T0024,1 +C00211,T0026,1 +C00211,T0045,1 +C00211,T0055,1 +C00211,T0057,1 +C00212,T0001,1 +C00212,T0003,1 +C00212,T0010,1 +C00212,T0022,1 +C00216,T0014,1 +C00216,T0016,1 +C00216,T0017,1 +C00216,T0061,1 +C00216,T0018,1 +C00216,T0057,1 +C00219,T0024,1 +C00219,T0026,1 +C00219,T0025,1