{"id":22317,"date":"2020-10-02T10:34:04","date_gmt":"2020-10-02T08:34:04","guid":{"rendered":"https:\/\/savinol.sg-host.com\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/"},"modified":"2020-10-02T10:34:04","modified_gmt":"2020-10-02T08:34:04","slug":"github-code-scanning-identificare-le-vulnerabilita-nel-codice","status":"publish","type":"post","link":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/","title":{"rendered":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Chiunque abbia a che fare con lo sviluppo di software, dovrebbe rendersi facilmente conto di quanto sia difficile evitare del tutto l\u2019introduzione (involontaria) di <strong>problemi di sicurezza<\/strong>. Spesso, infatti, si posticipa l\u2019<strong>analisi di sicurezza<\/strong> ad un secondo momento, rischiando addirittura di rilasciare in produzione porzioni di codice che rendono <strong>vulnerabile<\/strong> un\u2019intera applicazione.<\/p>\n<p>Per risolvere (almeno in parte) questo tipo di problemi, <strong>GitHub<\/strong> ha recentemente introdotto un utile <strong>strumento di analisi del codice<\/strong>, che sfrutta una serie di regole per identificare possibili falle di sicurezza. Si tratta della funzionalit\u00e0 di <strong>Code Scanning<\/strong>.<\/p>\n<h2>GitHub Code Scanning: cos\u2019\u00e8 e come funziona<\/h2>\n<p>Code Scanning \u00e8 integrato all\u2019interno di <strong>GitHub Actions<\/strong>, ma pu\u00f2 essere utilizzato anche all\u2019interno di altri ambienti di <strong>CI\/CD<\/strong>, con una certa flessibilit\u00e0. Come accennato poc\u2019anzi, questo strumenti effettua la scansione del codice ogni volta che viene effettuato il <a href=\"https:\/\/www.html.it\/pag\/55273\/gestione-dei-repository-remoti\/\">push<\/a> di uno o pi\u00f9 <a href=\"https:\/\/www.html.it\/pag\/54070\/stato-dei-file-e-modifica-dei-repository-in-git\/\">commit<\/a>, oppure quando vengono generate nuove <em>merge request<\/em>. I risultati della scansione, che si basano su un insieme di regole di sicurezza predefinite (ma anche personalizzabili), possono poi essere valutati in fase di code review, direttamente dallo sviluppatore.<\/p>\n<div class=\"boximg\"><span>Figura 1. I risultati del Code Scanning di GitHub sono utili in fase di code review (click per ingrandire)<\/span><a href=\"https:\/\/tbm-html.s3.amazonaws.com\/app\/uploads\/2020\/10\/token-scanning-1.gif\" class=\"fan_img\" rel=\"fan_group\"><img src=\"https:\/\/tbm-html.s3.amazonaws.com\/app\/uploads\/2020\/10\/token-scanning-1.gif\" style=\"max-width:577px !important;height:auto !important\" alt=\"I risultati del Code Scanning di GitHub sono utili in fase di code review\"\/><\/a><\/div>\n<p>\u00c8 lecito aspettarsi che questo tipo di procedura non risolva completamente il problema dell\u2019analisi di sicurezza, ma \u00e8 altrettanto chiaro come ci\u00f2 permetta di evitare quantomeno gli errori pi\u00f9 grossolani, peraltro <strong>affidando questo tipo di controllo direttamente allo sviluppatore<\/strong>.<\/p>\n<h2>Com\u2019\u00e8 fatto Code Scanning<\/h2>\n<p>Code Scanning \u00e8 basato sul motore di analisi di <strong>CodeQL<\/strong>, e sono disponibili oltre 2000 query rese disponibili dalla community che vi ruota intorno. \u00c8 comunque possibile anche <strong>personalizzare<\/strong> queste regole, per affinare il tipo di analisi in base alle specifiche esigenze. <\/p>\n<p>Costruito sullo standard <a href=\"https:\/\/www.oasis-open.org\/committees\/tc_home.php?wg_abbrev=sarif\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">SARIF<\/a>, Code Scanning pu\u00f2 essere quindi esteso in modo abbastanza agevole, nonch\u00e9 integrato anche con altri engine di terze parti.<\/p>\n<h2>Code Scanning all\u2019opera<\/h2>\n<p>Alcuni dei numeri registrati da GitHub sono abbastanza significativi, ed aiutano a capire quanto sia importante l\u2019uso di un tool come Code Scanning. Dal primo rilascio in beta (a Maggio 2020), l\u2019adozione di questo strumento ha portato a scansionare <strong>pi\u00f9 di 12.000 repository<\/strong>, identificando un totale di <strong>circa 20.000 problemi di sicurezza<\/strong> (tra cui anche <a href=\"https:\/\/www.html.it\/pag\/72576\/metasploit\/\">remote code execution<\/a>, <a href=\"https:\/\/www.html.it\/pag\/19638\/sql-injection-cosa-sono-e-come-sfruttarle\/\">SQL injection<\/a> e <a href=\"https:\/\/www.html.it\/articoli\/xss-teoria-e-pratica\/\">cross-site scripting<\/a>). Tra tutti questi problemi, il 72% \u00e8 stato fixato proprio grazie all\u2019analisi automatizzata di Code Scanning.<\/p>\n<p>\u00c8 quindi facile convincersi dell\u2019importanza di adottare strumenti di questo tipo nello sviluppo quotidiano. Chiunque fosse interessato a scoprire come abilitarlo all\u2019interno del proprio repository GitHub, pu\u00f2 fare riferimento a <a href=\"https:\/\/docs.github.com\/en\/free-pro-team@latest\/github\/finding-security-vulnerabilities-and-errors-in-your-code\/enabling-code-scanning-for-a-repository\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">questa pagina di documentazione<\/a>.<\/p>\n<p><em>Fonte<\/em>: <a href=\"https:\/\/github.blog\/2020-09-30-code-scanning-is-now-available\/\" class=\"text-link text-link--special\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><span class=\"underline\">GitHub Blog<\/span><i class=\"ico-external\"\/><\/a><\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"http:\/\/feedproxy.google.com\/~r\/htmlitedit\/~3\/tgEVIweF6P4\/\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chiunque abbia a che fare con lo sviluppo di software, dovrebbe rendersi facilmente conto di quanto sia difficile evitare del tutto l\u2019introduzione (involontaria) di problemi di sicurezza. Spesso, infatti, si posticipa l\u2019analisi di sicurezza ad un secondo momento, rischiando addirittura di rilasciare in produzione porzioni di codice che rendono vulnerabile un\u2019intera applicazione. Per risolvere (almeno&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_s2mail":""},"categories":[37],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia\" \/>\n<meta property=\"og:description\" content=\"Chiunque abbia a che fare con lo sviluppo di software, dovrebbe rendersi facilmente conto di quanto sia difficile evitare del tutto l\u2019introduzione (involontaria) di problemi di sicurezza. Spesso, infatti, si posticipa l\u2019analisi di sicurezza ad un secondo momento, rischiando addirittura di rilasciare in produzione porzioni di codice che rendono vulnerabile un\u2019intera applicazione. Per risolvere (almeno...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\" \/>\n<meta property=\"og:site_name\" content=\"AGENZIA WEB Italia\" \/>\n<meta property=\"article:published_time\" content=\"2020-10-02T08:34:04+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tbm-html.s3.amazonaws.com\/app\/uploads\/2020\/10\/token-scanning-1.gif\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\"},\"headline\":\"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice\",\"datePublished\":\"2020-10-02T08:34:04+00:00\",\"dateModified\":\"2020-10-02T08:34:04+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\"},\"wordCount\":439,\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"articleSection\":[\"News\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\",\"name\":\"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\"},\"datePublished\":\"2020-10-02T08:34:04+00:00\",\"dateModified\":\"2020-10-02T08:34:04+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"name\":\"AGENZIA WEB Italia\",\"description\":\"Web design Web agency Italia\",\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\",\"name\":\"Multimedia Web\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"contentUrl\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"width\":200,\"height\":57,\"caption\":\"Multimedia Web\"},\"image\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"caption\":\"admin\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/","og_locale":"it_IT","og_type":"article","og_title":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia","og_description":"Chiunque abbia a che fare con lo sviluppo di software, dovrebbe rendersi facilmente conto di quanto sia difficile evitare del tutto l\u2019introduzione (involontaria) di problemi di sicurezza. Spesso, infatti, si posticipa l\u2019analisi di sicurezza ad un secondo momento, rischiando addirittura di rilasciare in produzione porzioni di codice che rendono vulnerabile un\u2019intera applicazione. Per risolvere (almeno...","og_url":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/","og_site_name":"AGENZIA WEB Italia","article_published_time":"2020-10-02T08:34:04+00:00","og_image":[{"url":"https:\/\/tbm-html.s3.amazonaws.com\/app\/uploads\/2020\/10\/token-scanning-1.gif"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Scritto da":"admin","Tempo di lettura stimato":"2 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#article","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/"},"author":{"name":"admin","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42"},"headline":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice","datePublished":"2020-10-02T08:34:04+00:00","dateModified":"2020-10-02T08:34:04+00:00","mainEntityOfPage":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/"},"wordCount":439,"publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"articleSection":["News"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/","name":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice - AGENZIA WEB Italia","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website"},"datePublished":"2020-10-02T08:34:04+00:00","dateModified":"2020-10-02T08:34:04+00:00","breadcrumb":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/github-code-scanning-identificare-le-vulnerabilita-nel-codice\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.nycwebdesign.eu\/webdesign\/"},{"@type":"ListItem","position":2,"name":"GitHub Code Scanning: identificare le vulnerabilit\u00e0 nel codice"}]},{"@type":"WebSite","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","name":"AGENZIA WEB Italia","description":"Web design Web agency Italia","publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization","name":"Multimedia Web","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","contentUrl":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","width":200,"height":57,"caption":"Multimedia Web"},"image":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42","name":"admin","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","caption":"admin"}}]}},"_links":{"self":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/22317"}],"collection":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/comments?post=22317"}],"version-history":[{"count":0,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/22317\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/media?parent=22317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/categories?post=22317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/tags?post=22317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}