<node id="641792">
  <nid>641792</nid>
  <type>event</type>
  <uid>
    <user id="27707"><![CDATA[27707]]></user>
  </uid>
  <created>1606938414</created>
  <changed>1606938414</changed>
  <title><![CDATA[PhD Proposal by Chenxiong Qian]]></title>
  <body><![CDATA[<p><strong>Title:&nbsp;</strong>Reducing Software&#39;s Attack Surface with Code Debloating</p>

<p><br />
<strong>Chenxiong Qian</strong><br />
Ph.D. Student in Computer Science<br />
School of Computer Science<br />
College of Computing<br />
Georgia Institute of Technology</p>

<p><br />
<strong>Date</strong>: December 3, 2020<br />
<strong>Time</strong>: 10:00 AM to 12:00 PM (EST)<br />
<strong>Location&nbsp;</strong>(remote via Bluejeans):&nbsp;<a href="https://bluejeans.com/482787466" id="LPlnk685556">https://bluejeans.com/482787466</a><br />
<br />
<strong>Committee</strong></p>

<p>Dr. Wenke Lee (Advisor, School of Computer Science, Georgia Institute of Technology)</p>

<p>Dr.&nbsp;William R. Harris (Co-Advisor,&nbsp;Galois, Inc)<br />
Dr. Taesoo Kim (School of Computer Science, Georgia Institute of Technology)<br />
Dr. Alessandro Orso (School of Computer Science, Georgia Institute of Technology)</p>

<p>Dr. Brendan Saltaformaggio (&nbsp;School of Electrical and Computer Engineering, Georgia Institute of Technology)<br />
<br />
<br />
<strong>Abstract</strong><br />
Current practice for developing and deploying software encourages the deployment of software to provide a large spectrum of features. Software with rich features usually exposes larger attack surface and makes it easier for an attacker to launch attacks. After observing that a large portion of software&rsquo;s features are rarely required by users, an emerging solution, code debloating, has been proposed to reduce software&rsquo;s attack surface by removing unneeded features&rsquo; code. However, there exist several challenges for building such systems: (1) non-developer users cannot describe clearly what features are unneeded; (2) there is no clear boundaries among the code of different features; (3) large and complex software takes inputs that keep changing, which results in non-deterministic executions. To address the challenges, I will first introduce a binary rewriting framework (Razor) that first runs software on given running examples and collects the executed code as references. Then, it uses heuristics to syntactically infer non-executed code that is related to the functionality indicated by the running examples, and directly rewrites the binary to generate a debloated version of the software. After that, I will present a framework (Slimium) that customizes the dominant web browser, Chromium, for visiting specific websites. Slimium removes unrequired features in Chromium based on a feature-code mapping created from manual analysis and static program analysis; and identifies non-deterministic code through dynamic profiling. The results show that Slimium generates slim versions of Chromium with 60% of the potential vulnerabilities removed, for visiting popular websites. In the end, I will briefly discuss my ongoing research that uses program reasoning and differential software testing to automatically partition software&rsquo;s code for different features.<br />
<br />
----------------------------------<br />
<br />
<strong>Additional Meeting Details</strong><br />
<br />
<strong>Link:&nbsp;<a href="https://bluejeans.com/482787466" id="LPlnk446031">https://bluejeans.com/482787466</a></strong></p>
]]></body>
  <field_summary_sentence>
    <item>
      <value><![CDATA[Reducing Software's Attack Surface with Code Debloating]]></value>
    </item>
  </field_summary_sentence>
  <field_summary>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_summary>
  <field_time>
    <item>
      <value><![CDATA[2020-12-03T10:00:00-05:00]]></value>
      <value2><![CDATA[2020-12-03T12:00:00-05:00]]></value2>
      <rrule><![CDATA[]]></rrule>
      <timezone><![CDATA[America/New_York]]></timezone>
    </item>
  </field_time>
  <field_fee>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_fee>
  <field_extras>
      </field_extras>
  <field_audience>
          <item>
        <value><![CDATA[Faculty/Staff]]></value>
      </item>
          <item>
        <value><![CDATA[Public]]></value>
      </item>
          <item>
        <value><![CDATA[Graduate students]]></value>
      </item>
          <item>
        <value><![CDATA[Undergraduate students]]></value>
      </item>
      </field_audience>
  <field_media>
      </field_media>
  <field_contact>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_contact>
  <field_location>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_location>
  <field_sidebar>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_sidebar>
  <field_phone>
    <item>
      <value><![CDATA[]]></value>
    </item>
  </field_phone>
  <field_url>
    <item>
      <url><![CDATA[https://bluejeans.com/482787466]]></url>
      <title><![CDATA[Bluejeans]]></title>
            <attributes><![CDATA[]]></attributes>
    </item>
  </field_url>
  <field_email>
    <item>
      <email><![CDATA[]]></email>
    </item>
  </field_email>
  <field_boilerplate>
    <item>
      <nid><![CDATA[]]></nid>
    </item>
  </field_boilerplate>
  <links_related>
      </links_related>
  <files>
      </files>
  <og_groups>
          <item>221981</item>
      </og_groups>
  <og_groups_both>
          <item><![CDATA[Graduate Studies]]></item>
      </og_groups_both>
  <field_categories>
          <item>
        <tid>1788</tid>
        <value><![CDATA[Other/Miscellaneous]]></value>
      </item>
      </field_categories>
  <field_keywords>
          <item>
        <tid>102851</tid>
        <value><![CDATA[Phd proposal]]></value>
      </item>
      </field_keywords>
  <field_userdata><![CDATA[]]></field_userdata>
</node>
