<div dir="ltr"><br clear="all"><p><span><b><font face="courier new, monospace">TORQUE Security Advisory - <span tabindex="0" class=""><span class="">6 September 2013</span></span></font></b></span></p>
<p><span><b><font face="courier new, monospace">-------------------------------------------</font></b></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><font face="courier new, monospace"><span><b>Vulnerability:</b> </span><span>A non-privileged user who can run jobs or login to a node </span><span>running
 pbs_server or pbs_mom can submit an arbitrary job to the cluster; that 
job can run as root. The user can submit a command directly to a pbs_mom
 daemon to queue and run a job. A malicious user could use this 
vulnerability to remotely execute code as root on the cluster. </span></font></p>

<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace"><b>Versions Affected:</b> All versions of TORQUE </font></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace"><b>Mitigating Factors:</b> </font></span></p>
<p><span><font face="courier new, monospace">- The user must be logged in on a node that is already legitimately able to contact pbs_mom daemons or submit jobs.</font></span></p>
<p><span><font face="courier new, monospace">- If a user submits a job 
via this defect and pbs_server is running, pbs_server will kill the job 
unless job syncing is disabled. It may take up to 45 seconds for 
pbs_server to kill the job.</font></span></p>

<p><span><font face="courier new, monospace">- There are no known instances of this vulnerability being exploited.</font></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace"><b>Remedy: </b>All TORQUE users should patch their systems using the following instructions:</font></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace">For 2.5.x versions of TORQUE:</font></span></p>
<p><span><font face="courier new, monospace">----------------------------</font></span></p>
<p><span><font face="courier new, monospace">1. Download the patch file: </font></span></p>
<p><span><font face="courier new, monospace">     $ wget <a href="http://www.adaptivecomputing.com/torquepatch/fix_mom_priv_2.5.patch" target="_blank">http://www.adaptivecomputing.com/torquepatch/fix_mom_priv_2.5.patch</a></font></span></p>


<p><span><font face="courier new, monospace">2. Run the patch command in the root directory of the TORQUE source tree: </font></span></p>
<p><span><font face="courier new, monospace">     $ patch -p1 &lt; fix_mom_priv_2.5.patch </font></span></p>
<p><span><font face="courier new, monospace">3. Recompile TORQUE: </font></span></p>
<p><span><font face="courier new, monospace">     $ make </font></span></p>
<p><span><font face="courier new, monospace">4. Install TORQUE: </font></span></p>
<p><span><font face="courier new, monospace">     $ sudo make install</font></span></p>
<p><span><font face="courier new, monospace">5. Restart pbs_mom (pbs_server is not affected)</font></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace">For 4.x versions of TORQUE:</font></span></p>
<p><span><font face="courier new, monospace">----------------------------</font></span></p>
<p><span><font face="courier new, monospace">1. Download the patch file: </font></span></p>
<p><span><font face="courier new, monospace">     $ wget <a href="http://www.adaptivecomputing.com/torquepatch/fix_mom_priv.patch" target="_blank">http://www.adaptivecomputing.com/torquepatch/fix_mom_priv.patch</a></font></span></p>


<p><span><font face="courier new, monospace">2. Run the patch command in the root directory of the TORQUE source tree: </font></span></p>
<p><span><font face="courier new, monospace">     $ patch -p1 &lt; fix_mom_priv.patch </font></span></p>
<p><span><font face="courier new, monospace">3. Recompile TORQUE: </font></span></p>
<p><span><font face="courier new, monospace">     $ make </font></span></p>
<p><span><font face="courier new, monospace">4. Install TORQUE: </font></span></p>
<p><span><font face="courier new, monospace">     $ sudo make install</font></span></p>
<p><span><font face="courier new, monospace">5. Restart pbs_mom (pbs_server is not affected)</font></span></p>
<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace"><b>What the Patch Does</b>:
 The patch checks that the connection to the pbs_mom daemon is coming 
from a privileged port. This follows the security model that only 
privileged users should be able to submit arbitrary jobs.</font></span></p>

<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace"><b>Attribution</b>: This 
vulnerability was discovered by John Fitzpatrick of MWR InfoSecurity. 
Matt Ezell of Oak Ridge National Laboratory assisted in creating the 
patch. We thank these individuals for helping to improve TORQUE.</font></span></p>

<p><font face="courier new, monospace"><span></span><br></font></p>
<p><span><font face="courier new, monospace">If you have any further questions, please contact your Adaptive Computing Support representative.</font></span></p><p><span><br></span></p><br>-- <br>Ken Nielson<br>+1 801.717.3700 office +1 801.717.3738 fax<br>
1712 S. East Bay Blvd, Suite 300  Provo, UT  84606<br><a href="http://www.adaptivecomputing.com" target="_blank">www.adaptivecomputing.com</a><br><br>
</div>