<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments for exploitscience.org</title>
	<atom:link href="http://www.exploitscience.org/blog/?feed=comments-rss2" rel="self" type="application/rss+xml" />
	<link>http://www.exploitscience.org/blog</link>
	<description>You see a mouse trap  I see free cheese, and a challenge -Unknown</description>
	<lastBuildDate>Tue, 27 Mar 2012 14:58:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>Comment on pydbg for unix by Martin Žember</title>
		<link>http://www.exploitscience.org/blog/?p=10&#038;cpage=1#comment-153</link>
		<dc:creator>Martin Žember</dc:creator>
		<pubDate>Tue, 27 Mar 2012 14:58:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.exploitscience.org/blog/?p=10#comment-153</guid>
		<description>Hm. WP ate all blank lines and formatting. Sorry for the unreadable result.</description>
		<content:encoded><![CDATA[<p>Hm. WP ate all blank lines and formatting. Sorry for the unreadable result.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on pydbg for unix by Martin Žember</title>
		<link>http://www.exploitscience.org/blog/?p=10&#038;cpage=1#comment-152</link>
		<dc:creator>Martin Žember</dc:creator>
		<pubDate>Tue, 27 Mar 2012 14:57:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.exploitscience.org/blog/?p=10#comment-152</guid>
		<description>You are right that there is a problem with monitoring crashes in unix.

Thanks for sharing your solution. I tried to run it, and it says:


/new/pydbg_unix/pydbg_unix.py server  -c myserver.conf
Continuing process execution
waiting for signal..
Reading configuration &#039;/new/server-1.0.0/myserver.conf&#039; ...
Binding to interface 192.168.103.128 port 53.
Loading 1 compiled zones...
Loaded zone &#039;example.com.&#039;
Loaded 1 out of 1 zones.
Configured 1 interfaces and 1 zones.

Starting server...
Server started in foreground, PID = 22518
PID stored in /tmp/server-minimal/server.pid
Traceback (most recent call last):
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 85, in 
    main()
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 81, in main
    debugProcess(process)
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 32, in debugProcess
    signal = process.waitSignals(6,4,10,11,12)
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&quot;, line 714, in waitSignals
    return self.debugger.waitSignals(*signals, **{&#039;pid&#039;: self.pid})
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/debugger.py&quot;, line 172, in waitSignals
    raise event
ptrace.debugger.process_event.ProcessExit: Process 22518 killed by signal SIGSEGV


It seems that process.waitSignals() does not return (but raises an exception). So I tried to handle those exceptions:

/new/pydbg_unix/pydbg_unix.py serverd  -c myserver.conf
Continuing process execution
waiting for signal..
Reading configuration &#039;/new/server-1.0.0/myserver.conf&#039; ...
Binding to interface 192.168.103.128 port 53.
Loading 1 compiled zones...
Loaded zone &#039;example.com.&#039;
Loaded 1 out of 1 zones.
Configured 1 interfaces and 1 zones.

Starting server...
Server started in foreground, PID = 23168
PID stored in /tmp/server-minimal/server.pid
Registers ------&gt;
ERROR:root:Unable to read registers: ptrace(cmd=12, pid=23168, 0, 156766432) error #3: No such process
Stack ----&gt;
Traceback (most recent call last):
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 101, in 
    main()
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 97, in main
    debugProcess(process)
  File &quot;/new/pydbg_unix/pydbg_unix.py&quot;, line 42, in debugProcess
    process.dumpStack()
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&quot;, line 656, in dumpStack
    stack = self.findStack()
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&quot;, line 275, in findStack
    for map in self.readMappings():
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&quot;, line 676, in readMappings
    return readProcessMappings(self)
  File &quot;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/memory_mapping.py&quot;, line 114, in readProcessMappings
    raise ProcessError(process, &quot;Unable to read process maps: %s&quot; % err)
ptrace.debugger.process_error.ProcessError: Unable to read process maps: Unable to open &#039;/proc/23168/maps&#039;: [Errno 2] No such file or directory: &#039;/proc/23168/maps&#039;

It looks like the process is already killed. The signals were probably not trapped...

I wonder if you had a different version of python-ptrace.

(I even found some new commits involving LinuxApport in the SVN of Peach, but have not tried it yet.)</description>
		<content:encoded><![CDATA[<p>You are right that there is a problem with monitoring crashes in unix.</p>
<p>Thanks for sharing your solution. I tried to run it, and it says:</p>
<p>/new/pydbg_unix/pydbg_unix.py server  -c myserver.conf<br />
Continuing process execution<br />
waiting for signal..<br />
Reading configuration &#8216;/new/server-1.0.0/myserver.conf&#8217; &#8230;<br />
Binding to interface 192.168.103.128 port 53.<br />
Loading 1 compiled zones&#8230;<br />
Loaded zone &#8216;example.com.&#8217;<br />
Loaded 1 out of 1 zones.<br />
Configured 1 interfaces and 1 zones.</p>
<p>Starting server&#8230;<br />
Server started in foreground, PID = 22518<br />
PID stored in /tmp/server-minimal/server.pid<br />
Traceback (most recent call last):<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 85, in<br />
    main()<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 81, in main<br />
    debugProcess(process)<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 32, in debugProcess<br />
    signal = process.waitSignals(6,4,10,11,12)<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&#8221;, line 714, in waitSignals<br />
    return self.debugger.waitSignals(*signals, **{&#8216;pid&#8217;: self.pid})<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/debugger.py&#8221;, line 172, in waitSignals<br />
    raise event<br />
ptrace.debugger.process_event.ProcessExit: Process 22518 killed by signal SIGSEGV</p>
<p>It seems that process.waitSignals() does not return (but raises an exception). So I tried to handle those exceptions:</p>
<p>/new/pydbg_unix/pydbg_unix.py serverd  -c myserver.conf<br />
Continuing process execution<br />
waiting for signal..<br />
Reading configuration &#8216;/new/server-1.0.0/myserver.conf&#8217; &#8230;<br />
Binding to interface 192.168.103.128 port 53.<br />
Loading 1 compiled zones&#8230;<br />
Loaded zone &#8216;example.com.&#8217;<br />
Loaded 1 out of 1 zones.<br />
Configured 1 interfaces and 1 zones.</p>
<p>Starting server&#8230;<br />
Server started in foreground, PID = 23168<br />
PID stored in /tmp/server-minimal/server.pid<br />
Registers &#8212;&#8212;&gt;<br />
ERROR:root:Unable to read registers: ptrace(cmd=12, pid=23168, 0, 156766432) error #3: No such process<br />
Stack &#8212;-&gt;<br />
Traceback (most recent call last):<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 101, in<br />
    main()<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 97, in main<br />
    debugProcess(process)<br />
  File &#8220;/new/pydbg_unix/pydbg_unix.py&#8221;, line 42, in debugProcess<br />
    process.dumpStack()<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&#8221;, line 656, in dumpStack<br />
    stack = self.findStack()<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&#8221;, line 275, in findStack<br />
    for map in self.readMappings():<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/process.py&#8221;, line 676, in readMappings<br />
    return readProcessMappings(self)<br />
  File &#8220;/usr/local/lib/python2.6/dist-packages/ptrace/debugger/memory_mapping.py&#8221;, line 114, in readProcessMappings<br />
    raise ProcessError(process, &#8220;Unable to read process maps: %s&#8221; % err)<br />
ptrace.debugger.process_error.ProcessError: Unable to read process maps: Unable to open &#8216;/proc/23168/maps&#8217;: [Errno 2] No such file or directory: &#8216;/proc/23168/maps&#8217;</p>
<p>It looks like the process is already killed. The signals were probably not trapped&#8230;</p>
<p>I wonder if you had a different version of python-ptrace.</p>
<p>(I even found some new commits involving LinuxApport in the SVN of Peach, but have not tried it yet.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on pydbg for unix by ach</title>
		<link>http://www.exploitscience.org/blog/?p=10&#038;cpage=1#comment-60</link>
		<dc:creator>ach</dc:creator>
		<pubDate>Thu, 15 Jul 2010 15:34:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.exploitscience.org/blog/?p=10#comment-60</guid>
		<description>Nerve / Ragweed works on osx for exactly this... but i suppose if you&#039;re stuck with python.. ;)</description>
		<content:encoded><![CDATA[<p>Nerve / Ragweed works on osx for exactly this&#8230; but i suppose if you&#8217;re stuck with python.. <img src='http://www.exploitscience.org/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Cybercrime As A Service by spoofy</title>
		<link>http://www.exploitscience.org/blog/?p=5&#038;cpage=1#comment-3</link>
		<dc:creator>spoofy</dc:creator>
		<pubDate>Thu, 01 Apr 2010 14:52:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.exploitscience.org/blog/?p=5#comment-3</guid>
		<description>That&#039;s a good point, the tax rate for criminal organizations is 100%</description>
		<content:encoded><![CDATA[<p>That&#8217;s a good point, the tax rate for criminal organizations is 100%</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Cybercrime As A Service by hm</title>
		<link>http://www.exploitscience.org/blog/?p=5&#038;cpage=1#comment-2</link>
		<dc:creator>hm</dc:creator>
		<pubDate>Tue, 30 Mar 2010 07:53:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.exploitscience.org/blog/?p=5#comment-2</guid>
		<description>&quot;...it works out to a fairly nice sum of money for a few years work...&quot;
Did you forget about 20 years in prison and seizing the assets?</description>
		<content:encoded><![CDATA[<p>&#8220;&#8230;it works out to a fairly nice sum of money for a few years work&#8230;&#8221;<br />
Did you forget about 20 years in prison and seizing the assets?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

