<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Life Pattern &#187; linux</title>
	<atom:link href="http://blog.lifepattern.org/tag/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.lifepattern.org</link>
	<description>There must be a better way...</description>
	<lastBuildDate>Sun, 14 Nov 2010 21:45:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Attack vectors deja vu</title>
		<link>http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/</link>
		<comments>http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/#comments</comments>
		<pubDate>Mon, 11 May 2009 07:01:37 +0000</pubDate>
		<dc:creator>zimage</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[exploit]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[vulnerability]]></category>

		<guid isPermaLink="false">http://blog.lifepattern.org/?p=64</guid>
		<description><![CDATA[I have to keep an eye on the IT security news.  You know, “security is a process not product”. Just recently, Linux kernel vulnerability CVE-2009-1337 caught my attention. This even has l33t in its name   The more interesting part is, of course, not the CVE number but the attack vector used in [...]


Related posts:<ol><li><a href='http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/' rel='bookmark' title='Permanent Link: Linux kernel vmsplice root exploit'>Linux kernel vmsplice root exploit</a></li></ol>]]></description>
			<content:encoded><![CDATA[<p>I have to keep an eye on the IT security news.  You know, “security is a process not product”. Just recently, Linux kernel vulnerability <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1337">CVE-2009-1337</a> caught my attention. This even has l33t in its name <img src='http://blog.lifepattern.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  The more interesting part is, of course, not the CVE number but the attack vector used in a recent <a href="http://downloads.securityfocus.com/vulnerabilities/exploits/34405.sh">exploit</a>.  Basically, a core is dumped to the logrotate.d directory.  After this, logrotate executes the malicious code included in this dump since it uses rather naive parsing to find instructions in its configuration files.</p>
<p>Inevitably, this reminded me of a very similar situation from few years ago.  In 2006, <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-2451">CVE-2006-2451</a>, which is another kernel vulnerability, allowed core to be dumped in a directory that the attacker isn’t allowed to write to. A <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=378153">weakness in cron.d</a> parsing similar to that in recent versions of logrotate was used as attack vector.</p>
<p>Just a few weeks ago, I had another deja vu. There’s a flaw in udev versions before 1.4.1 that allows local users to gain root privileges by not checking whether a NETLINK message originates from kernel (<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1185">CVE-2009-1185</a>). It took me some time to remember why this sounded so familiar since the older case is from 2003.  Back then, the zebra routing suite failed to check the NETLINK message originators (<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2003-0858">CVE-2003-0858</a>).</p>
<p>Oh well, to err is human, don’t you think?</p>
<div style="float: left; width: 42px; padding-right: 45px; margin: 0 45px 0 0;">
		<script type="text/javascript">
		<!--
		digg_url = "http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "compact";
		digg_window = "";
		digg_title = "Attack+vectors+deja+vu";
		digg_bodytext = "";
		digg_media = "news";
		digg_topic = "";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><div style="clear:both;"></div>

<p>Related posts:<ol><li><a href='http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/' rel='bookmark' title='Permanent Link: Linux kernel vmsplice root exploit'>Linux kernel vmsplice root exploit</a></li></ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>IO performance monitoring</title>
		<link>http://blog.lifepattern.org/2009/04/11/io-performance-monitoring/</link>
		<comments>http://blog.lifepattern.org/2009/04/11/io-performance-monitoring/#comments</comments>
		<pubDate>Sat, 11 Apr 2009 12:08:21 +0000</pubDate>
		<dc:creator>zimage</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nexenta]]></category>
		<category><![CDATA[opensolaris]]></category>

		<guid isPermaLink="false">http://blog.lifepattern.org/?p=62</guid>
		<description><![CDATA[If you can measure it, you can manage it. I&#8217;m a measurement, monitoring, analysis and statistics addict  
That&#8217;s why I&#8217;ve always wanted to be able to monitor the IO load of the Linux systems I&#8217;ve worked with. While there are well established monitoring and accounting tools for the CPU usage &#8211; both system wide [...]


Related posts:<ol><li><a href='http://blog.lifepattern.org/2008/09/05/mysql-usage-accounting/' rel='bookmark' title='Permanent Link: MySQL Usage Accounting'>MySQL Usage Accounting</a></li></ol>]]></description>
			<content:encoded><![CDATA[<p>If you can measure it, you can manage it. I&#8217;m a measurement, monitoring, analysis and statistics addict <img src='http://blog.lifepattern.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>That&#8217;s why I&#8217;ve always wanted to be able to monitor the IO load of the Linux systems I&#8217;ve worked with. While there are well established monitoring and accounting tools for the CPU usage &#8211; both system wide and per process &#8211; there were virtually none for the IO system until very recently.</p>
<p>Two of the more important reasons why I&#8217;d like to see better IO load monitoring are:</p>
<ul>
<li>The mechanical drives have big latency. In general the CPU feels much better than the disks when overloaded. For example if load average 10 is caused by CPU bound processes the system feels much more responsive than the same load but caused by IO bond processes. CPU load average 10 on a server system with two processors isn&#8217;t very noticeable. At the same time IO load average of 10 on the same system with 2x 7200 rpm disk drives in RAID1 feels very sluggish.</li>
<li>The hard disk drives failed to keep up with the performance improvements in microprocessor technologies. Disk capacity has grown quite well, but the speed and especially access times are far behind. The IO performance is the most common bottleneck and most precious resource in today&#8217;s systems. Or at least the systems I work with <img src='http://blog.lifepattern.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
<p>At the beginning of my Linux career, ten years ago, there was only one metric &#8211; blocks read/written. And that&#8217;s it. How busy the disk is you can guess only by looking at load average and checking how many processes are stuck in D state. I wish there are separate load average readings for CPU and IO&#8230;</p>
<p>At some point (linux 2.5 times?) extended statistics were added and things like queue size, utilization in % etc. became available. Much better. Still it was hard to tell who exactly is causing the load. If we speak of multi user system all you can see is multiple processes in D state. It&#8217;s unclear whether these are the ones causing the IO havoc or just victims of the already overloaded IO subsystem waiting.</p>
<p>In Linux 2.6.20 another step was made by adding per process IO accounting. I was very excited when I heard about this feature and eager to try it. It turned out that this per process IO accounting counts only the bytes read/written by a process. Not that better. A modern 7200 rpm SATA drive is only capable of about 90 IOPS so it could be choked with the pathetic 90 bytes per second&#8230;</p>
<p>Then there are the atop patches. These add per process IO occupation percentage. That sounds great but&#8230; when you have a lot of small random writes they go to the page cache first and only then are periodically flushed to the physical device. This is performance feature and is generally a (very) good thing as it allows the elevators to group writes together etc. Unfortunately, atop ends up accounting all these writes and IO utilization to pdflush and kjournald.</p>
<p>Ok, lets see what&#8217;s the state of the affairs in some other operating system. Everybody talks about dtrace so it&#8217;s time to check it out. Linux doesn&#8217;t have dtrace. At least yet. There is work in progress by Paul Fox. On the other hand Linux has system tap but it doesn&#8217;t look very mature to me. Anyway, there are number of operating systems that support dtrace: as it is create by Sun engineers first come Solaris and OpenSolaris. Then there is the FreeBSD port and Apple OS X. I&#8217;m familiar with FreeBSD but I wanted to check the current state of OpenSolaris kernel. On the other hand I wanted to keep the learning curve less sloppy, so I opted for Nexenta core 2 rc1. Nexenta is GNU userspace (Debian/Ubuntu) and OpenSolaris kernel.</p>
<p>Download, install &#8211; everything was smooth. The install defaulted to root fs on ZFS. Good! I was thinking about playing with ZFS these days anyway.
<p>And the moment of truth:</p>
<p>I started dbench -S 1, run dtrace -s iotop.d and here&#8217;s the output:</p>
<pre>
  UID    PID   PPID CMD              DEVICE  MAJ MIN D   %I/O
    0      0      0 sched            cmdk0   102   0 W     17
</pre>
<p>Hm, that looks somewhat familiar. I see a pattern there. Isn&#8217;t sched the ZFS cousin of pdflush/kjournald? Oh, well it is: http://opensolaris.org/jive/thread.jspa?threadID=39545&#038;tstart=285</p>
<p>No luck&#8230; dtrace&#8217;s iotop works with UFS but has problem with ZFS.</p>
<p>Turns out the proper IO monitoring is a very tricky business.</p>
<div style="float: left; width: 42px; padding-right: 45px; margin: 0 45px 0 0;">
		<script type="text/javascript">
		<!--
		digg_url = "http://blog.lifepattern.org/2009/04/11/io-performance-monitoring/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "compact";
		digg_window = "";
		digg_title = "IO+performance+monitoring";
		digg_bodytext = "";
		digg_media = "news";
		digg_topic = "";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><div style="clear:both;"></div>

<p>Related posts:<ol><li><a href='http://blog.lifepattern.org/2008/09/05/mysql-usage-accounting/' rel='bookmark' title='Permanent Link: MySQL Usage Accounting'>MySQL Usage Accounting</a></li></ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.lifepattern.org/2009/04/11/io-performance-monitoring/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Virtual Private Servers</title>
		<link>http://blog.lifepattern.org/2008/08/23/virtual-private-servers/</link>
		<comments>http://blog.lifepattern.org/2008/08/23/virtual-private-servers/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 07:59:23 +0000</pubDate>
		<dc:creator>zimage</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.lifepattern.org/?p=28</guid>
		<description><![CDATA[A year ago I decided it&#8217;s about time to get a Virtual Private Server for my pet projects. Prior to that I had 2 sites on a shared hosting server and some other non-web network related apps spread around workstations that are always on. But at some point it all started to get messy and [...]


Related posts:<ol><li><a href='http://blog.lifepattern.org/2009/08/14/tls-sni-almost-there-or-not/' rel='bookmark' title='Permanent Link: TLS SNI &#8211; almost there&#8230; or not?'>TLS SNI &#8211; almost there&#8230; or not?</a></li></ol>]]></description>
			<content:encoded><![CDATA[<p>A year ago I decided it&#8217;s about time to get a Virtual Private Server for my pet projects. Prior to that I had 2 sites on a shared hosting server and some other non-web network related apps spread around workstations that are always on. But at some point it all started to get messy and moreover I needed to put a few more things online. So I decided to get a VPS and consolidate all of my projects in one place. Compared to shared hosting environment the VPS gives me more freedom and fine grained control over the exact versions of applications and libraries I use among other things. It requires more work on my part though.</p>
<p>The fact that I have 10 years of experience working as a (unix) systems and network administrator is very handy when it comes to installing, configuring and troubleshooting the software I use on my VPS. Unfortunately it doesn&#8217;t help that much with the selections process so I had to sit down and filter the myriad of VPS providers out there.</p>
<p>I dug through blogs &#038; forums, asked friends. <a href="http://www.webhostingtalk.com/forumdisplay.php?f=1">Web Hosting Talk forums</a> were particularly useful. Finally I have chosen Future Hosting. It turned out to be a good choice indeed. I&#8217;m with them for almost a year already and there weren&#8217;t any major issues. I asked for PTR RRs (that&#8217;s reverse resolving from IP to hostname) and their support staff quickly added these for me.</p>
<p>However good a hosting provider is you must keep a backup of your own. I was rather passively looking for second VPS provider for some time. One day I saw (can&#8217;t remember where) a Comfy Host&#8217;s ad. It looked suspiciously cheap at $10/mo to me and I haven&#8217;t heard anything about them before. But this was supposed to be a backup VPS so I decided to give it a try. I placed my order with Comfy Host using my PayPal account and started waiting for a welcome email. One day later I received an email saying that due to the surplus of orders my VPS setup will be delayed a little bit. Ok it happens. Few days later I had to submit a support ticket to ask what&#8217;s going on with my account. After some more back and forth support tickets I got my VPS up and running.</p>
<p>I used it for three months and it was pretty stable. I used it only for my automated daily backup and monitored it with <a href="http://www.nagios.org/">nagios</a>. Then one day suddenly the monitoring lost connection with the VPS. Since it is a backup server and I was busy with other things I let it stay this way for a week. Finally I logged into the control panel and guess what&#8230; I was paying on a monthly basis after receiving an invoice from Comfy Host. Last month I didn&#8217;t receive an invoice. And I couldn&#8217;t pay either because according to the control panel I didn&#8217;t owe money despite being late with the payment. Hm&#8230; I submitted a ticket to ask why is that. I had to wait several days for a reply that read:</p>
<p>&#8220;Sorry about the late reply. The ticket seems to have been overlooked without a response. We received no payment and therefore your VPS was shut off.&#8221;</p>
<p>Enough. I went looking for another backup VPS. I remembered that <a href="http://zenhabits.net/">Leo from Zen Habits</a> once said <a href="http://zenhabits.net/2008/07/experiments-in-blogging-the-open-source-model-write-to-done-and-other-tidbits/">he is satisfied with his current provider</a> &#8211; namely <a href="http://slicehost.com/">slicehost.com</a>. So I&#8217;m with <a href="http://slicehost.com/">slicehost.com</a> as my backup VPS for about a month now. So far so good.</p>
<div style="float: left; width: 42px; padding-right: 45px; margin: 0 45px 0 0;">
		<script type="text/javascript">
		<!--
		digg_url = "http://blog.lifepattern.org/2008/08/23/virtual-private-servers/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "compact";
		digg_window = "";
		digg_title = "Virtual+Private+Servers";
		digg_bodytext = "";
		digg_media = "news";
		digg_topic = "";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><div style="clear:both;"></div>

<p>Related posts:<ol><li><a href='http://blog.lifepattern.org/2009/08/14/tls-sni-almost-there-or-not/' rel='bookmark' title='Permanent Link: TLS SNI &#8211; almost there&#8230; or not?'>TLS SNI &#8211; almost there&#8230; or not?</a></li></ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.lifepattern.org/2008/08/23/virtual-private-servers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Family&#8217;s IT Consultant: The Computer Display</title>
		<link>http://blog.lifepattern.org/2008/06/17/familys-it-consultant-the-computer-display/</link>
		<comments>http://blog.lifepattern.org/2008/06/17/familys-it-consultant-the-computer-display/#comments</comments>
		<pubDate>Tue, 17 Jun 2008 10:08:44 +0000</pubDate>
		<dc:creator>zimage</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://blog.lifepattern.org/2008/06/17/familys-it-consultant-the-computer-display/</guid>
		<description><![CDATA[In today&#8217;s world of technological wonders few of us wouldn&#8217;t welcome some guidance. And since my friends and relatives know I work with computers they often ask me to help solve various issues and help them choose their new electronic devices. Actually it might have been worse&#8230; not that I&#8217;m not helpful guy (I am [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>In today&#8217;s world of technological wonders few of us wouldn&#8217;t welcome some guidance. And since my friends and relatives know I work with computers they often ask me to help solve various issues and help them choose their new electronic devices. Actually it might have been worse&#8230; not that I&#8217;m not helpful guy (I <strong>am</strong> friendly) but I&#8217;m not the most communicative person out there so they don&#8217;t bother me as much as they might probably wanted to. On the other hand quite a lot of my friends are IT experts <img src='http://blog.lifepattern.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Anyway, my little niece Teda will be starting school this fall. She already has a room of her own, her parents are buying her textbooks and other school aids and finally a computer. We decided to use an older computer to keep the cost down and invest instead in a good display.</p>
<p>The computers I work with are quite specific and I had to brush up a little bit my knowledge of general purpose desktop systems. For example my personal computer is a 3 years old IBM ThinkPad X41 (12&#8243; screen) and I&#8217;m totally satisfied with it&#8217;s performance and features. The rest are servers with 8 or more hard drives and 8 CPU cores each.</p>
<p>We decided to go for a 19&#8243; or 20&#8243; wide screen TFT LCD display but also weren&#8217;t willing to pay more than 450 leva (~$350). First things first and I went for learning more about various types of current TFT technologies on the market. I almost instantly ruled out TN displays and focused on MVA panels since IPS wouldn&#8217;t fit in our price range. Most of the MVA panels are more pricey than we liked but finally I spotted an Asus PW201 that according to the manufacturer&#8217;s specifications was built with a P-MVA panel and also its price has recently dropped from about 700 leva to 449 leva.</p>
<p>This price drop seemed suspicious to me so I called the shop to make sure that this particular model and batch is P-MVA and not TN. After they assured me several times that this is a P-MVA panel (they called their warehouse) I proceeded to order but still suspicious I wrote in the order&#8217;s comment field: &#8220;If you are not sure whether this monitor is of P-MVA type please cancel the order&#8221;.</p>
<p>Finally the display arrived. I paid to the delivery guy and opened the box. Oh boy, this thing looks splendid. Very stylish. It has integrated stereo speakers although expectedly the sound quality is mediocre. The integrated USB hub is very convenient because you don&#8217;t need to crawl under the desk in order to plug USB devices. Audio, USB and VGA cables run together so despite using DVI for video you&#8217;ll have to use the VGA cable as well. The buttons on the front are actually small touch sensitive areas and react somewhat erratically. My overall impressions about PW201 are very good. It is definitely worth its price.</p>
<p>I intended to install Kubuntu 8.04 (Hardy Heron) so I hooked up monitor&#8217;s DVI port to the PC, attached the keyboard and&#8230; suddenly realised I don&#8217;t have an optical drive on this PC. Okay let&#8217;s try network install <img src='http://blog.lifepattern.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  I followed the instructions listed at <a href="http://wiki.koeln.ccc.de/index.php/Ubuntu_PXE_Install">http://wiki.koeln.ccc.de/index.php/Ubuntu_PXE_Install</a> but since I wanted to install Kubuntu I opted for &#8220;console only&#8221; installation in the Ubuntu installer. After the installation had finished I installed the rest of the Kubuntu with:</p>
<blockquote><p>sudo apt-get install kubuntu-desktop</p></blockquote>
<p>So far so good. The X server detected the Nvidia GeForce4 MX 440 graphics adapter and used <a href="http://xorg.freedesktop.org/wiki/nv">nv</a> to drive it. It properly detected the monitor&#8217;s properties and started in the panel&#8217;s native resolution of 1680&#215;1050. Unfortunately the nv opnesource driver lacks 3D acceleration (because Nvidia refuses to provide the hardware specifications needed to add 3D support) and this is where I spent 3 hours trying to get the proprietary <a href="http://www.nvidia.com/object/unix.html">nvidia</a> driver to work properly with my setup. Most of the time was spent trying to set it up to use 1680&#215;1050 but nvidia driver kept thinking that PW201 has maximum pixel clock of 135 MHz when it&#8217;s actually 146 MHz. Finally I found this set of options working for me:</p>
<blockquote><p>
Section &#8220;Device&#8221;<br />
        Identifier &#8220;GeForce4 MX 440 with AGP8X&#8221;<br />
        Driver &#8220;nvidia&#8221;<br />
        <strong>Option &#8220;ExactModeTimingsDVI&#8221; &#8220;true&#8221;</strong><br />
        <strong>Option &#8220;NoBandWidthTest&#8221; &#8220;true&#8221;</strong><br />
        <strong>Option &#8220;ModeValidation&#8221; &#8220;NoDFPNativeResolutionCheck, NoEdidMaxPClkCheck, NoMaxPClkCheck&#8221;</strong><br />
EndSection
</p></blockquote>
<p>This did the trick but after only few minutes of playing video with <a href="http://www.mplayerhq.hu/">mplayer</a> and Xv (Xvideo) output driver the video window started to show only colorful noise. Tried OpenGL output driver and worked better but used 95% of the CPU vs. 55% for Xv (that&#8217;s AMD Athlon XP 1800+). Moreover after half an hour video artefacts started to appear all over the screen and I reverted to the &#8220;nv&#8221; driver.</p>
<p>I don&#8217;t know whether this is a software/driver problem or maybe the graphics adapter is having some issues but since it works with the nv driver (and my niece doesn&#8217;t need 3D acceleration) I&#8217;ll stick with it for now.</p>
<div style="float: left; width: 42px; padding-right: 45px; margin: 0 45px 0 0;">
		<script type="text/javascript">
		<!--
		digg_url = "http://blog.lifepattern.org/2008/06/17/familys-it-consultant-the-computer-display/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "compact";
		digg_window = "";
		digg_title = "Family%26%238217%3Bs+IT+Consultant%3A+The+Computer+Display";
		digg_bodytext = "";
		digg_media = "news";
		digg_topic = "";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><div style="clear:both;"></div>

<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.lifepattern.org/2008/06/17/familys-it-consultant-the-computer-display/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linux kernel vmsplice root exploit</title>
		<link>http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/</link>
		<comments>http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 20:47:38 +0000</pubDate>
		<dc:creator>zimage</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[0-day]]></category>
		<category><![CDATA[exploit]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[vulnerability]]></category>

		<guid isPermaLink="false">http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/</guid>
		<description><![CDATA[Two strings walk into a bar. The first says, &#8220;Hello, I&#8217;d like a ciderO&#8217;y?kI&#8217;U`,E&#8217;*@???&#8217;?? ?!&#62;A~Xx?(y&#8217;n?.&#8221; The second says, &#8220;Please excuse my friend, he&#8217;s not null-terminated.&#8221;
&#8212;
If you are running Linux kernel newer than 2.6.17 but older than 2.6.24.2 or 2.6.23.16 then any  local user can easily become root or at least crash your system.
There are [...]


Related posts:<ol><li><a href='http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/' rel='bookmark' title='Permanent Link: Attack vectors deja vu'>Attack vectors deja vu</a></li></ol>]]></description>
			<content:encoded><![CDATA[<p>Two strings walk into a bar. The first says, &#8220;Hello, I&#8217;d like a ciderO&#8217;y?kI&#8217;U`,E&#8217;*@???&#8217;?? ?!&gt;A~Xx?(y&#8217;n?.&#8221; The second says, &#8220;Please excuse my friend, he&#8217;s not null-terminated.&#8221;</p>
<p>&#8212;</p>
<p>If you are running Linux kernel newer than 2.6.17 but older than 2.6.24.2 or 2.6.23.16 then any  local user can easily become root or at least crash your system.</p>
<p>There are actually two different security issues related to vmsplice() system call and both of them could lead to local privileges escalation. This is especially bad for people who don&#8217;t fully control content on and access to their servers &#8211; e.g. web hosting companies. The other bad news is that vmsplice() is part of the core kernel and there is no configuration option to exclude it.</p>
<p>Two separate exploits have been publicly released which exploit each of the two issues respectively.</p>
<p>The first issue was classified as <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0009">CVE-2008-0009</a> and <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0010">CVE-2008-0010</a> and was fixed by linux kernels 2.6.23.15 and 2.6.24.1.</p>
<p>The situation with the second issue, classified as <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-0600">CVE-2008-0600</a> was much worse. It was introduced with the initial implementation of vmsplice() and affects all kernels after 2.6.17 inclusively. There was an exploit in the wild for more than 24 hours without proper fix for the problem. I&#8217;m sure that even though there are patched versions now &#8211; linux 2.6.24.2 and 2.6.23.16 &#8211; at least 2-3 more days will pass before the number of vulnerable systems is reduced enough.</p>
<p>IMHO this is one of the worst 0-day Linux kernel exploits  in years. I hope it won&#8217;t happen again soon. But you should be careful because all this has happened before and will definitely happen again someday.</p>
<div style="float: left; width: 42px; padding-right: 45px; margin: 0 45px 0 0;">
		<script type="text/javascript">
		<!--
		digg_url = "http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/";
		digg_bgcolor = "#FFFFFF";
		digg_skin = "compact";
		digg_window = "";
		digg_title = "Linux+kernel+vmsplice+root+exploit";
		digg_bodytext = "";
		digg_media = "news";
		digg_topic = "";
		//-->
		</script>
		<script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script></div><div style="clear:both;"></div>

<p>Related posts:<ol><li><a href='http://blog.lifepattern.org/2009/05/11/attack-vectors-deja-vu/' rel='bookmark' title='Permanent Link: Attack vectors deja vu'>Attack vectors deja vu</a></li></ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.lifepattern.org/2008/02/11/linux-kernel-vmsplice-root-exploit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

