Détourner la mise à jour logicielle de Mac OS X
Jean-Edouard a trouvé comment détourner la mise à jour logicielle de Mac OS X.
Cela rendra de grands services aux administrateurs de parcs qui auront ainsi la maîtrise des mises à jour.Il leur sera par exemple possible de faire à distance des mise à jours non Apple sans logiciels spécifiques.
Voici la méthode:
Voici donc la marche a suivre:
il faut commencer par lancer le terminal (dans le dossier Utilities du dossier Applications) et passer en root Grâce a la commande 'su' (il faut avoir activer le compte root dans netinfo...)
taper donc:
ifconfig en0 inet swquery.apple.com netmask 0xffffffff alias
cela fait croire à votre mac, que le serveur de mise à jour d’Apple est votre machine
ensuite dans TextEdit mettez cela:
#!/usr/bin/perl -w
use IO::Socket;
use Net::hostent;
$server = IO::Socket::INET->new( Proto => 'tcp',
LocalPort => '80',
Listen => SOMAXCONN,
Reuse => 1);
die "can't setup server" unless $server;
print "<<<Server $0 listening on port 80>>>\n";
while ($client = $server->accept()) {
while (<$client>) {
#print $_;
if ($_ =~ /<\/UPDATE>/) {
print $client "<DOCUMENT>
<RESULT>
<NAME>Jeb\@jeb.com.fr test (with restart)</NAME>
<VERSION>0.1d</VERSION>
<SIZE>4240000</SIZE>
<FOLDER>flnt</FOLDER>
<URL>http://a1008.g.akamai.net/5/1008/3093/1/1a1a1a88ff63d249b72392f35785e65
6c63297c52897043397067deb57c6278bfe2d82d504346a9bc8f8285a8fbe3665b3e6368fc50
c569e158df33a9ce02d9ccc248ae3/AirPort.pkg.tar</URL>
<RESTARTREQ/>
<DESCRIPTION><![CDATA[
<HEAD>
<meta http-equiv=\"content-type\" content=\"text/html;charset=utf-8\"/>
</HEAD>
<BODY TEXT=#FF9933>
<FONT FACE=\"Geneva\">
<h1><center>Boo</center></h1>
<p>Coucou</p>
</FONT>
<a href=\"http://www.jeb.com.fr\"><img
src=\"http://192.168.0.3/home/logo-jeb-small.gif\" border=\"0\"
alt=\"logo\"></a>
</BODY>
<!--]]>
</DESCRIPTION>
</RESULT>
<RESULT>
<NAME>is it not fun ? (without restart)</NAME>
<VERSION>80.0.1d8f5</VERSION>
<SIZE>68450000000</SIZE>
<FOLDER>flnt</FOLDER>
<URL>http://a1008.g.akamai.net/5/1008/3093/1/1a1a1a88ff63d249b72392f35785e65
6c63297c52897043397067deb57c6278bfe2d82d504346a9bc8f8285a8fbe3665b</URL>
<DESCRIPTION><![CDATA[
<HEAD>
<meta http-equiv=\"content-type\" content=\"text/html;charset=utf-8\"/>
</HEAD>
<BODY>
<FONT FACE=\"Geneva\" COLOR=#FF0000>
<h1><center>Look what can be done here</center></h1></FONT>
<FONT FACE=\"arial\" COLOR=#008040><p>Do you like green ?</p>
</FONT>
<TABLE width=100%>
<TR><TD rowspan=3><img
src=\"http://a772.g.akamai.net/7/772/51/8e862c41c9e3dd/www.apple.com/powerma
c/images/index_top01222002.jpg\" border=\"0\" alt=\"logo\"></TD><TD><u>This
is an html table !!!<u></TD></TR>
<TR><TD><b>And to display the image (from apple web site) i use a rowspan
inside my table :)</td></TR>
<TR><TD><FONT FACE=\"Comic Sans MS\">You can contact me at: <a
href=mailto:jeb\@jeb.com.fr>Jeb\@Jeb.com.fr</a></FONT></TD></TR>
</TABLE><hr><br>
<p align=right><img
src=http://a772.g.akamai.net/7/772/51/c061a75cd0f776/www.apple.com/about/web
badges/images/poweredbydarwin_lrg.gif alt=poweredby></p>
</BODY>
<!--]]>
</DESCRIPTION>
</RESULT>
</DOCUMENT>";
close($client);
}
}
}
il faut mettre le fichier au format texte si ne l'est pas déjà:
Menu Format -> convertir au format texte (si il y a convertir au format rtf
c'est que le fichier est déjà en format texte)
enregistrer le fichier dans votre dossier utilisateur.
retournez dans le terminal, si vous avez enregistrer le fichier dans votre repertoire document tapez cd Documents
après tapez perl <nom du fichier enregistré> (sans les <> bien sur)
si vous voyez "can't setup server at nom_du_fichier line 11." c'est sûrement
que vous avez le partage web actif, tapez apachectl stop pour le désactivé
ou passez par les préférence système, retapez alors perl <nom du fichier>
vous devriez voir:
<<<Server nom_du_fichier listening on port 80>>>
vous pouvez alors vous rendre dans les préférence système et faire une mise a
jour pour admirer le résultat
pour remettre votre ordinateur dans l’état prétendent 2 choix:
- rebooter
- ou taper cela en root:
crtl-C pour couper le script perl
ifconfig en0 delete 204.179.120.93
vous verrez ifconfig: ioctl (SIOCAIFADDR): Invalid argument c'est "normal"
relancer le partage de fichier si vous l'avez précédemment désactivé (apachectl start ou via les préférence système)
Vous pouvez retrouver le résultat ici:
http://netbsd.jeb.com.fr/images/Mac%20OS%20X/softupdate.jpg
Et me posez vos questions par là : "[email protected]"