A place to cache linked articles (think custom and personal wayback machine)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.html 36KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606
  1. <!doctype html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang=fr>
  4. <!-- Has to be within the first 1024 bytes, hence before the <title>
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset=utf-8>
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name=viewport content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>Successfully Countering Russian Electoral Interference (archive) — David Larlet</title>
  13. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  14. <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons/apple-touch-icon.png">
  15. <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons/favicon-32x32.png">
  16. <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons/favicon-16x16.png">
  17. <link rel="manifest" href="/manifest.json">
  18. <link rel="mask-icon" href="/static/david/icons/safari-pinned-tab.svg" color="#5bbad5">
  19. <link rel="shortcut icon" href="/static/david/icons/favicon.ico">
  20. <meta name="apple-mobile-web-app-title" content="David Larlet">
  21. <meta name="application-name" content="David Larlet">
  22. <meta name="msapplication-TileColor" content="#da532c">
  23. <meta name="msapplication-config" content="/static/david/icons/browserconfig.xml">
  24. <meta name="theme-color" content="#f0f0ea">
  25. <!-- That good ol' feed, subscribe :p. -->
  26. <link rel=alternate type="application/atom+xml" title=Feed href="/david/log/">
  27. <meta name="robots" content="noindex, nofollow">
  28. <meta content="origin-when-cross-origin" name="referrer">
  29. <!-- Canonical URL for SEO purposes -->
  30. <link rel="canonical" href="https://www.csis.org/analysis/successfully-countering-russian-electoral-interference">
  31. <style>
  32. /* http://meyerweb.com/eric/tools/css/reset/ */
  33. html, body, div, span,
  34. h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  35. a, abbr, address, big, cite, code,
  36. del, dfn, em, img, ins,
  37. small, strike, strong, tt, var,
  38. dl, dt, dd, ol, ul, li,
  39. fieldset, form, label, legend,
  40. table, caption, tbody, tfoot, thead, tr, th, td,
  41. article, aside, canvas, details, embed,
  42. figure, figcaption, footer, header, hgroup,
  43. menu, nav, output, ruby, section, summary,
  44. time, mark, audio, video {
  45. margin: 0;
  46. padding: 0;
  47. border: 0;
  48. font-size: 100%;
  49. font: inherit;
  50. vertical-align: baseline;
  51. }
  52. /* HTML5 display-role reset for older browsers */
  53. article, aside, details, figcaption, figure,
  54. footer, header, hgroup, menu, nav, section { display: block; }
  55. body { line-height: 1; }
  56. blockquote, q { quotes: none; }
  57. blockquote:before, blockquote:after,
  58. q:before, q:after {
  59. content: '';
  60. content: none;
  61. }
  62. table {
  63. border-collapse: collapse;
  64. border-spacing: 0;
  65. }
  66. /* http://practicaltypography.com/equity.html */
  67. /* https://calendar.perfplanet.com/2016/no-font-face-bulletproof-syntax/ */
  68. /* https://www.filamentgroup.com/lab/js-web-fonts.html */
  69. @font-face {
  70. font-family: 'EquityTextB';
  71. src: url('/static/david/css/fonts/Equity-Text-B-Regular-webfont.woff2') format('woff2'),
  72. url('/static/david/css/fonts/Equity-Text-B-Regular-webfont.woff') format('woff');
  73. font-weight: 300;
  74. font-style: normal;
  75. font-display: swap;
  76. }
  77. @font-face {
  78. font-family: 'EquityTextB';
  79. src: url('/static/david/css/fonts/Equity-Text-B-Italic-webfont.woff2') format('woff2'),
  80. url('/static/david/css/fonts/Equity-Text-B-Italic-webfont.woff') format('woff');
  81. font-weight: 300;
  82. font-style: italic;
  83. font-display: swap;
  84. }
  85. @font-face {
  86. font-family: 'EquityTextB';
  87. src: url('/static/david/css/fonts/Equity-Text-B-Bold-webfont.woff2') format('woff2'),
  88. url('/static/david/css/fonts/Equity-Text-B-Bold-webfont.woff') format('woff');
  89. font-weight: 700;
  90. font-style: normal;
  91. font-display: swap;
  92. }
  93. @font-face {
  94. font-family: 'ConcourseT3';
  95. src: url('/static/david/css/fonts/concourse_t3_regular-webfont-20190806.woff2') format('woff2'),
  96. url('/static/david/css/fonts/concourse_t3_regular-webfont-20190806.woff') format('woff');
  97. font-weight: 300;
  98. font-style: normal;
  99. font-display: swap;
  100. }
  101. /* http://practice.typekit.com/lesson/caring-about-opentype-features/ */
  102. body {
  103. /* http://www.cssfontstack.com/ Palatino 99% Win 86% Mac */
  104. font-family: "EquityTextB", Palatino, serif;
  105. background-color: #f0f0ea;
  106. color: #07486c;
  107. font-kerning: normal;
  108. -moz-osx-font-smoothing: grayscale;
  109. -webkit-font-smoothing: subpixel-antialiased;
  110. text-rendering: optimizeLegibility;
  111. font-variant-ligatures: common-ligatures contextual;
  112. font-feature-settings: "kern", "liga", "clig", "calt";
  113. }
  114. pre, code, kbd, samp, var, tt {
  115. font-family: 'TriplicateT4c', monospace;
  116. }
  117. em {
  118. font-style: italic;
  119. color: #323a45;
  120. }
  121. strong {
  122. font-weight: bold;
  123. color: black;
  124. }
  125. nav {
  126. background-color: #323a45;
  127. color: #f0f0ea;
  128. display: flex;
  129. justify-content: space-around;
  130. padding: 1rem .5rem;
  131. }
  132. nav:last-child {
  133. border-bottom: 1vh solid #2d7474;
  134. }
  135. nav a {
  136. color: #f0f0ea;
  137. }
  138. nav abbr {
  139. border-bottom: 1px dotted white;
  140. }
  141. h1 {
  142. border-top: 1vh solid #2d7474;
  143. border-bottom: .2vh dotted #2d7474;
  144. background-color: #e3e1e1;
  145. color: #323a45;
  146. text-align: center;
  147. padding: 5rem 0 4rem 0;
  148. width: 100%;
  149. font-family: 'ConcourseT3';
  150. display: flex;
  151. flex-direction: column;
  152. }
  153. h1.single {
  154. padding-bottom: 10rem;
  155. }
  156. h1 span {
  157. position: absolute;
  158. top: 1vh;
  159. left: 20%;
  160. line-height: 0;
  161. }
  162. h1 span a {
  163. line-height: 1.7;
  164. padding: 1rem 1.2rem .6rem 1.2rem;
  165. border-radius: 0 0 6% 6%;
  166. background: #2d7474;
  167. font-size: 1.3rem;
  168. color: white;
  169. text-decoration: none;
  170. }
  171. h2 {
  172. margin: 4rem 0 1rem;
  173. border-top: .2vh solid #2d7474;
  174. padding-top: 1vh;
  175. }
  176. h3 {
  177. text-align: center;
  178. margin: 3rem 0 .75em;
  179. }
  180. hr {
  181. height: .4rem;
  182. width: .4rem;
  183. border-radius: .4rem;
  184. background: #07486c;
  185. margin: 2.5rem auto;
  186. }
  187. time {
  188. display: bloc;
  189. margin-left: 0 !important;
  190. }
  191. ul, ol {
  192. margin: 2rem;
  193. }
  194. ul {
  195. list-style-type: square;
  196. }
  197. a {
  198. text-decoration-skip-ink: auto;
  199. text-decoration-thickness: 0.05em;
  200. text-underline-offset: 0.09em;
  201. }
  202. article {
  203. max-width: 50rem;
  204. display: flex;
  205. flex-direction: column;
  206. margin: 2rem auto;
  207. }
  208. article.single {
  209. border-top: .2vh dotted #2d7474;
  210. margin: -6rem auto 1rem auto;
  211. background: #f0f0ea;
  212. padding: 2rem;
  213. }
  214. article p:last-child {
  215. margin-bottom: 1rem;
  216. }
  217. p {
  218. padding: 0 .5rem;
  219. margin-left: 3rem;
  220. }
  221. p + p,
  222. figure + p {
  223. margin-top: 2rem;
  224. }
  225. blockquote {
  226. background-color: #e3e1e1;
  227. border-left: .5vw solid #2d7474;
  228. display: flex;
  229. flex-direction: column;
  230. align-items: center;
  231. padding: 1rem;
  232. margin: 1.5rem;
  233. }
  234. blockquote cite {
  235. font-style: italic;
  236. }
  237. blockquote p {
  238. margin-left: 0;
  239. }
  240. figure {
  241. border-top: .2vh solid #2d7474;
  242. background-color: #e3e1e1;
  243. text-align: center;
  244. padding: 1.5rem 0;
  245. margin: 1rem 0 0;
  246. font-size: 1.5rem;
  247. width: 100%;
  248. }
  249. figure img {
  250. max-width: 250px;
  251. max-height: 250px;
  252. border: .5vw solid #323a45;
  253. padding: 1px;
  254. }
  255. figcaption {
  256. padding: 1rem;
  257. line-height: 1.4;
  258. }
  259. aside {
  260. display: flex;
  261. flex-direction: column;
  262. background-color: #e3e1e1;
  263. padding: 1rem 0;
  264. border-bottom: .2vh solid #07486c;
  265. }
  266. aside p {
  267. max-width: 50rem;
  268. margin: 0 auto;
  269. }
  270. /* https://fvsch.com/code/css-locks/ */
  271. p, li, pre, code, kbd, samp, var, tt, time, details, figcaption {
  272. font-size: 1rem;
  273. line-height: calc( 1.5em + 0.2 * 1rem );
  274. }
  275. h1 {
  276. font-size: 1.9rem;
  277. line-height: calc( 1.2em + 0.2 * 1rem );
  278. }
  279. h2 {
  280. font-size: 1.6rem;
  281. line-height: calc( 1.3em + 0.2 * 1rem );
  282. }
  283. h3 {
  284. font-size: 1.35rem;
  285. line-height: calc( 1.4em + 0.2 * 1rem );
  286. }
  287. @media (min-width: 20em) {
  288. /* The (100vw - 20rem) / (50 - 20) part
  289. resolves to 0-1rem, depending on the
  290. viewport width (between 20em and 50em). */
  291. p, li, pre, code, kbd, samp, var, tt, time, details, figcaption {
  292. font-size: calc( 1rem + .6 * (100vw - 20rem) / (50 - 20) );
  293. line-height: calc( 1.5em + 0.2 * (100vw - 50rem) / (20 - 50) );
  294. margin-left: 0;
  295. }
  296. h1 {
  297. font-size: calc( 1.9rem + 1.5 * (100vw - 20rem) / (50 - 20) );
  298. line-height: calc( 1.2em + 0.2 * (100vw - 50rem) / (20 - 50) );
  299. }
  300. h2 {
  301. font-size: calc( 1.5rem + 1.5 * (100vw - 20rem) / (50 - 20) );
  302. line-height: calc( 1.3em + 0.2 * (100vw - 50rem) / (20 - 50) );
  303. }
  304. h3 {
  305. font-size: calc( 1.35rem + 1.5 * (100vw - 20rem) / (50 - 20) );
  306. line-height: calc( 1.4em + 0.2 * (100vw - 50rem) / (20 - 50) );
  307. }
  308. }
  309. @media (min-width: 50em) {
  310. /* The right part of the addition *must* be a
  311. rem value. In this example we *could* change
  312. the whole declaration to font-size:2.5rem,
  313. but if our baseline value was not expressed
  314. in rem we would have to use calc. */
  315. p, li, pre, code, kbd, samp, var, tt, time, details, figcaption {
  316. font-size: calc( 1rem + .6 * 1rem );
  317. line-height: 1.5em;
  318. }
  319. p, li, pre, details {
  320. margin-left: 3rem;
  321. }
  322. h1 {
  323. font-size: calc( 1.9rem + 1.5 * 1rem );
  324. line-height: 1.2em;
  325. }
  326. h2 {
  327. font-size: calc( 1.5rem + 1.5 * 1rem );
  328. line-height: 1.3em;
  329. }
  330. h3 {
  331. font-size: calc( 1.35rem + 1.5 * 1rem );
  332. line-height: 1.4em;
  333. }
  334. figure img {
  335. max-width: 500px;
  336. max-height: 500px;
  337. }
  338. }
  339. figure.unsquared {
  340. margin-bottom: 1.5rem;
  341. }
  342. figure.unsquared img {
  343. height: inherit;
  344. }
  345. @media print {
  346. body { font-size: 100%; }
  347. a:after { content: " (" attr(href) ")"; }
  348. a, a:link, a:visited, a:after {
  349. text-decoration: underline;
  350. text-shadow: none !important;
  351. background-image: none !important;
  352. background: white;
  353. color: black;
  354. }
  355. abbr[title] { border-bottom: 0; }
  356. abbr[title]:after { content: " (" attr(title) ")"; }
  357. img { page-break-inside: avoid; }
  358. @page { margin: 2cm .5cm; }
  359. h1, h2, h3 { page-break-after: avoid; }
  360. p3 { orphans: 3; widows: 3; }
  361. img {
  362. max-width: 250px !important;
  363. max-height: 250px !important;
  364. }
  365. nav, aside { display: none; }
  366. }
  367. ul.with_columns {
  368. column-count: 1;
  369. }
  370. @media (min-width: 20em) {
  371. ul.with_columns {
  372. column-count: 2;
  373. }
  374. }
  375. @media (min-width: 50em) {
  376. ul.with_columns {
  377. column-count: 3;
  378. }
  379. }
  380. ul.with_two_columns {
  381. column-count: 1;
  382. }
  383. @media (min-width: 20em) {
  384. ul.with_two_columns {
  385. column-count: 1;
  386. }
  387. }
  388. @media (min-width: 50em) {
  389. ul.with_two_columns {
  390. column-count: 2;
  391. }
  392. }
  393. .gallery {
  394. display: flex;
  395. flex-wrap: wrap;
  396. justify-content: space-around;
  397. }
  398. .gallery figure img {
  399. margin-left: 1rem;
  400. margin-right: 1rem;
  401. }
  402. .gallery figure figcaption {
  403. font-family: 'ConcourseT3'
  404. }
  405. footer {
  406. font-family: 'ConcourseT3';
  407. display: flex;
  408. flex-direction: column;
  409. border-top: 3px solid white;
  410. padding: 4rem 0;
  411. background-color: #07486c;
  412. color: white;
  413. }
  414. footer > * {
  415. max-width: 50rem;
  416. margin: 0 auto;
  417. }
  418. footer a {
  419. color: #f1c40f;
  420. }
  421. footer .avatar {
  422. width: 200px;
  423. height: 200px;
  424. border-radius: 50%;
  425. float: left;
  426. -webkit-shape-outside: circle();
  427. shape-outside: circle();
  428. margin-right: 2rem;
  429. padding: 2px 5px 5px 2px;
  430. background: white;
  431. border-left: 1px solid #f1c40f;
  432. border-top: 1px solid #f1c40f;
  433. border-right: 5px solid #f1c40f;
  434. border-bottom: 5px solid #f1c40f;
  435. }
  436. </style>
  437. <h1>
  438. <span><a id="jumper" href="#jumpto" title="Un peu perdu ?">?</a></span>
  439. Successfully Countering Russian Electoral Interference (archive)
  440. <time>Pour la pérennité des contenus liés. Non-indexé, retrait sur simple email.</time>
  441. </h1>
  442. <section>
  443. <article>
  444. <h3><a href="https://www.csis.org/analysis/successfully-countering-russian-electoral-interference">Source originale du contenu</a></h3>
  445. <h3><strong>The Issue</strong></h3>
  446. <p><em>The 2017 French presidential election remains the clearest failed attempt by a foreign entity to influence an electoral process in recent years. Taking aim at presidential candidate Emmanuel Macron, Russian interference succeeded neither in interfering with the election nor in antagonizing French society. This Brief examines how France successfully withstood the disinformation and interference; how this failed attempt can be explained; and, looking to the future, what lessons can be learned from this experience? </em></p>
  447. <div>
  448. <h3><strong>Introduction</strong></h3>
  449. <p>On Friday, May 5, 2017—just two days before the second and final round of the French presidential elections—gigabytes of data hacked from Emmanuel Macron’s presidential campaign team were released online. Months earlier an orchestrated disinformation campaign against the Macron presidential campaign had already begun. The so-called Macron Leaks—a combination of real emails and forgeries—could have been yet another example of a long list of attempts by Russia to interfere in a high-stakes transatlantic election. But the 2017 French presidential election may be the exception that proves the rule: it is the most clearly <em>failed</em> attempt. The Kremlin neither succeeded in interfering with the presidential election nor in dividing French society.</p>
  450. <p>As the United States prepares to hold nationwide elections on November 6, 2018, the director of national intelligence, Dan Coats, has already warned in February of this year that “We expect Russia to continue using propaganda, social media, false-flag personas, sympathetic spokespeople and other means of influence to try to exacerbate social and political fissures in the United States.” Calling Russian influence “pervasive,” Director Coats further noted that “The Russians have a strategy that goes well beyond what is happening in the United States,” he said. “While they have historically tried to do these types of things, clearly in 2016 they upped their game. They took advantage, a sophisticated advantage of social media. They are doing that not only in the United States but . . . throughout Europe and perhaps elsewhere.” Because the United States is not well prepared for future elections, it is necessary to study the past.</p>
  451. <p>This is why the 2017 French presidential election is a particularly important election to study and why we highlight French scholar Jean-Baptiste Jeangène Vilmer’s groundbreaking report on the Macron Leaks.<sup>1</sup> Drawing in part upon the work of CSIS visiting fellow Boris Toucas,<sup>2</sup> Vilmer’s forthcoming report will examine what happened during the French presidential election; who orchestrated the affair; how it was successfully countered; and what lessons can be learned. This Brief, which is part of the forthcoming CSIS comprehensive report, sums up the main lessons learned.</p>
  452. <p>Myriad structural factors, luck, as well as effective anticipation and reaction by the Macron campaign staff, government and civil society, and especially the mainstream media, combined to successfully resist Russian malign influence.</p>
  453. <p align="right">- <a href="/people/heather-conley"><strong>Heather A. Conley</strong></a>, CSIS</p>
  454. </div>
  455. <h3><strong>Structural Factors</strong></h3>
  456. <p>Compared to the United States or United Kingdom, France presents a less vulnerable political and media environment for a number of structural reasons. Unlike in the United States, the election of the French president is direct (e.g., there is no electoral college): attempts at interference or influence are more obvious, as they involve targeting candidates rather than constituencies. But most importantly, the French election has two rounds, which creates an additional difficulty for a malign actor to determine which two candidates will make it to the second round. The second round of voting also permits the population to dramatically shift their support to another candidate to block an unexpected result after the first round. The French media environment consists mainly of mainstream and critical media sources and is largely free of tabloid-style outlets and “alternative” websites that are common in the United States and United Kingdom. Culturally, critical thinking and a healthy skepticism are also deeply ingrained into French society at an early stage and throughout one’s professional life.</p>
  457. <h3><strong>Luck</strong></h3>
  458. <p>The Macron team was fortunate that those who hacked into their emails were sloppy and made a number of mistakes. Clearly, these individuals were overconfident and overestimated their ability to attract public attention and mobilize online communities. They also underestimated the resistance by French media and did not anticipate the Macron campaign staff reaction. Perhaps because the leaks revealed so little, there was an assumption that creating confusion would be sufficient. But the thousands of emails and other data appeared to have overwhelmed the public, enhancing their disinterest.</p>
  459. <blockquote>The Macron team was fortunate that those who hacked into their emails were sloppy and made a number of mistakes.</blockquote>
  460. <p>Releasing Macron’s staff emails just hours before the electoral silence period was a risk. While the hackers did not want Macron to be able to defend himself, the limited time was also insufficient to spread the information. Moreover, the timing also rendered the entire revelation highly suspicious, the disinformation suffered from cultural clumsiness, and some of the fake documents were so absurd that the whole episode seemed amateurish. Interestingly, the accounts and bots that spread the misinformation were mostly in English because the leaks were first spread by the American alt-right community. Not only is this a completely ineffective means to reach a French-speaking audience, it also likely alienated French nationalist voters who are not inclined to support anything American. France was lucky in the sense that this disinformation attack seemed hastily and clumsily formed. A more interesting question would be why was this organized so poorly? A last-minute decision due to the second-round vote? Other Russian agencies attempting to engage in similarly successful tactics but without the skills to pull it off?</p>
  461. <p>Good fortune or not, France successfully anticipated, reacted, and coordinated its response between the Macron campaign staff, the government, and civil society. These are the lessons we learned from this experience:</p>
  462. <h3><strong>Anticipation</strong></h3>
  463. <p><strong>Lesson 1: Learn from Others.</strong> France had an advantage in that it was targeted after cyberattacks and disinformation campaigns were launched in the Netherlands, the United Kingdom, and the United States. All these precedents raised government and public awareness, but the 2016 U.S. presidential campaign was a game-changer. Prior to the U.S. election, awareness of Russian disinformation and malign influence was mostly limited to the Baltic and Central European states. Since then, large Western European states have learned that they too are vulnerable to disinformation. Paris benefited from the errors made by the United States: an overconfidence that disinformation campaigns would not work in the United States; reluctance to address the hacking of the Democratic National Committee; and a very delayed and muted response by the government.</p>
  464. <p><strong>Lesson 2: Use Trusted and Independent Administrative Actors.</strong> The Obama administration did not intervene in the U.S. electoral process even when the process was under siege because it did not wish to give the impression of advantaging the Democratic candidate. However, the French precedent shows that a state can intervene and take measures effectively provided that these measures are carried out by <em>administrative, independent, and nonpolitical authorities</em>. In France, these authorities provided technical and politically neutral expertise to ensure the integrity of the electoral process from start to finish. Two bodies played a particularly crucial role in France: the National Commission for the Control of the Electoral Campaign for the Presidential Election (CNCCEP), a special body set up in the months preceding every French presidential election to serve as a campaign watchdog; and the National Cybersecurity Agency (ANSSI), whose mission is to ensure the integrity of electoral results and to maintain public confidence in the electoral process.</p>
  465. <blockquote>Paris benefited from the errors made by the United States.</blockquote>
  466. <p><strong>Lesson 3: Raise Awareness.</strong> ANSSI and CNCCEP frequently alerted the media, political parties, and the public to the risk of cyberattacks and disinformation during the presidential campaign. ANSSI was particularly proactive, offering to meet with and educate all campaign staffs at very early stages of the election. In October 2016, ANSSI organized an open workshop on cybersecurity. All but one party participated (Marine Le Pen’s <em>Front National</em> party rejected the offer). During the campaign, in early February 2017, ANSSI paid a visit to the Macron campaign headquarters to warn them about a potential attack. They were told that they were being watched, there was a risk of being hacked, and to be particularly careful using the Telegram app, which is Russian designed.<sup>3</sup> After this briefing, the Macron team switched from Telegram to WhatsApp, an end-to-end encrypted service owned by Facebook.<sup>4</sup></p>
  467. <p><strong>Lesson 4: Show Resolve and Determination.</strong> From the start of the presidential campaign, the French government signaled—both publicly and through confidential diplomatic channels—its determination to prevent, detect, and, if necessary, respond to foreign interference. In an important speech on cyber defense in December 2016, the minister of defense announced the creation of a cyber command composed of 2,600 “cyber fighters.” A few weeks later, the minister publicly remarked that “by targeting the electoral process of a country, one undermines its democratic foundations, its sovereignty” and that “France reserves the right to retaliate by any means it deems appropriate . . . through our cyber arsenal but also by conventional armed means.”<sup>5</sup> One month later, when Macron’s political movement <em>En Marche!</em> announced that it was the target of an orchestrated attack, the minister of foreign affairs told the French Parliament that “France will not tolerate any interference in its electoral process, no more from Russia than from any other state”.<sup>6</sup> A similar message was conveyed privately by the minister to his Russian counterpart and by President Hollande to President Putin.</p>
  468. <p><strong>Lesson 5: Take (Technical) Precautions.</strong> ANSSI heightened security at every step of the electoral process in order to ensure the integrity of the vote. The head of ANSSI stated before Parliament that he was “personally” opposed to voting machines and electronic voting.<sup>7</sup> Despite the unpopularity of the measure, the Ministry of Foreign Affairs followed his recommendation and, by March 2017, the government announced the end of electronic voting for citizens abroad because of the high risk of cyberattacks.</p>
  469. <p><strong>Lesson 6: Put Pressure on Digital Platforms.</strong> Ten days before the vote, Facebook announced that it “[had taken] action against over 30,000 fake accounts” in France. It was later revealed that the actual number of suspended French Facebook accounts was actually 70,000.<sup>8</sup> Facebook had never taken such a drastic measure before but it responded to growing pressure by both states and the public to take decisive steps as digital platforms are the principal medium for the spread of disinformation.</p>
  470. <p><a href="https://csis-prod.s3.amazonaws.com/s3fs-public/180620_french_election_voting.jpg?aEjosN.q1G8B6CAYCzE8LHYLI_PhBUgB"><img alt="" src="https://csis-prod.s3.amazonaws.com/s3fs-public/180620_french_election_voting.jpg?aEjosN.q1G8B6CAYCzE8LHYLI_PhBUgB" typeof="foaf:Image"/></a></p>
  471. <p><center><font size="3">Polling station during the second round of the French presidential election. - Photo: Jean-Francois Monier/AFP/Getty Images</font></center></p>
  472. <p> </p>
  473. <h3><strong>Reaction</strong></h3>
  474. <p><strong>Lesson 7: Transparency and Timeliness Are Essential: Make All Hacking Attempts Public.</strong> Throughout the campaign, the <em>En Marche!</em> team communicated openly and extensively about its susceptibility to hacking and, soon after, about the hacking itself. They made public all hacking attempts against them, which generated awareness among the population and the authorities. When the Macron Leaks occurred<em>,</em> the <em>En Marche!</em> campaign reacted in a matter of hours. At 11:56 pm on Friday, May 5, only hours after the documents were released online and 4 minutes before the electoral silence—the French legally mandated period of 48 hours of reflection prior to an election where the media and campaigns are silent—went into effect, the Macron campaign issued a press release stating that “The movement has been the victim of a massive and coordinated hacking operation.”<sup>9</sup></p>
  475. <p><strong>Lesson 8: Beat Hackers at Their Own Game.</strong> The Macron Leaks were a combination of real emails and forgeries. But many of fake emails were so obviously fake—for example, the e-mails confessed to detailed accounts of untoward sexual practices or buying cocaine—that they actually helped the Macron team. Real emails in the hacked cache that could have damaged the Macron campaign, such as one that argued that “it is necessary that we lay off as many employees as we can after May 5,”<sup>10</sup> could not immediately be assumed authentic, so the controversy did not take root. In a risky move, the campaign staff went a step further. Knowing that they would be hacked, the campaign forged emails and fake documents themselves to confuse the hackers with irrelevant and even deliberately ludicrous information. By placing false flags, the campaign wished to inundate, confuse, and impede the work of the hackers with false information and slow them down. The campaign’s strategy of “counter-retaliation for phishing attempts”<sup>11</sup> is known as cyber or digital blurring. It worked by turning the burden-of-proof tables on the hackers. The Macron campaign staff did not have to explain potentially compromising information contained in the Macron Leaks; rather, the hackers had to justify why they stole and leaked information that seemed, at best, useless and, at worst, false or misleading. The whole thing made the population doubt the authenticity of any of the leaked material.</p>
  476. <p><strong>Lesson 9: Strike Back on Social Media.</strong> The forceful presence of the Macron campaign staff on social media enabled them to respond quickly to the spread of disinformation. They tried to respond to as many posts or comments as possible that mentioned the “Macron Leaks,” so as not allow trolls to have the last word.</p>
  477. <p><strong>Lesson 10: Use Humor When Possible: Readership Improves.</strong> In certain instances, the Macron campaign’s injection of humor and irony <strong> </strong>into their responses increased the visibility and popularity of those responses across different platforms with undertones of mocking the amateurish attempts to influence the election.</p>
  478. <p><strong>Lesson 11: Law Enforcement Must Engage Immediately.</strong> Within a few hours of the initial email release, the public prosecutor’s office in Paris opened an investigation, which was entrusted to the Information Technology Fraud Investigation Brigade of the Paris Police.</p>
  479. <p><strong>Lesson 12: Undermine Propaganda Outlets.</strong> On April 27, RT and Sputnik were denied accreditation by the Macron team to cover the remainder (until May 7) of its campaign. The reason cited was their “systematic desire to issue fake news and false information” as well as their “spreading [of] lies methodically and systematically.”<sup>12</sup> Even after the election, both outlets have been occasionally banned from the Élysée’s Presidential Palace and Foreign Ministry press conferences.</p>
  480. <p>This has been a controversial decision that fueled the Kremlin’s narrative that France is doing exactly what it criticizes Russia for doing, allowing Russian President Putin an opportunity to lecture France on freedom of the press. However, the decision to ban RT and Sputnik from covering certain events was justified on the basis that these are propaganda entities and not media outlets as President Macron publicly stated following his meeting with Putin at Versailles only weeks after his election. This is also the position the European Parliament adopted as early as November 2016.<sup>13</sup> Moreover, attendance at these press conferences is by invitation only so there is no requirement that all outlets participate and RT and Sputnik are still permitted to operate in France.</p>
  481. <p><strong>Lesson 13: Trivialize the Leaked Content.</strong> The <em>En Marche!</em> press release said that the leaked documents “reveal the normal operation of a presidential campaign.” Nothing illegal, let alone interesting, was found among the documents. Fortunately for the Macron campaign (which was not necessarily true with U.S. election disclosures), the fact that nothing compromising was found in the emails improved Macron’s positive image as an authentic and “clean” candidate, compared to earlier scandals involving another presidential candidate.</p>
  482. <blockquote>There was a disinformation campaign, data hacking, and large-scale leaking but there was no whitewashing or mainstreaming. The sequence was disrupted.</blockquote>
  483. <p><strong>Lesson 14: Compartmentalize.</strong> There was nothing scandalous in the leaked emails because Macron’s campaign staff was aware from the beginning that it was likely to be vulnerable to hacking. Understanding that everything staff wrote could one day be hacked and leaked, the Macron campaign developed “three levels of communication: the trivial and logistical by email, the confidential on the [encrypted] apps, and the sensitive, only face-to-face.”<sup>14</sup></p>
  484. <p><strong>Lesson 15: Impress Upon the Media the Liabilities of Irresponsible Behavior.</strong> The night of the release of the emails, Macron’s team referred the case to the CNCCEP, which issued a press release the following day, asking “the media not to report on the content of this data, especially on their websites, reminding the media that the dissemination of false information is a breach of law, above all criminal law.” The majority of traditional media sources complied, and some even drew their readers’ attention to the timing of the leaks, asking them to exercise caution before responding to what might be a disinformation and destabilization operation directed against the French democratic process.</p>
  485. <h3><strong>Conclusion</strong></h3>
  486. <p>Using the 2016 U.S. presidential election as “a reference case,” Finnish researcher Mika Aaltola has identified five stages of election meddling: “(1) using disinformation to amplify suspicions and divisions; (2) stealing sensitive and leakable data; (3) leaking the stolen data via supposed ‘hacktivists;’ (4) whitewashing the leaked data through the professional media; and (5) secret colluding [between a candidate and a foreign state] in order to synchronize election efforts.”<sup>15</sup> According to this scale, the Macron Leaks reached stage three: there was a disinformation campaign, data hacking, and large-scale leaking but there was no whitewashing or mainstreaming. The sequence was disrupted between stages three and four. What was successfully prevented was “information laundering,” the process by which the initial traces of foreign disruption are “washed” from the information, stories, and narrative.<sup>16</sup> This was prevented due to the aforementioned countermeasures and the resilience of the French media environment.</p>
  487. </article>
  488. </section>
  489. <nav id="jumpto">
  490. <p>
  491. <a href="/david/blog/">Accueil du blog</a> |
  492. <a href="https://www.csis.org/analysis/successfully-countering-russian-electoral-interference">Source originale</a> |
  493. <a href="/david/stream/2019/">Accueil du flux</a>
  494. </p>
  495. </nav>
  496. <footer>
  497. <div>
  498. <img src="/static/david/david-larlet-avatar.jpg" loading="lazy" class="avatar" width="200" height="200">
  499. <p>
  500. Bonjour/Hi!
  501. Je suis <a href="/david/" title="Profil public">David&nbsp;Larlet</a>, je vis actuellement à Montréal et j’alimente cet espace depuis 15 ans. <br>
  502. Si tu as apprécié cette lecture, n’hésite pas à poursuivre ton exploration. Par exemple via les <a href="/david/blog/" title="Expériences bienveillantes">réflexions bimestrielles</a>, la <a href="/david/stream/2019/" title="Pensées (dés)articulées">veille hebdomadaire</a> ou en t’abonnant au <a href="/david/log/" title="S’abonner aux publications via RSS">flux RSS</a> (<a href="/david/blog/2019/flux-rss/" title="Tiens c’est quoi un flux RSS ?">so 2005</a>).
  503. </p>
  504. <p>
  505. Je m’intéresse à la place que je peux avoir dans ce monde. En tant qu’humain, en tant que membre d’une famille et en tant qu’associé d’une coopérative. De temps en temps, je fais aussi des <a href="https://github.com/davidbgk" title="Principalement sur Github mais aussi ailleurs">trucs techniques</a>. Et encore plus rarement, <a href="/david/talks/" title="En ce moment je laisse plutôt la place aux autres">j’en parle</a>.
  506. </p>
  507. <p>
  508. Voici quelques articles choisis :
  509. <a href="/david/blog/2019/faire-equipe/" title="Accéder à l’article complet">Faire équipe</a>,
  510. <a href="/david/blog/2018/bivouac-automnal/" title="Accéder à l’article complet">Bivouac automnal</a>,
  511. <a href="/david/blog/2018/commodite-effondrement/" title="Accéder à l’article complet">Commodité et effondrement</a>,
  512. <a href="/david/blog/2017/donnees-communs/" title="Accéder à l’article complet">Des données aux communs</a>,
  513. <a href="/david/blog/2016/accompagner-enfant/" title="Accéder à l’article complet">Accompagner un enfant</a>,
  514. <a href="/david/blog/2016/senior-developer/" title="Accéder à l’article complet">Senior developer</a>,
  515. <a href="/david/blog/2016/illusion-sociale/" title="Accéder à l’article complet">L’illusion sociale</a>,
  516. <a href="/david/blog/2016/instantane-scopyleft/" title="Accéder à l’article complet">Instantané Scopyleft</a>,
  517. <a href="/david/blog/2016/enseigner-web/" title="Accéder à l’article complet">Enseigner le Web</a>,
  518. <a href="/david/blog/2016/simplicite-defaut/" title="Accéder à l’article complet">Simplicité par défaut</a>,
  519. <a href="/david/blog/2016/minimalisme-esthetique/" title="Accéder à l’article complet">Minimalisme et esthétique</a>,
  520. <a href="/david/blog/2014/un-web-omni-present/" title="Accéder à l’article complet">Un web omni-présent</a>,
  521. <a href="/david/blog/2014/manifeste-developpeur/" title="Accéder à l’article complet">Manifeste de développeur</a>,
  522. <a href="/david/blog/2013/confort-convivialite/" title="Accéder à l’article complet">Confort et convivialité</a>,
  523. <a href="/david/blog/2013/testament-numerique/" title="Accéder à l’article complet">Testament numérique</a>,
  524. et <a href="/david/blog/" title="Accéder aux archives">bien d’autres…</a>
  525. </p>
  526. <p>
  527. On peut <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">échanger par courriel</a>. Si éventuellement tu souhaites que l’on travaille ensemble, tu devrais commencer par consulter le <a href="http://larlet.com">profil dédié à mon activité professionnelle</a> et/ou contacter directement <a href="http://scopyleft.fr/">scopyleft</a>, la <abbr title="Société coopérative et participative">SCOP</abbr> dont je fais partie depuis six ans. Je recommande au préalable de lire <a href="/david/blog/2018/cout-site/" title="Attention ce qui va suivre peut vous choquer">combien coûte un site</a> et pourquoi je suis plutôt favorable à une <a href="/david/pro/devis/" title="Discutons-en !">non-demande de devis</a>.
  528. </p>
  529. <p>
  530. Je ne traque pas ta navigation mais mon
  531. <abbr title="Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33.184162340">hébergeur</abbr>
  532. conserve des logs d’accès.
  533. </p>
  534. </div>
  535. </footer>
  536. <script type="text/javascript">
  537. ;(_ => {
  538. const jumper = document.getElementById('jumper')
  539. jumper.addEventListener('click', e => {
  540. e.preventDefault()
  541. const anchor = e.target.getAttribute('href')
  542. const targetEl = document.getElementById(anchor.substring(1))
  543. targetEl.scrollIntoView({behavior: 'smooth'})
  544. })
  545. })()
  546. </script>