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

<channel>
	<title>Blog sur les technologies réseau et sécurité &#187; asa</title>
	<atom:link href="http://bmigette.fr/tag/asa/feed/" rel="self" type="application/rss+xml" />
	<link>http://bmigette.fr</link>
	<description>Blog de Bastien Migette sur les technologies réseau et sécurité, particulièrement cisco.</description>
	<lastBuildDate>Sat, 19 May 2012 14:49:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Comment taper un point d&#8217;interrogation &#8216;?&#8217; dans un mot de passe ?</title>
		<link>http://bmigette.fr/2011/03/16/comment-taper-un-point-dinterrogation-dans-un-mot-de-passe/</link>
		<comments>http://bmigette.fr/2011/03/16/comment-taper-un-point-dinterrogation-dans-un-mot-de-passe/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 18:36:39 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[astuces]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[asa]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[interrogation]]></category>
		<category><![CDATA[IOS]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[point]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=570</guid>
		<description><![CDATA[Comment taper un point d'interrogation '?' dans un mot de passe ?]]></description>
			<content:encoded><![CDATA[<p>Pour ceux d&#8217;entre vous qui ne le savent pas, le &#8216;?&#8217; sur un routeur cisco affiche l&#8217;aide.</p>
<p>Comment faire donc si je veux créer un utilisateur salut avec le mot de passe &laquo;&nbsp;cava?&nbsp;&raquo; ?<br />
Voici ce qu&#8217;il se passe:</p>
<pre>R1(config)#username salut password cava?
LINE    &lt;cr&gt;

R1(config)#username salut password cava</pre>
<p>Autrement dit, ça ne parche pas.</p>
<p>Pareil sur l&#8217;asa:</p>
<pre>ASA1(config)# username salut password cava?

configure mode commands/options:
 WORD
ASA1(config)# username salut password cava</pre>
<p>Donc petite astuce, il faut taper Ctrl+V avant. Pourquoi ? je ne sais pas, mais il en est ainsi.</p>
<pre>R1(config)#username salut password cava? !ici j'ai tapé ctrl+v avant le '?'
R1(config)#do sh run | i salut
username salut password 0 cava?</pre>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2011/03/16/comment-taper-un-point-dinterrogation-dans-un-mot-de-passe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modification de ASAOS pour faire fonctionner ASDM en émulation</title>
		<link>http://bmigette.fr/2009/06/16/lina_cracking_for_asdm_work_on_emulatio/</link>
		<comments>http://bmigette.fr/2009/06/16/lina_cracking_for_asdm_work_on_emulatio/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 15:27:06 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[CCSP]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Emulation/simulation routeurs/firewalls/switchs...]]></category>
		<category><![CDATA[SNAF]]></category>
		<category><![CDATA[802]]></category>
		<category><![CDATA[asa]]></category>
		<category><![CDATA[asdm]]></category>
		<category><![CDATA[crack]]></category>
		<category><![CDATA[emulation]]></category>
		<category><![CDATA[lina]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=272</guid>
		<description><![CDATA[Un petit tuto pour patcher asaos afin de faire fonctionner ASDM en émulation. Les manipulation seront à faire sous linux. Testé avec la version 8.0.2 Pour ceux qui ne sont pas bidouilleurs, j&#8217;ai mis une version patchée de la VM citée dans un précédent post, c&#8217;est par ici: http://dl.free.fr/qQK1wuZDn Extraction de l&#8217;OS Ouvrir le fichier [...]]]></description>
			<content:encoded><![CDATA[<p>Un petit tuto pour patcher asaos afin de faire fonctionner ASDM en émulation. Les manipulation seront à faire sous linux.</p>
<p>Testé avec la version 8.0.2</p>
<p>Pour ceux qui ne sont pas bidouilleurs, j&#8217;ai mis une version patchée de la VM citée dans un précédent post, c&#8217;est par ici:</p>
<p><a href="http://dl.free.fr/qQK1wuZDn" target="_blank">http://dl.free.fr/qQK1wuZDn</a></p>
<p><span id="more-272"></span></p>
<h2>Extraction de l&#8217;OS</h2>
<p>Ouvrir le fichier bin avec un editeur hexadecimal, ou generer un dump avec la comande:</p>
<pre>#hexdump -C asa802.bin &gt; asa802.hd</pre>
<p>Chercher ensuite la chaine &laquo;&nbsp;1f 8b 08 00 1d&nbsp;&raquo; dans ce dump avec la commande:</p>
<pre>#grep "1f 8b 08 00 1d" asa802.hd</pre>
<p>On obtiens quelque chose comme ça:</p>
<pre>001228b0: 1f 8b 08 00 1d 3d 73 46 - 00 03 ec 3a 6d 54 14 57</pre>
<p>Cela veut dire que l&#8217;occurence est trouvé à l&#8217;octet 001228B0 du fichier. Cette séquence de caractère délimite le fichier avec une en tête qu&#8217;il faut enlever. Pour cela, nous allons juste prendre la taille du fichier en octet, auquel on va soustraire cette valeur, précédemment convertie en décimale (hexdump nous donne des adresses&#8230; Hexadécimales.).</p>
<p>On peut utiliser PERL pour le faire simplement. On copiera ensuite le fichier sans cette entête, en utilisant la commande tail.</p>
<pre># ls -la asa802-k8.bin
-rw-r--r--  1 ftp  wheel  14524416  9 Aug 09:25 asa802-k8.bin
# perl -e '$x=14524416-0x1228b0;print "$x\n"'
13334352
# tail -c 13334352 asa802.bin &gt; asa802.gz</pre>
<p>Ensuite on dézippes extrait l&#8217;archive avec CPIO. Je vais créer un dossier uncompressed et copier les fichiers dedans:</p>
<pre>#gzip -d asa802.gz
#mkdir uncompressed
#cd uncompressed
#sudo cpio -id --no-absolute-filenames &lt; ../asa802</pre>
<p>A partir d&#8217;ici vous avez un système de fichier linux complet, qui correspond a ASAOS (oui ça se base sur linux). Vous pouvez modifier le script rcS qui correspond au script de lancement, mais ici nous allons nous intéressé à l&#8217;executable lina qui se trouve dans asa/bin.</p>
<p>Cet exécutable est en gros le shell de asaos, c&#8217;est lui qui parse les commandes. Lorsque l&#8217;on lance ASDM, il va effectuer un show version afin de vérifier si ASDM est compatible avec le modèle de l&#8217;ASA. Etant donné que l&#8217;on émule l&#8217;ASA, le show version ne retourne rien. On va donc modifier lina afin de faire afficher le modèle que l&#8217;on souhaite. J&#8217;ai utilisé GHex, mais n&#8217;importe quel autre outil fait l&#8217;affaire.</p>
<p>Voici donc les étapes à suivre:</p>
<h3>1) Edition lina</h3>
<p>hexedit Lina et chercher la seconde occurence de &laquo;&nbsp;Hardware:&nbsp;&raquo; On trouve ceci:</p>
<pre> Hardware:   %s, %d MB RAM,</pre>
<h3>2) Trouver une chaine à modifier</h3>
<p>Trouver une chaine de caractère dans l&#8217;éxécutable plus longue et qui n&#8217;est pas utile, on la remplacera par notre chaine à nous.<br />
strings -n 30 lina<br />
3)Je vais utiliser la chaine &laquo;&nbsp;pager_main() &#8211; Unable to create the pager initialization thread&nbsp;&raquo;, donc dans GHex, je cherche &laquo;&nbsp;pager_main&nbsp;&raquo;, afin de la localiser</p>
<h3>4) Remplacer la chaine</h3>
<p>Je remplace cette chaine avec la chaine suivante, en effacant ce qui reste avec des 00 (partie hexadécimale)</p>
<pre> "Hardware:   ASA5520, 128 MB RAM, CPU Pentium II 2000 MHz"</pre>
<p>Avant:</p>
<pre>pager_main() - Unable to create the pager initialization.....thread</pre>
<p>Après:</p>
<pre>Hardware:   ASA5520, 128 MB RAM, CPU Pentium II 2000 MHz..................thread</pre>
<p>(Fill the old string with 00 hex, to not change exe structure, and don&#8217;t forget the ,).</p>
<p>Après un test, je me suis aperçu qu&#8217;il y avait un C en trop lors du show ver:</p>
<pre>Hardware:   ASA5520, 128 RAM,  CPU Pentium II 2000 MHzc</pre>
<p>Cela est du à la fonction qui est censée récupéré le nom du processeur.<br />
Si on retourne à la chaine Hardware: initiale, on remarque ceci:</p>
<pre>Hardware:   %s, %d MB RAM, .cpuid.<span style="color: #ff0000;"><strong>c</strong></span>.CPU %s .%d MHz. reg%d: 0x%x..<strong><span style="color: #ff0000;">c</span></strong>....</pre>
<p>Il y a 2 C, on les remplace par des 00 (partie Hexa), et c&#8217;est bon.</p>
<h3>5) Désassemblage</h3>
<p>J&#8217;ai désassemblé lina avec IDA Pro. Une fois l&#8217;analyse complète, cliquer dans views/open subviews, strings, et quand les chaines sont affichée, chercher (ALT+T) la chaine remplacée, qui contient le modèle de l&#8217;asa (il se peut qu&#8217;il faille sélectionner les octet, et la convertir en string depuis le menu edit). Notez ensuite les adresses dans le fichier (file offset), et l&#8217;adresse d&#8217;exécution</p>
<p>Dans mon cas j&#8217;avais:</p>
<pre>File offset:0x01280BD8
Adress:0x092C8BD8
Offset name: aHardware5515SD</pre>
<p>Chercher la chaine originale, et faire la même chose</p>
<pre>File offset:0x014AFB8F8
Adress:0x094F7BF8
Offset name:aHardware5520DM</pre>
<h3>6)Patching</h3>
<p>Faire un clique droit sur la chaine originale, et un click sur &laquo;&nbsp;jump xrefs to operand&nbsp;&raquo;, cliquez sur OK, et on doit être amené à l&#8217;offset fichier:<br />
0x01024C30<br />
Sélectionner le nom de l&#8217;offset (dans mon cas aHardware5520DM), et cliquer sur l&#8217;onglet hexview.<br />
On remarque :</p>
<pre>F8 7B 4F 09</pre>
<p>Qui correspond à 094F7BF8 (l&#8217;adresse d&#8217;éxécution de la chaine) inversé.<br />
On va donc remplacer cette adresse avec celle de notre chaine:<br />
09 2C 8B D8 (adresse nouvelle chaine) devient</p>
<pre>D8 8B 2C 09</pre>
<p>Dans notre editeur hexadecimal, aller à l&#8217;adresse 0x01024C30 et changer F8 7B 4F 09 par D8 8B 2C 09</p>
<h3>7) Repack</h3>
<p>Sauvegarder lina, assurer vous qu&#8217;il est en chmod 755, et recréer l&#8217;os comme suit:</p>
<pre>bastien@bastien-laptop:~/asaemu/asa802-k8_1/uncompressed$ find . | cpio -o -H newc &gt; ../asa802_cpio
61038 blocks
bastien@bastien-laptop:~/asaemu/asa802-k8_1/uncompressed$ cd ..
bastien@bastien-laptop:~/asaemu/asa802-k8_1$ gzip -9 asa802_cpio</pre>
<p>Et si tout est niquel, quand on boot on peut avoir ça:</p>
<pre>ciscoasa# sh ver
Cisco Adaptive Security Appliance Software Version 8.0(2)
Compiled on Fri 15-Jun-07 19:29 by builders
System image file is "Unknown, monitor mode tftp booted image"
Config file at boot was "startup-config"
ciscoasa up 3 secs
Hardware:   ASA5520, 128 RAM,  CPU Pentium II 2000 MHz</pre>
<p>Pour infos, voici ma chaine de lancement QEmu:</p>
<pre>qemu -hda ./asa802-k8_1/FLASH -m 256 -kernel ./asa802-k8_1/uncompressed/vmlinuz -initrd ./asa802-k8_1/asa802_cpio.gz \
 --no-kqemu -nographic -append "auto console=ttyS0,9600 bigphysarea=16384 ide1=noprobe" \
-net nic,vlan=1,macaddr=00:aa:00:00:02:01,model=pcnet -net tap,vlan=1,ifname=tap0</pre>
<p>Voilà, j&#8217;ai plus d&#8217;excuses pour pas bosser à fond SNAF <img src='http://bmigette.fr/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 392px; width: 1px; height: 1px;">To unpack/repack, see http://ers.msk.ru/cisco/pix7-asa8.html</p>
<p>1) hexedit Lina and find Hardware:, 2nd occurence:<br />
Hardware:   %s, %d MB RAM,<br />
2) Find a string longer than this, in the linux shell, type:<br />
strings -n 30 lina<br />
3) Search this string in the hex editor, I&#8217;ll take &laquo;&nbsp;pager_main() &#8211; Unable to create the pager initialization thread&nbsp;&raquo;, so I&#8217;m looking for &laquo;&nbsp;pager_main&nbsp;&raquo;, for example</p>
<p>4)Replace this string and end with 0s:<br />
&laquo;&nbsp;Hardware:   5515, 128 MB RAM, CPU Pentium II 2000 MHz&nbsp;&raquo;<br />
You can let the %s,%d or hard writting it, that what i&#8217;ll do because otherwise couln&#8217;t have the CPU name&#8230;<br />
Before:<br />
pager_main() &#8211; Unable to create the pager initialization&#8230;..thread<br />
After:<br />
Hardware:   ASA5520, 128 MB RAM, CPU Pentium II 2000 MHz&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;thread<br />
(Fill the old string with 00 hex, to not change exe structure, and don&#8217;t forget the ,).</p>
<p>Well, I repacked it and try, but the show ver gave me:<br />
Hardware:   5520, 128 RAM,  CPU Pentium II 2000 MHzc<br />
Notice the final C&#8230; It is due to the CPU Fetch function, so what yo uhave to do, is to go back to the original string in your hex editor:<br />
Notice the string:<br />
Hardware:   %s, %d MB RAM, .cpuid.c.CPU %s .%d MHz. reg%d: 0x%x..c&#8230;.<br />
There are two damned C(after cpuid, and at the end of the line), well, replace it with 00 hex and it&#8217;s cool.<br />
5) Disassemble lina with IDA Pro (wait the analysis to complete, long time), then click views, open subviews, string, and search(ALT+T) for the string you&#8217;ve written, with the 5515 or whatever you&#8217;ve put, and note the file offset, string address, and offset name. (you may have to select and right click and then select string to convert it to string)<br />
In my case it is:<br />
File offset:0x01280BD8<br />
Adress:0x092C8BD8<br />
Offset name: aHardware5515SD</p>
<p>then look for the original Hardware: %s, %d&#8230; string in the strings window Click on it<br />
Note same infos as above<br />
File offset:0x014AFB8F8<br />
Adress:0x094F7BF8<br />
Offset name:aHardware5520DM</p>
<p>6)Right click on the offset name and click jump to xrefs to operand and click ok. Note the file offset:<br />
0x01024C30<br />
Select aHardware5520DM and go to hex view.<br />
You&#8217;ll notice:<br />
BB F8 7B 4F 09<br />
That is 094F7BF8 reversed.<br />
Then it&#8217;s here you have to replace with your address!<br />
So 09 2C 8B D8 would become<br />
D8 8B 2C 09.<br />
Return to your hex editor, go to the file offset  0x01024C30 and write down the new address of your edited string</p>
<p>7)Save the lina executable, and repack the IOS, then launch n prey<br />
ciscoasa# sh ver</p>
<p>Cisco Adaptive Security Appliance Software Version 8.0(2)</p>
<p>Compiled on Fri 15-Jun-07 19:29 by builders<br />
System image file is &laquo;&nbsp;Unknown, monitor mode tftp booted image&nbsp;&raquo;<br />
Config file at boot was &laquo;&nbsp;startup-config&nbsp;&raquo;</p>
<p>ciscoasa up 3 secs</p>
<p>Hardware:   ASA5520, 128 RAM,  CPU Pentium II 2000 MHz</p>
<p>WHOOOHOOO</p>
<p>Let&#8217;s try ASDM</p></div>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2009/06/16/lina_cracking_for_asdm_work_on_emulatio/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>ASA Emulation part 2: VMWare image</title>
		<link>http://bmigette.fr/2008/11/30/asa-emulation-part-2/</link>
		<comments>http://bmigette.fr/2008/11/30/asa-emulation-part-2/#comments</comments>
		<pubDate>Sun, 30 Nov 2008 13:06:52 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[astuces]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Emulation/simulation routeurs/firewalls/switchs...]]></category>
		<category><![CDATA[asa]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[emulation]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=61</guid>
		<description><![CDATA[Je viens de trouver un projet proposant une image vmware basée sur damn small linux proposant de faire tourner un asa:]]></description>
			<content:encoded><![CDATA[<p>Je viens de trouver un projet proposant une image vmware basée sur damn small linux proposant de faire tourner un asa:<br />
<a href="http://asa_project.gromnet.net/?p=25" target="_blank">http://asa_project.gromnet.net/?p=25</a><br />
Le site propose aussi un live CD et un iso d&#8217;install pour l&#8217;ASA <img src='http://bmigette.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<span id="more-61"></span><br />
Cela est possible car le système asaOS est basé sur UNIX.</p>
<p>Si votre VMWare reste à booting Kernel, c&#8217;est normal, toute la sortie du boot se fait sur la console. A ce stade vous pouvez vous connecter en console/telnet.</p>
<p>Pour se connecter à l&#8217;asa: Utiliser l&#8217;ip prédéfinie de la carte e0 (192.168.1.1/24).</p>
<p>Utiliser le port console:</p>
<h1>Pour windows:</h1>
<p>Dans les propriétés de la machine virtuelle, sur le port console, mettez les paramètres suivants:</p>
<pre>“used name pipe” “\\.pipe\vmwaredebug”, “This end is client”, “The other end is an application”</pre>
<p>Téléchargez vmware gateway (http://l4ka.org/tools/vmwaregateway.php), fichier inclus dans le zip de la vm, puis lancer l&#8217;executable avec le parmètre /t (vmwaregateway.exe /t). Vous pouvez aussi utiliser start_gw.bat inclus avec l&#8217;image vmware. Vous pouvez vous connecter sur en telnet sur localhost:567 pour arriver sur le port sérial. Seul inconvénient, on ne peux avoir qu&#8217;une seule VM de lancée.<br />
Note: avec cette méthodes, lorsque je me connectes en telnet, lorsque j&#8217;appuies sur une touche, elle est envoyée deux fois&#8230;</p>
<p>Edit: Ce programme semble être meilleur, mais je n&#8217;ai pas eu le temps de tester:</p>
<p><a href="http://shvechkov.tripod.com/nptp.html" target="_blank">http://shvechkov.tripod.com/nptp.html</a></p>
<p>Edit 2:</p>
<p><a href="http://www.hw-group.com/products/hw_vsp/index_en.html">http://www.hw-group.com/products/hw_vsp/index_en.html</a></p>
<h1>Pour linux:</h1>
<p>D&#8217;après ce lien:<br />
<a href="http://communities.vmware.com/thread/28508" target="_blank">http://communities.vmware.com/thread/28508</a></p>
<p>Installation socat:</p>
<pre>sudo apt-get install socat</pre>
<p>Creation du port console</p>
<p>Dans les propriétés de la machine virtuelle, sur le port console, mettez les paramètres suivants:</p>
<pre>“used name pipe” “serialasa”, “This end is server”, “The other end is an application”</pre>
<p>Allez ensuite dans le répertoire de votre vm, et vous devriez voir le fichier asa. Tapez la commande suivante:</p>
<pre>bastien@bastien-laptop:~/asa$ ls564dd2da-cbbf-41e4-e8a7-60efe97ff754.vmem      Other Linux 2.6.x kernel.vmxf564dd2da-cbbf-41e4-e8a7-60efe97ff754.vmem.lck  Other Linux 2.6.x kernel.vmx.lckasahd.vmdk                                     <strong>serialasa</strong>asahd.vmdk.lck                                 start_gw.batOther Linux 2.6.x kernel.nvram                 vmware-0.logOther Linux 2.6.x kernel.vmdk                  vmware-1.logOther Linux 2.6.x kernel.vmsd                  vmwaregateway.exeOther Linux 2.6.x kernel.vmx                   vmware.log</pre>
<pre>sudo socat unix-connect:<strong>serialasa</strong> stdio,echo=0,raw</pre>
<p>L&#8217;avantage de cette méthode est que l&#8217;on peut nommer le fichier serial comme l&#8217;on souhaite (ici, serialasa).</p>
<p>Par contre, le process socat envoi les ctrl+c à l&#8217;asa. Pour le kill:</p>
<pre>bastien@bastien-laptop:~$ ps -ax | grep socatWarning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html <strong>9636</strong> pts/0    S+     0:00 socat unix-connect:<strong>serialasa </strong>stdio,echo=0,raw 9705 pts/1    S+     0:00 grep socatbastien@bastien-laptop:~$ sudo kill <strong>9636</strong></pre>
<p>Note: vous pouvez aussi fermer le terminal tout simplement <img src='http://bmigette.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h1>Conclusion</h1>
<p>Pour ajouter des interfaces, ajouter simplement des carte réseau dans les propriétés de la VM. Pour relier votre VM à dynagen: soit vous utiliser les carte host only, et vous reliez dynagen sur vmnet1, ou vous créez des loopback, et vous bridgez la vm et dynagen sur la même loopback (interface tap sous linux <img src='http://bmigette.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ).</p>
<p>Au final, je reconseille tout de même la méthode linux !!</p>
<p>Un petit sh ver pour vous donner envie :</p>
<pre>ciscoasa# sh verCisco Adaptive Security Appliance Software Version 8.0(2)Compiled on Fri 15-Jun-07 19:29 by buildersSystem image file is "Unknown, monitor mode tftp booted image"Config file at boot was "startup-config"ciscoasa up 11 mins 32 secsHardware:   , 128 MB RAM, CPU Pentium II 1994 MHzInternal ATA Compact Flash, 512MBBIOS Flash Firmware Hub @ 0xffe00000, 1024KB

 0: Ext: Ethernet0/0         : address is 000c.297f.f754, irq 255 1: Ext: Ethernet0/1         : address is 000c.297f.f75e, irq 255 2: Ext: Ethernet0/2         : irq 255 3: Ext: Ethernet0/3         : irq 255 4: Ext: Ethernet0/4         : irq 255 5: Ext: Ethernet0/5         : irq 255VLANs                        : 200Failover                     : Active/Active3DES-AES                     : EnabledSecurity Contexts            : 20GTP/GPRS                     : EnabledVPN Peers                    : 5000WebVPN Peers                 : 2500ADV END SEC                  : Enabled</pre>
<p>Pour sauvegarder la config, tapez ceci:</p>
<pre>copy running-config flash:/.private/startup-config</pre>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2008/11/30/asa-emulation-part-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Emulation d&#8217;ASA avec QEmu sous windows</title>
		<link>http://bmigette.fr/2008/10/14/emulation-dasa-avec-qemu-sous-windows/</link>
		<comments>http://bmigette.fr/2008/10/14/emulation-dasa-avec-qemu-sous-windows/#comments</comments>
		<pubDate>Tue, 14 Oct 2008 19:02:47 +0000</pubDate>
		<dc:creator>Bastien Migette</dc:creator>
				<category><![CDATA[astuces]]></category>
		<category><![CDATA[Divers]]></category>
		<category><![CDATA[Emulation/simulation routeurs/firewalls/switchs...]]></category>
		<category><![CDATA[asa]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[emulation]]></category>
		<category><![CDATA[QEmu]]></category>

		<guid isPermaLink="false">http://bmigette.fr/?p=51</guid>
		<description><![CDATA[Note: Je vous conseille vivement l&#8217;utilisation de l&#8217;image VMWare asa qui est beaucoup plus simple (voir http://bmigette.fr/2008/11/30/asa-emulation-part-2/) Introduction Cet article à pour but de montrer comment émuler un asa cisco avec QEmu, qui est un émulateur de CPU Divers. QEmu est prévu pour fonctionner à la base sous Unix, mais il existe un portage sous [...]]]></description>
			<content:encoded><![CDATA[<p>Note: Je vous conseille vivement l&#8217;utilisation de l&#8217;image VMWare asa qui est beaucoup plus simple (voir <a href="http://bmigette.fr/2008/11/30/asa-emulation-part-2/" target="_blank">http://bmigette.fr/2008/11/30/asa-emulation-part-2/</a><span style="font-size: small;">)</span></p>
<h3>Introduction</h3>
<p>Cet article à pour but de montrer comment émuler un asa cisco avec QEmu, qui est un émulateur de CPU Divers. QEmu est prévu pour fonctionner à la base sous Unix, mais il existe un portage sous windows:</p>
<p><span id="more-51"></span><br />
<a href="http://www.h7.dion.ne.jp/~qemu-win/" target="_blank">http://www.h7.dion.ne.jp/~qemu-win/</a></p>
<p>Vous aurez aussi besoin des outils Unixutils, qui sont un portage des outils linux les plus utilisés sous windows (grep, ls, rm&#8230;)<br />
<a href="http://sourceforge.net/projects/unxutils/" target="_blank">http://sourceforge.net/projects/unxutils/</a></p>
<p>Téléchargez et extrayiez les fichiers dans un même dossier (les binaires unixUtils doivent être avec les binaires QEmu) ou téléchargez le fichier suivant:<br />
<a href="http://bmigette.fr/files/ASAEmu.zip" target="_blank">http://bmigette.fr/files/ASAEmu.zip</a></p>
<p>Pour plus de facilitée, voilà comment je vais organiser mes dossiers:</p>
<ul>
<li>d:\asa =&gt; Le dossier contenant les scripts de lancement, et deux dossiers, un pour les images ASA, et un pour les binaires QEmu</li>
<li>d:\asa\ASAOS =&gt; Dossier contenant les images. Chaque image sera placée dans un sous dossier du même nom sans l&#8217;extension, par exemple, pour l&#8217;image de cet article, asa802-k8.bin, je vais créer un dossier d:\asa\ASAOS\asa802-k8 dans lequel je vais copier mon image asa802-k8.bin. Ceci permettras de lancer facilement différentes versions d&#8217;ASA.</li>
<li>d:\asa\QEmu =&gt; Dossier des binaires QEmu et UnixUtils.</li>
</ul>
<p>Si vous ne respectez pas cette architecture (le chemin d:\asa n&#8217;est pas important), il vous faudra modifier vos scripts.</p>
<h2>Lancement de l&#8217;émulation:</h2>
<p>Il vous faut tout d&#8217;abord vous procurer une image ASAOS. Je vais utiliser l&#8217;image asa802-k8.bin pour cet exemple.</p>
<h3>Script de création des images QEmu:</h3>
<p>Tout d&#8217;abord, créez un fichier .bat nommé qemu_img_create.bat (à placer dans le dossier d:\asa) avec dedans:</p>
<pre>@echo offECHO MD5 Cheksum.\QEmu\md5 .\ASAOS\%1\%1.bin.\QEmu\hexdump -C .\ASAOS\%1\%1.bin &gt; .\ASAOS\%1\%1.hd.\QEmu\grep "1f 8b 08 00 1d" .\ASAOS\%1\%1.hd.\QEmu\ls -la .\ASAOS\%1\%1.bin.\QEmu\tail -c 13334352 .\ASAOS\%1\%1.bin &gt; .\ASAOS\%1\%1.gz.\QEmu\gzip -d .\ASAOS\%1\%1.gzcd ASAOS\%1\..\..\QEmu\cpio -i --make-directories &lt; %1cd ..\...\QEmu\qemu-img create .\ASAOS\%1\FLASH 256M.\QEmu\gzip .\ASAOS\%1\%1</pre>
<p>Ce script à pour but de créer les images nécessaires à l&#8217;émulation de l&#8217;ASA par QEmu. Pour l&#8217;appeler, utilisez la commande:</p>
<pre>qemu_img_create.bat asa802-k8</pre>
<p>En admettant que le dossier d:\asa\asa802-k8 existe et que l&#8217;image asa802-k8.bin est bien située dedans.</p>
<p><span style="color: #ff0000;"><span style="text-decoration: underline;">NOTE: Ce script est à utiliser qu&#8217;une seule fois  ! Vous pourrez ensuite directement lancer votre ASA via le script suivant !</span></span></p>
<h3>Script de lancement de l&#8217;émulation:</h3>
<p>Créez un autre fichier .bat dans le répertoire d:\asa nommé launchasa.bat avec dedans:</p>
<pre>@echo offstart /B "Qemu" .\QEmu\qemu -L .\QEmu -hda .\ASAOS\%1\FLASH -hdachs 980,16,32 -kernel .\ASAOS\%1\vmlinuz -initrd .\ASAOS\%1\%1 -m 256 --no-kqemu -append "auto nousb ide1=noprobe bigphysarea=16384 console=ttyS0,9600n8 hda=980,16,32" -serial telnet::%2,server,nowait.\launchtelnet.bat localhost %2exit</pre>
<p>Ce script va servir à lancer l&#8217;émulation de l&#8217;asa. Pour lancer, utiliser la commande suivante:</p>
<pre>launchasa.bat asa802-k8 666</pre>
<p>Ou 666 sera le port à utiliser pour se connecter en telnet. Ceci permettras de lancer plusieurs instances.</p>
<h3>Script de lancement du client telnet:</h3>
<p>Ce script sert uniquement à lancer un client telnet autre que celui par défaut. Si vous voulez utiliser le client par défaut, mettez dedans:</p>
<pre>start telnet %1 %2</pre>
<p>Pour utiliser SecureCRT</p>
<pre>start C:\progra~1\vandyk~1\SecureCRT\SecureCRT.EXE /T /telnet %1 %2</pre>
<p>Le fichier devra s&#8217;appeler launchtelnet.bat</p>
<h3>Lancement de l&#8217;émulation:</h3>
<p>Une fois vos fichiers créés, que vous avez bien placé l&#8217;image asa802-k8.bin dans le répertoire d:\asa\ASAOS\asa802-k8, ouvrez une console dans le dossier d:\asa et tapez:</p>
<pre>D:\asa&gt;qemu_img_create.bat asa802-k8
D:\asa&gt;launchasa.bat asa802-k8 666</pre>
<p>Si tout s&#8217;est bien passé, vous devriez avoir une emulation de l&#8217;asa en cours !</p>
<div class="wp-caption alignnone" style="width: 330px"><a href="http://bmigette.fr/images/asalaunched1.jpg"><img src="http://bmigette.fr/images/asalaunched1_prev.jpg" alt="Ce que vous devriez avoir" width="320" height="235" /></a><p class="wp-caption-text">Ce que vous devriez avoir</p></div>
<p>Super! Ca marche ! Tout du moins nous avons un asa émulé, mais il est pour l&#8217;instant impossible de connecter notre asa vers dynamips ou autre&#8230;</p>
<p>Certains d&#8217;entre vous auront peut être remarqué que nous avons d&#8217;ailleurs des erreurs:</p>
<pre>Cisco Adaptive Security Appliance Software Version 8.0(2)Cannot open interface card (media_ethernet/port/id/0)pix_idb_create: Unable to get link capabilities 0pix_idb_create: Unable to get nic_stats for port 0Cannot open interface card (media_ethernet/port/id/1)pix_idb_create: Unable to get link capabilities 1pix_idb_create: Unable to get nic_stats for port 1Cannot open interface card (media_ethernet/port/id/2)pix_idb_create: Unable to get link capabilities 2pix_idb_create: Unable to get nic_stats for port 2Cannot open interface card (media_ethernet/port/id/3)pix_idb_create: Unable to get link capabilities 3pix_idb_create: Unable to get nic_stats for port 3Cannot open interface card (media_ethernet/port/id/4)pix_idb_create: Unable to get link capabilities 4pix_idb_create: Unable to get nic_stats for port 4Cannot open interface card (media_ethernet/port/id/5)pix_idb_create: Unable to get link capabilities 5pix_idb_create: Unable to get nic_stats for port 5</pre>
<p>Bien, voyons comment nous allons ajouter des interfaces à notre ASA.</p>
<h2>Emulation d&#8217;interfaces:</h2>
<h3>Interfaces UDP (pour dynagen/mips):</h3>
<p>QEmu permet l&#8217;utilisation de tunnels UDP comme interfaces. Il y a un port source, et un port destination, que vous devrez choisirs. Dynamips permet la même chose, il faudra que le port source de dynamips soit le port de destination de QEmu, et vice versa. Voici les syntaxe:</p>
<p>Sous windows, vous aurez besoin de ce fichier:</p>
<p><a href="http://bmigette.fr/files/newqemu_win.rar" target="_blank">http://bmigette.fr/files/newqemu_win.rar</a></p>
<p>Merci à l&#8217;auteur:</p>
<p><a href="http://7200emu.hacki.at/viewtopic.php?t=4088" target="_blank">http://7200emu.hacki.at/viewtopic.php?t=4088</a></p>
<p>extrayez les fichiers, puis renommez qemu.exe en qemuudp.exe, puis copiez les fichiers qemuudp.exe, msys-1.0.dll et msys-z.dll dans votre répertoire QEmu</p>
<pre>#QEmu -net nic,vlan=1,macaddr=00:aa:00:00:02:01,model=i82559er -net udp,vlan=1,sport=10000,dport=10001,daddr=127.0.0.1#Dynagen:[[router R0]]f0/0=NIO_udp:10001:127.0.0.1:10000</pre>
<p>On voit ici que dynagen utilise le port 10001 comme port source, et le port 10000 comme port de destination, et vice versa pour QEmu.</p>
<p>Voici le script modifié de lancement de l&#8217;asa pour le support des interfaces (nous l&#8217;appeleront launchasanic.bat):</p>
<pre>@echo offstart /B "Qemu" .\QEmu\qemuudp -L .\QEmu -hda .\ASAOS\%1\FLASH -hdachs 980,16,32 -kernel .\ASAOS\%1\vmlinuz -initrd .\ASAOS\%1\%1<span style="text-decoration: underline;"><strong><span style="color: #ff0000;">.gz</span></strong></span> -m 256 --no-kqemu -append "auto nousb ide1=noprobe bigphysarea=16384 console=ttyS0,9600n8 hda=980,16,32" -net nic,vlan=1,macaddr=00:aa:00:00:02:01,model=i82559er -net udp,vlan=1,sport=10000,dport=10001,daddr=127.0.0.1-netnic,vlan=2,macaddr=00:aa:00:00:02:02,model=i82559er -net udp,vlan=2,sport=10002,dport=10003,daddr=127.0.0.1 -serial telnet::%2,server,nowait.\launchtelnet.bat localhost %2</pre>
<p>Vous pouvez bien entendu ajouter plus d&#8217;interfaces&#8230; Veillez à modifier les mac et les vlans, ainsi que les ports udp</p>
<p>Exemple:</p>
<p>Topologie dynagen:</p>
<pre>ghostios   = Truesparsemem  = True

[localhost]    [[2620]]        image = ..\images\C2600-I-.BIN        ram = 32        idlepc=0x803ae3b4

    [[ROUTER R1]]        model = 2620        f0/0=NIO_udp:10001:127.0.0.1:10000 #interface 1 de l'asa

    [[ROUTER R2]]        model = 2620        f0/0=NIO_udp:10003:127.0.0.1:10002 #interface 2 de l'asa</pre>
<p>Pour lancer l&#8217;émulation:</p>
<pre>./launchasanic.bat asa802-k8 666</pre>
<h3>Interfaces pcap (pour relier votre asa vers une carte réseau):</h3>
<p>Téléchargez la version de QEmu supportant les interfaces PCAP, puis copiez qemupcap.exe dans le répertoire QEmu (voir les liens, ou télécharger l&#8217;archive en début d&#8217;article).</p>
<p>Voici à quoi devrait ressembler votre lanceur (launchasapcap.bat):</p>
<pre>@echo offstart /B "Qemu" .\QEmu\qemupcap -L .\QEmu -hda .\ASAOS\%1\FLASH -hdachs 980,16,32 -kernel .\ASAOS\%1\vmlinuz -initrd .\ASAOS\%1\%1<strong><span style="text-decoration: underline;"><span style="color: #ff0000;">.gz</span></span></strong> -m 256 --no-kqemu -append "auto nousb ide1=noprobe bigphysarea=16384 console=ttyS0,9600n8 hda=980,16,32" -net nic,vlan=0,model=pcnet,macaddr=00:aa:00:00:01:01 -net pcap,vlan=0,ifname=\Device\NPF_{A1712F16-98C7-4ADF-ABD6-E50EFA287BB3} -serial telnet::%2,server,nowait.\launchtelnet.bat localhost %2</pre>
<p>Pour le lancer, comme pour les autres:</p>
<pre>./launchasapcap.bat asa802-k8 666</pre>
<p>Il est évident que l&#8217;identifiant pcap de votre carte réseau changera, il faudra donc remplacer la valeur suivante:</p>
<pre>ifname=\Device\NPF_{A1712F16-98C7-4ADF-ABD6-E50EFA287BB3}</pre>
<p>Pour avoir la liste de vos identifiants pcap de vos différentes cartes réseau, installez dynagen, puis lancez le racourcis network devices list.</p>
<p>Un exemple de topologie dynagen reliée sur une interface:</p>
<pre>ghostios   = Truesparsemem  = True

[localhost]

    [[2620]]           image = ..\images\C2600-I-.BIN        ram = 32        idlepc=0x803ae3b4

    [[ROUTER R1]]        model = 2620        f0/0=NIO_gen_eth:\Device\NPF_{A1712F16-98C7-4ADF-ABD6-E50EFA287BB3} #loop0</pre>
<p>Cela peut permettre par exemple de relier dynagen et qemu sur une interface loopback si vous ne voulez pas utiliser de tunnels udp, ou alors de relier une des extrêmité vers une carte physique afin de sortir vers un réseau physique&#8230;</p>
<h2>Liens:</h2>
<p><a href="http://7200emu.hacki.at/viewtopic.php?t=4936" target="_blank">http://7200emu.hacki.at/viewtopic.php?t=4936</a></p>
<p><a href="http://7200emu.hacki.at/viewtopic.php?t=4088" target="_blank">http://7200emu.hacki.at/viewtopic.php?t=4088</a></p>
<p><a href="http://7200emu.hacki.at/viewtopic.php?t=4936&amp;postdays=0&amp;postorder=asc&amp;start=15#19505" target="_blank">http://7200emu.hacki.at/viewtopic.php?t=4936&amp;postdays=0&amp;postorder=asc&amp;start=15#19505</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bmigette.fr/2008/10/14/emulation-dasa-avec-qemu-sous-windows/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

