Enrich your knowledge
Tera-Magazine N° 05 | 25 Novembre 2012
SHODAN
le google des hackers P 37
La Méthode
EBIOS Jmaghreb 1.0
P 23
Pensez en Assembleur Partie 1
Notre revue Tera-magazine a atteint le seuil de 4000 téléchargements.
P29
P 23
À la découverte du WPF P 59
Discussion autour du Business intelligence. P 55
>>
www.teramagazine.tk
Devenir un sysadmin Partie 2
Merci pour votre intérêt :)
P 45
Configuration réseau
How TO?
1
Tera-Magazine
Numéro 5 |Novembre 2012
tc h z u P7 n s 5 wi
Création d'un câble USB-OTG P 70
G ag ne
Tera-Labo:
La Norme ISO27001
24
Utilisez votre mobile avec une souris P 67
www.Teramagazine.tk
Tera-Magazine
Numéro 25 |Novembre 2012
2
Teramagazine : Numéro 5
SOMMAIRE
Welcome to issue Five
BI
Actualité informatique
6
Google Trend
13
Short URL
17
Pensez en assembleur
29
Shodan
37
Business intelligence
55
INTRO* EMAIL: tera.revue@gmail.com
Website: www.Teramagazine.tk
T
era-magazine est la première revue numérique, mensuelle qui s’adresse aux passionnés du monde informatique au Maroc. Il s’agit d’une initiative bénévole pour créer un moyen de partage des connaissances et des expériences entre informaticiens. Loin des slogans de marketing ou des pubs, nous vous assurons que nous tendons nos mains vers vous pour collaborer et allez en avant pour mettre en disposition du lecteur un produit de qualité. Alors, n’hésitez surtout pas, chers lecteurs à nous contacter pour vous exprimer. Enfin, nous comptons bien sûr votre réactivité pour améliorer le contenu offert. L’équipe de rédaction
facebook.com/tera.revue
@ terarevue
Devenir un sysadmin
45
ISO27001 & EBIOS
23 L’équipe Tera Magazine
WPF
59
Saber Hanor BELLAJ BADR SOULAMI RABIE
Atelier Android
ANSAR ASMAE Mustapha daoui IMADE Ranji Nahass Touria ILYAS BAGUI
67
Contact Mail : tera.revue@gmail.com Facebook :facebook.com/tera.maga Twitter :@terarevue
MAGAZINE DESIGNER: Jaffar ikhessa.
3
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
4
L’actualité Informatique
TeraMagazine
5
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
6
Actualités informatique
Du nouveau chez Facebook : réponse aux commentaires et notifications sonores
ouvre ses DataCenters au public.
Actualités informatique
L’Actualité
L’Actualité
>> Facebook est en cours de tester deux nouvelles fonctionnalités.
Répondre aux commentaires Réception un signal sonore à chaque ’une des points forts de Facebook c’est de pouLvoir tout commenter et d’interagir avec ces amis, nouvelle notificac’est bien amusant. F acebook veut aller plus loin il planifie de permettre aux utilisateurs de Répondre tion aux commentaires en créant une sorte de flux de commentaires imbriqués, comme le permet YouTube par exemple. Actuellement sur Facebook, les utilisateurs ont la possibilité de répondre à un statut et bien entendu, de répondre à un commentaire, en citant le nom de la personne par exemple. Cette fonctionnalité peut bien être utile pour les objets qui ont un grand nombre de commentaires, car il sera plus simple de répondre directement à une personne, sans s’embrouiller avec le reste.
7
Tera-Magazine
Numéro 5 |Novembre 2012
F
acebook pense que l’indication visuelle d’un petit nombre rouge dans le coin en haut à gauche peut ne pas être suffisante et il a donc décidé de tester une nouvelle fonctionnalité qui garantit de ne jamais manquer une autre notification. Une bonne nouvelle ou un dérangement de plus à vous de juger.
www.Teramagazine.tk
U
ne exposition de force ou une publicité de sa stratégie d’utilisation d’énergie renouvelable, Google ouvre ses DataCenters au grand public et met en place une interface web pour mieux connaître ses 8 Datacentres. Il propose Une visite virtuelle guidée à travers des photos et des Vidéos. Google ne s'arrête pas ici car il propose des visites libres à l’aide l’outil streetViewpour faire votre tour sans guide. Un vrai centre de science fiction. https://www.google.fr/about/datacenters/inside/streetview/
Tera-Magazine
Numéro 5 |Novembre 2012
8
G
mail sort un nouveau tour de son sac. Il propose une nouvelle manière pour rédiger un E-mail. Vous n’aurez plus besoin de passer en mode rédaction qui vous cache l’interface de réception, car désormais cette opération se fera au sein même d’une boîte de dialogue comme le chat Gmail.
La fin pour MSN MSN disparaît pour fusionner avec Skype
A
Le nouvel environnement vous fera gagner du temps au cas où vous aurez besoin de consulter votre boite en même temps que rédiger votre mail. L’utilité peut se sentir si vous écrivez un e-mail dans lequel vous avez dû référencer quelque chose d’un autre message ou si vous voulez rédiger plusieurs messages simultanément.
près les rumeurs, Microsoft a confirmé le 6 novembre qu'il mettrait fin en 2013 à son service de messagerie Windows Live Messenger. Celui-ci sera être intégré au service Skype. "Nous allons arrêter Messenger dans tous les pays du monde au premier trimestre 2013 (à l'exception de la Chine continentale, où Messenger restera disponible)", a annoncé Tony Bates, responsable de la division Skype chez Microsoft. Microsoft affirme que le client de messagerie instantanée, Windows Live Messenger, prendrait bien sa retraite après 13 ans de service ! Tous les utilisateurs de Messenger seront bien redirigés vers Skype, dans le but que Microsoft unisse ses deux clients de messagerie au sein d’une même entité.
Debian 7 Décision prise ça sera Gnome.
D
ebian la distribution linux populaire dans le monde opensource, revient finalement à GNOME pour son environnement par défaut pour Debian 7.0, appelée Wheezy, qui est prévue pour début 2013. Les développeurs de Debian ont tranché, ils ont finalement confirmé que Xfce ne sera finalement pas utilisé en tant qu’environnement de bureau par défaut. La distribution revient donc vers GNOME. Une décision ‘sans explication’ surtout que la même équipe a prévu l’utilisation de XFCE à cause du poids de GNOME qui augmente. Le petit rongeur (XFCE) doit chercher d’autre abri.
www.google.com/takeout
Google takoute intègre youtube D
ésormais vous pouvez exporter en plus de vos données gmail, G+, google drive, etc. Vos vidéos youtube. Lors du choix des données à compresser et à exporter vous allez remarquer la nouvelle option youtube. 9
Actualités informatique
Actualités informatique
Simplifie la Rédaction des Emails
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Google Analytics arrive enfin sur Android
v
oilà une nouvelle qui va plair aux possesseurs des sites Web et bien entendu de tous les blogueurs. vous allez désormais pouvoir suivre les statistiques de votre site, blog depuis votre mobile Android. Google présente enfin l’application Google Analytics pour les téléphones Android . Nous aurons plus besoin de consulter google analytique par browser sur mobile. Voilà de quoi satisfaire tous vos besoins ! En revanche, aucun signe pour une version iOS… Vous pouvez retrouver et télécharger l’application Google Analytics sur le Google Play Store (lien). Tera-Magazine
Numéro 5 |Novembre 2012
10
L
es sites qui recopient sans autorisation le contenu de notre revue sont priés de mentionner la source et de faire référence à notre site web www.teramagazine.tk. La rédaction et la préparation du contenu prend beaucoup de temps libre de notre équipe respecter donc cet effort :).
Les avis et les demandes des lecteurs ..
Mail Box
Mail Box
MailBox
©
N
Y
a-t-i une version imprimée de cette revue? ≥Pour le moment non, seulement la version numérique est disponible.
J
’aime beaucoup votre revue et je la lis en entier une fois apparue. J’aimerais que vous réaliser des vidéos de tutoriels ou des interviews sur votre chaîne youtube. ≥Nous vous remercions pour votre excellente idée. Nous pensons à ce sujet, mais Pour faire un travail de qualité nous cherchons des compétences en édition des vidéos (Sonyvegas..).
J
’ai lu avec grand intérêt le code de l’applet Java, je veux savoir comment désactiver le système de management sécurité de la machine virtuelle. ≥Vous pouvez contacter l’auteur sur aker.white@ gmail.com e vous félicite pour votre travail et je vou-
J
11
Tera-Magazine
Numéro 5 |Novembre 2012
drais attirer votre attention que des fois il existe des erreurs de frappes ou d’orthographes. ≥En effet, on essaie notre maximum pour les éviter; faute du manque de temps et l'absence d’un chargé de la vérification et la correction du contenu. Nous allons faire une révision générale des numéros précédents, car nous voulons que notre revue représente un document informatique de référence. Dans ce sens si vous localisez une erreur, quel que soit son genre, veuillez nous alerter d’urgence.
J
e serai bien intéressé par un dossier sur JBOSS et sa dernière version. ≥Votre proposition est notée.
L
'article devenir sysadmin a tout particulièrement attiré mon atention car je veux bien avoir une carrière dans ce domaine, je signale que je suis un étudiant en dernière année sécu de system. Puis-je avoir le contact de l’auteur? Bien sur, vous pouvez le contacter sur : tera.revue@gmail.com
Je
viens de découvrir votre revue, j'apprécie beaucoup vos efforts. Je veux bien rédiger des articles pour votre compte. Je vous demande si c’est rémunéré ou non?
C
’est la première fois que je tombe sur une revue marocaine assez intéressante surtout que j’ai l’habitude de lire celles de l'étranger(USA). Je suis un expert réseau, je suis à votre disposition pour bien booster votre revue. ≥Merci bien pour votre proposition, nous vous souhaitons la bienvenue parmi nous. Si vous avez des propositions, n'hésitez pas à nous les suggérer.
J
'ai installé le whatsapp, mais je ne trouve personne avec qui parle ≥Vos contacts doivent l'utiliser pour qu'ils apparaissent parmi vos contacts whatsapp.
A
vez-vous un groupe gmail pour votre communauté? ≥Pour l’instant, non
ous remercions nos lecteurs pour leurs encouragements et pour leurs reproches. Pour participer au MailBox envoyer votre mail à tera. revue@gmail.com ou laissez un message sur notre site web : www.teramagazine.tk Nous sommes heureux d'accueillir vos avis, vos propositions de sujets. ▶Envoyer votre Mail avec le tag «mailBox» NB : Nous ne partageons pas tous les mail reçus, mais seulement les mails que nous jugeons utiles pour les autres lecteurs.
Pour publier vos articles sur Notre revue veuillez nous envoyer vos participations par Email à : tera.revue@gmail.com
≥Vous êtes la bienvenu, notre revue est grande ouverte devant les participations de ces lecteurs sauf que c’est non rémunéré.
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
12
Présentation globale
Trends
SEO( search engine optimization )
Explorer
⌬Explorez les tendances de la Recherche Google avec Google Tendances des recherches. Depuis 2004
SEO
A partir de la page d’accueil de Google Trends il est possible de faire une recherche sur n’importe quel mot clé. Il faut tout de même prendre conscience que cet outil est malheureusement anglais et que par conséquent les mots clés français sont moins présents. Par conséquent certains mots ne sont même pas présents dans l’index. Lorsqu’une recherche est effectuée, le résultat est présenté sous forme graphique. En ordonné on retrouve la popularité du mot clé tandis qu’en abscisse il y a l’échelle de temps. Autrement dit le graphique permet littéralement de connaître la popularité des mots clés en fonction du temps. Ce qui est important c’est de savoir que les données remontent au maximum à début 2004. En outre, plusieurs mots peuvent être recherchés, s'ils sont séparés par une virgule dans la recherche alors le graphique présentera autant de courbe qu’il y a de mots clés à étudier. Cela permet donc de faire facilement une comparaison des mots les plus populaires et gagner du temps de recherche.
L' intérêt des statistiques de google trends Les statistiques de google trends
P
Hot Trends (mots clés souvent recherchés) Les mots clés les plus souvent recherchés sur Google sont mis à jour pratiquement toutes les heures. C’est ainsi que Google Trends peut faire une liste des mots clés qui font une grande progression dans les recherches. Pour cette liste de 100 mots clés populaires, l’outil de Google ignore les mots qui sont déjà populaires pour éviter que cette liste reste statique (car c’est souvent les mêmes mots qui restent populaires). Vous pouvez consulter cette liste des mots clés populaires régulièrement pour voir s'il y a de grands changements. Certains mots présents sur cette liste révèlent
our les spécialistes du monde du référencement ou les webmaster, connaître les termes clés recherchés sur Google est considéré comme une nécessité pour avoir un bon classement (ranking) Google et par conséquent augmenter le trafique vers son site web.
Google Trends est un outil issu de Google Labs permettant de connaître la fréquence à laquelle un terme a été tapé dans le moteur de recherche Google, avec la possibilité de visualiser ces données par région et par langue. L’outil permet en outre de comparer la fréquence de plusieurs termes (fig.1). Une des fonctionnalités de Google Trends est la présentation d’articles d’actualités associés directement aux pics de popularité du mot clé.
13
google trends savoir les bons moments de l’année à choisir pour commencer à faire des annonces ou des publicités. Exemple : pour un site de petites annonces pour des stages par exemple sera intéressé par la recherche de«stage» sur Google Trends: en analysant les résultats on peut voir quand la demande pour les stages s’intensifie et par conséquent on peut savoir quand cibler les chercheurs de stages.
Technologie du Web
Technologie du Web
Présentation de Google Trends
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
peuvent être très pratiques pour les référenceurs et les spécialistes SEO ainsi que pour les sociétés qui peuvent se baser sur ces données pour bâtir leurs stratégies de marketing. En effet on peut à l'aide de
inévitablement l’actualité du moment.
Tera-Magazine
Numéro 5 |Novembre 2012
14
Technologie du Web
Prévision : Google trends vous offre des prévisions pour l'évolution de la recherche du terme choisie. Dans cet exemple j'utilise le terme "Maroc" pour voir les statistiques de re-
cherches sur google et leurs évolutions future (2013).
Vous avez un problème dans votre projet?
Fig.2 : Tendances des recherches pour le mot 'Maroc'
TeraMagazine vous accompagne pour dépasser les obstacles.
Fig.3: prévision pour la recherche du mot Maroc sur google pour l'an 2013.
Conclusion Le service google trends proposé par Google est sans doute très intéressant et mérite d’être exploité pour en extraire des informations très précieuses. À l’aide de celles-ci vous allez pouvoir déterminer les bons mots clés pour votre site et même connaître les mots clés de vos concurrents (si vous souhaitez leur voler des idées de mots clés). Bon référencement à tous.
15
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
16
Utilité et Danger!! Par : Imad dhbaoui
L
Cet article est le résultat de mes réflexions à propos des URL courts et une présentation de quelques exemples des dangers potentiels de ce type d’URL.
RÉDUISONS UN URL !!
Un proverbe arabe dis que les meilleurs discours sont les plus concis, l’équivalent numérique serait bien un URL de type bit.ly/123 Domaine :sécurité web Niveau : intermédiaire pré-requis: HTTP,XSRF
Il vous arrive des fois de vouloir partager de long URL de la forme : www.un_stie.com/index ?xyz qui n’as rien d’attirant ni de mémorable. Pour faire des tweets c’est encore pire, vu qu’un tweet ne dépasse pas 140 lettres et donc un url court vous laisse alaise pour tweeter. Dans les deux cas on court vers des Raccourcisseurs d’URL tels que : • • • •
Problèmes et défauts?? La réduction d’URL a beaucoup de défauts intrinsèques de conception. Une partie du blâme va au standard HTTP, qui a besoin d’une révision sérieuse (SPEDY peut faire l’affaire comme il a été présenté dans le numéro du mois de mai de TeraMag.). Le reste du blâme tombe sur la conception de nombreux services de raccourcissement d’URL. Les raccourcisseurs d’URL sont nés de la nécessité, comme beaucoup d’autres inventions. Cependant, ils ont été mis en œuvre à la hâte. Les fournisseurs du raccourcissement d’URL se sont multipliés après avoir vu le succès de ce service, dont certains sont un peu strict vis-à-vis de ce qu’ils vont permettre d’être raccourcie, cependant une grande ma jorité ne
“
“
RACOURCISSEMENT D’URL
a réduction d’URL est une technique utilisée sur Internet qui permet de rendre une page accessible par l’intermédiaire d’un très court URL comme bit.ly/tera. Cette technique a démarrée en tant qu’un outil esthétique pour devenir au cours des dernières années carrément une nécessité avec l’évolution des réseaux sociaux, particulièrement Twitter. D'un point de vue de sécurité informatique, les utilisateurs font de plus en plus confiance à ces URL court qui cachent parfois derrière leurs aspects de simplicité un danger potentiel, pourtant personne ne semble être dérangé. Je rappelle que Le sigle URL(en anglais Uniform Ressource Locator) auquel se substitue informellement le terme 'adresse web' pour désigner une chaîne de caractères utilisée pour adresser les ressources sur web.
Short URL
Short URL
Short URL
URL désigne une chaîne de caractères utilisée pour adresser les ressources sur web.
se soucient tout simplement pas de telles restrictions.
⌬Fonctionnement
Tout d’abord, nous allons voir comment les raccourcisseurs d’URL fonctionnent. Ils sont basés sur les redirections http précisément sur les réponses http 301 et 302 qui sont respectivement les codes de "ressource en permanence Redirigé" et
"ressources Temporairement Redirigé ". Lorsqu’un navigateur reçoit une réponse HTTP 301 ou 302, il cherche le champ
http://bit.ly http://tinyurl.com http://is.gd http://goo.gl ( enregistre le nombre de cliques sur votre lien) Fig.1: Exemple d'une réponse HTTP
17
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
18
"Location". La figure 1 montre un exemple de la réponse HTTP 301/302 . L’entête de la réponse "Location" contient un URI vers lequel le navigateur doit être redirigé. Le navigateur charge automatiquement le nouvel URI et envoie une requête http vers ce dernier.
ment d’URL tels que hugeurl.com, pour élargir les URLs plus concis. Je suis sûr que le créateur de hugeurl.com l’a fait uniquement pour l’humour, mais hugeurl.com sert une valeur inestimable
Gardez à l’esprit que les redirections HTTP ont été imaginées pendant un temps ou il fallait avoir son propre serveur Web pour avoir des réponses HTTP 301 et 302 c-a-d si vous vouliez tromper quelqu’un par redirection, vous deviez lancer votre propre serveur web!!. Dans la fin des années 90, cela signifiait de se payer un serveur hébergé qui vous permet de configurer le serveur HTTP comme vous voulais, à l’aide des droits d’administrateur sur le serveur http ( Apache). Aujourd’hui, les choses ont beaucoup changé vous pouvez obtenir des redirections http 301 et 302 gratuitement et aisément.
Fig.4: Réponse de Firefox en cas de boucle HTTP
doiop.com/tera1234”. Après, on crée en utilisant doiop.com un court url à cet URL généré par hugurl, en choisissant tera1234 comme alias pour obtenir doiop.com/tera1234. La boucle étant mise en place on essaie de naviguer à doiop.com/tera1234. Le navigateur échoue d’atteindre sa cible .Figure 4 montre ce qui arrive au navigateur.
☢Utilisation pour des attaques XSRF
Les attaques de type Cross-Site Request Forgery (abrégé CSRF et prononcé seasurfing ou parfois XSRF) utilisent l’utilisateur comme déclencheur (Envoie des requêtes HTTP à l’insu de l’utilisateur qui est dupé pour déclencher ces actions), celui-ci devient complice sans en être conscient. L’attaque étant actionnée par l’utilisateur, un grand nombre de systèmes d’authentification sont contournés.
Danger des URL courts
♺Une boucle de Redirection Il est très facile d’envoyer votre navigateur en boucles de redirection à l’aide de ces raccourcisseurs d’ULR. Le scénario est simple. On crée un ULR B qui dirige vers un url A qui à son tour redirige vers l’URL B. Pour réussir cette opération de redirection en boucle nous aurons besoin de : • Raccourcisseur qui permet à l’utilisateur de donner des noms uniques et des mots clés pour les URL raccourcies. Je cite deux des plus connus : tinyurl.com et doiop.com. Ils permettent de donner des alias personnalisés aux URL raccourcies. • Des fournisseurs de service d’allonge19
Tera-Magazine
Numéro 5 |Novembre 2012
“
“
Examinons quelques scénarios d’abus en utilisant les raccourcis d’URL. • Phishing • Chargement de malware • Attaques XSS • Autres Je présente dans la suite de cet article deux exemples moins connus.
Gardez à l’esprit que les redirections HTTP ont été imaginées pendant un temps ou il fallait avoir son propre serveur Web pour avoir des réponses HTTP 301 et 302
pour cacher ses intentions maléfiques. Nous commençons avec hugeurl.com pour générer un long URL pour “http:// doiop.com/tera1234”. Figure 2, montre le URL fait par hugeurl.com pour “http://
www.Teramagazine.tk
posons que nous ciblons un routeur ADSL non protégé ayant pour ip l'adresse par défaut 192.168.1.1. la plupart de ces routeurs à domicile ont des mots de passe par défaut (Menara/Menara ou admin / admin etc ). ces routeurs ont des interfaces web pour une configuration aisée et simplifiée. Dans la plupart des cas, un URL unique est tout ce qu’il faut pour faire des opération de configuration par exemple changer le serveur DNS de ces routeurs. Considérons L'URL suivant:
en fournissant le mot de passe et le nom d’utilisateur pour l’interface de configuration Web et à changer la configuration des serveurs DNS à 9.9.9.9 et 6.6.6.6 respectivement. Un tel URL est clairement suspect, pour piéger les victimes il vaut mieux utiliser un 'short' url comme http://tinyurl.com/teramag ce lien peut être envoyé clairement à la victime ou utilisé au sein d’une page web par exemple dans une balise image Par exemple:
Short URL
Short URL
Short URL
<img src=”http://tinyurl.com/teramag” width=1 height=1> Cette balise déclenchera le chargement du url qui à son tour mène le navigateur au lien malicieux qui provoquera le changement du DNS au niveau du routeur ADSL et vous pouvez imaginez la suite ..
PROTECTION : Il existe de nombreux moyens pour se protéger contre les dangers camouflés (phishing,virus,malware ...) par les URL raccourcis. Le but serait de connaître la vraie destination de ces liens sans les essayer dans son navigateur. Nous vous proposons quelques solutions en ligne telles que : • http://www.longurlplease.com • http://longurl.org Il existe aussi l’extension "long URL please" pour Firefox , chrome. Ces outils vous font connaître la vraie destination de votre court URL et par conséquent éviter de tomber dans le piège.
http://Menara:Menara@192.168.1.1/config. cgi?dns1=9.9.9.9&dns2=6.6.6.6 Il s’agit d’un URL piégé. Le Déclenchement de cet URL peut amener le navigateur à s’authentifier automatiquement Tera-Magazine
Numéro 5 |Novembre 2012
20
e scanner AVG Link Drop Zone vous permet de vérifier la sécurité des pages Web individuelles que vous apprêtez à visiter. Vous avez peut-être reçu sur un lien suspect dans un E-mail il suffit de copier l’URL (adresse de la page web) dans AVG link qui examinera la page Web pour voir si elle cache des téléchargements suspects. http://www.avg.com.au/resources/ web-page-scanner/
En ligne P
our le soucieux de leur sécurité informatique, nous présentons dans cet article une panoplie d’outils de scan en ligne qui peuvent vous protéger contre les menaces qui envahissent le monde informatique. Comme c’est la tendance actuelle, différents acteurs dans le domaine de la protection informatique proposent des services en ligne pour tester les pages web ou les fichiers suspects. Profitons-nous!
Norton web safe
N
orton Safe Web est un service de Symantec. Les serveurs de Norton analysent les sites Web pour voir comment ils vont affecter votre ordinateur.
Web Security
Web Security
Protégez-vous
L
AVG Online
Unmask parasites
L
es pirates exploitent les failles de sécurité dans le logiciel Web populaires tels que les blogs, les forums, CMS, galeries d’images et des wikis pour insérer un contenu illicite cachée dans les pages web d’innocents sites Web de tiers. Des milliers de propriétaires de site Web ne sont pas conscients que leurs sites sont piratés et infectés par des parasites. Unmask vous aide à protéger votre site web. http://www.unmaskparasites.com/
Sucuri
E
ntrez un URL (ex. sucuri.net) et le scanner Sucuri Vérifie le site pour détecter les malwares connus, les ifrmaes suspects, les codes javascript malicieux, etc.
http://safeweb.norton.com/
Malware scanner
http://sitecheck.sucuri.net/scanner/
URL Black List chercker
U
tilisez ce formulaire pour savoir si un ensemble de sites figure dans la liste noire. Seuls les domaines valides et les URLs seront acceptées. http://urlblacklist.com/?sec=search
V
Virus Total
irus Total est un service gratuit qui analyse les fichiers suspects et les URL. Il facilite la détection rapide des virus, vers, chevaux de Troie et toutes sorte de malwares. https://www.virustotal.com/
21
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
22
La
La norme ISO 27001 • Coût • Durée • EBIOS
D
ans le dossier du numéro précédent de Tera-magazine, nous avons fait un focus sur la norme ISO 27001 d’un point de vue technique. Nous avons aborder l’intérêt et les limites qu’elle présente et la procédure de la mise en place, etc. Dans cet article nous allons continuer d’en parler, nous répondons à un certain nombre de questions qui peuvent vous intriguer lors de la lecture de l’article précédent.
norme ISO 27001 fournit un canevas pour la mise en œuvre, le maintien et l’amélioration d’un système de management de la sécurité de l’information (SMSI). Le SMSI est destiné à choisir les mesures de sécurité afin d’assurer la protection des actifs d’une entreprise sur un périmètre défini. La norme fournit ainsi des outils pour une évaluation des risques et une mise en place de contrôles appropriés afin de préserver la confidentialité, l’intégrité et la disponibilité de l’information. ISO 27001 comprend une approche globale de la sécurité de l´information et des infrastructures, en garantissant une protection contre la perte, le détournement ou la falsification des informations et l’accès permanent aux utilisateurs autorisés. Comme toute norme, elle implique également des audits de surveillance et le suivi des performances des fournisseurs, ainsi qu´une évaluation des risques et de l´efficacité des contrôles. Les critères de mesure concrets proposés par la norme et les 133 mesures de sécurité couvrent tous les aspects techniques, organisationnels, humains et juridiques de l’entreprise.
ISO 27001 AU Maroc Depuis 2008, Iso 27001 connaît un essor au Maroc. Il faut savoir que ces
23
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
lité des services informadeux normes sont surtout tiques afin d’en permettre populaires en Asie et aux États-Unis. Si ces certificats sa continuité et sa sécurité. restent peu utilisés ou reCes normes sont desticonnus dans les pays euronées à tout organisme, car péens francophones, elles sont largement utilisées en on peut aussi bien certifier un grand compte qu’une Inde et dans certains pays petite, moyen ne ou microde l’Est très portés sur les activités de développement entreprise. La mise en et de l’offshoring. Elles per- œuvre de ces normes peut mettent d’avoir une crédibi- engendrer des économies substantielles et contrilité vis-à-vis de leurs parbuer à améliorer tenaires. Nous pouLe coût de l’accom- la productivité de l’entreprise. vons cité pagnement de base Avec le temps, ces comme (assistance du cabinet normes devienexemple de conseil) varie entre dront de plus en d’entreprise cer- 200 000 et 300 000 DH plus présentes sur tifié ISO (H.T) pour une PME et le marché maro27001 au pour une seule certifica- cain, notamment tion. du fait des exiMaroc gences des appels l’opérateur d’offres nationaux ou interhistorique Maroc télécom. nationaux. Les entreprises apporteront une plus-value Quel est l’intérêt en terme de qualité, de au Maroc de se faire prestations, de productivité mais aussi en sécurité et certifier Iso27001 ? assurance. L’intérêt est universel que Le coût ce soit au Maroc ou ailleurs. Nous savons tous que Quatre éléments de coût L’informatique irrigue sont à prendre en compte aujourd’hui l’ensemble des avant de se lancer dans un processus des organisapde certification : tions, par conséquent une rupture de ces services 1. Le coût de l’accomou une divulgation d’une pagnement de base (asinformation critique entraîsistance du cabinet de neraient des conséquences conseil) est situé entre 200 graves en termes de perte 000 et 300 000 DH (H.T) de production et eu égard pour une PME et pour une à l’image de maque de cet seule certification. Il est de organisme. Ce risque peut deux à trois fois supérieur engendrer des problèmes pour une grande entreprise avec les fournisseurs par ou une entreprise multiexemple, en cas d’externasites. Ces coûts sont génélisation de la production, ralement bien couverts par lorsque des informations les fonds de financement sont transmises. Il faut donc (ANPME). garantir un gage de fiabi-
ISO 27001
ISO 27001
Rappel; La norme iso27001.
‘‘
’’
Tera-Magazine
Numéro 5 |Novembre 2012
24
Mise en oeuvre du SMSI (Ebios) :
Revenons à l’aspect technique de l’iso 27001 . Si vous êtes entrain de mettre en 3. Le coût du responsable ou du chef œuvre le SMSI de votre entreprise vous de projet de certification en interne varie entre 10 000 et 20 000 DH bruts par mois. aurez besoin de choisir une méthode pour formaliser les besoins de sécurité et les Son salaire dépend du niveau de responmenaces, et permet sabilité qui lui sera confiée "La durée moyenne pour garantir de déterminer les et de la taille de la structure. Certaines PME amortissent la réussite et la durabilité d’une cer- risques pesant sur le coût du poste en confiant tification est généralement précédée les périmètres à auditer. d’une phase d’accompagnement au responsable du projet d’autres responsabilités.
avec un cabinet de conseil qui peut 4. Le coût du temps investivarier de 12 à 24 mois"
par les différents participants au projet (directeurs, responsables, managers, etc.) est difficile à estimer, cependant, une bonne gestion permet de l’incorporer aux frais de mission de chacun.
La durée d’un projet de certification ? La durée moyenne pour garantir la réussite et la durabilité d’une certification est généralement précédée d’une phase d’accompagnement avec un cabinet de conseil qui peut varier de 12 à 24 mois. Elle dépend certes de la taille de l’entreprise, de son état initial mais surtout de la disponibilité de ses ressources humaines.
En effet, La norme ISO 27001 ne donne pas de directives sur la méthode d’appréciation des risques à adopter. Les entreprises peuvent donc en inventer une en veillant à bien respecter le cahier de charge ou en choisir une parmi les plus courantes notamment la méthode EBIOS (Expression des Besoins et Identification des Objectifs de Sécurité) mise en place en France par l’ANSSI (Agence Nationale de la Sécurité des Systèmes d’Information).
Préparation pour la certification : En bref, Les étapes à respecter pour mener à bien son projet de certification sont :
1. Recrutement d’un chargé de projet
qualité. Il peut être recruté en interne ou en externe.
entreprise sont opérationnelles pour accompagner la stratégie de certification
Numéro 5 |Novembre 2012
Qu’est ce qu’EBIOS® ? Un outil de gestion des risques SSI.
La
méthode EBIOS (expression des besoins et identification des objectifs de sécurité) permet d’apprécier et de traiter les risques relatifs à la sécurité des systèmes d’information (SSI). Elle permet aussi de communiquer à leur sujet au sein de l’organisme et vis-à-vis de ses partenaires afin de contribuer au processus de gestion des risques SSI En fournissant les justifications nécessaires à la prise de décision (descriptions précises, enjeux stratégiques, risques détaillés avec leur impact sur l’organisme, objectifs et exigences de sécurité explicites), EBIOS est un véritable outil de négociation et d’arbitrage. EBIOS permet de sensibiliser les parties prenantes d’un projet (direction générale, financière, juridique ou des ressources humaines, maîtrise d’ouvrage, maîtrise d’œuvre, utilisateurs), d’impliquer les acteurs du système d’information et d’uniformiser le vocabulaire. Un exemple d’utilisation de EBIOS est disponible en : http://www.ssi.gouv.fr/fr/bonnes-pratiques/outils-methodologiques/
La démarche méthodologique proposée par EBIOS apporte une vision globale et cohérente de la sécurité des systèmes d’information (SSI). Ainsi, elle fournit un vocabulaire et des concepts communs,
4. Intervention du consultant 5. Audit de certification. Tera-Magazine
Expression des Besoins et Identification des Objectifs de Sécurité
Une méthode d’analyse des risques SSI reconnue.
2. L’archivage des données. 3. S'assurer que les forces humaines de l’
25
EBIOS
www.Teramagazine.tk
La méthode EBIOS
La méthode EBIOS
2. Le coût de la certification oscille généralement entre 20% et 30% du coût d’accompagnement (pour une durée de trois ans).
La méthode
permet d’être exhaustif et de déterminer des objectifs et des exigences de sécurité adaptés. La méthode prend en compte toutes les entités techniques (logiciels, matériels, réseaux) et non techniques (organisation, aspects humains, sécurité physique). Elle permet d’impliquer l’ensemble des acteurs du SI dans la problématique de sécurité et propose par ailleurs une démarche dynamique qui favorise les interactions entre les différents métiers et fonctions de l’organisation en étudiant l’ensemble du cycle de vie du système ( conception, réalisation, mise en œuvre, maintenance…). Elle est reconnue par les administrations françaises et elle constitue une référence dans le secteur privé et à l’étranger. Dans ce contexte, EBIOS a été traduit en plusieurs langues (anglais, allemand et espagnol) et converge vers les normes internationales.
Un référentiel complet Les guides méthodologiques
La méthode EBIOS est découpée en 5 sections : L'introduction, la démarche, les techniques, l’outillage pour l’appréciation des risques, l’outillage pour le traitement des risques. Ces documents sont accessibles gratuitement sur le site de l’ANSSI (www. ssi.gouv.fr/ebios)
Section 1 – Introduction
Cette section présente le contexte, l’intérêt et le positionnement de la démarche EBIOS. Elle contient aussi une bibliographie, un Tera-Magazine
Numéro 5 |Novembre 2012
26
glossaire et des acronymes. Section 2 – Démarche Cette section expose le déroulement des activités de la méthode. Section 3 – Techniques Cette section propose des moyens de réaliser les activités de la méthode. Il conviendra d’adapter ces techniques aux besoins et pratiques de l’organisme. Section 4 – Outillage pour l’appré-
ciation des risques SSI
Cette section constitue la première partie des bases de connaissances de la méthode EBIOS (types d’entités, méthodes d’attaques, vulnérabilités). Section 5 – Outillage pour le traite-
ment des risques SSI
Cette section constitue la seconde partie des bases de connaissances de la méthode EBIOS (objectifs de sécurité, exigences de sécurité, tableaux de détermination des objectifs et exigences de sécurité fonctionnelles).
27
Tera-Magazine
Numéro 5 |Novembre 2012
Les bases de connaissances d’EBIOS présentent et décrivent des types d’entités, des méthodes d’attaques, des vulnérabilités, des objectifs de sécurité et des exigences de sécurité. Elles sont directement applicables à la plupart des secteurs, mais chacun peut aisément se les approprier et les adapter à son contexte particulier. Sa formation Le centre de formation de l’ANSSI dispense régulièrement des formations à la méthode EBIOS, ainsi que des formations de formateurs.
logiciel
Le logiciel libre (sous licence CeCILL v2) d’assistance à l’utilisation de la méthode est téléchargeable gratuitement sur le site de l’ANSSI (www.ssi.gouv.fr/ebios).
Ses meilleures pratiques
Les meilleures pratiques EBIOS décrivent comment exploiter ses résultats dans le cadre de différentes approches sécuritaires : • Élaboration de schémas directeurs SSI. • Élaboration de politiques SSI, • Élaboration de politiques de certification. • Rédaction de FEROS (fiche d’expression rationnelle des objectifs de sécurité). • Rédaction de profils de protection. • Rédaction de cibles de sécurité. • Rédaction de SSRS (System-specific Security Requirement Statement, OTAN). • Comparaison entre l’étude de systèmes à concevoir et l’étude de systèmes existants… www.Teramagazine.tk
La méthode EBIO
La méthode EBIO
Les bases de connaissances
Quels sont les avantages de la méthode EBIOS dans le cadre d’une démarche ISO 27001 ? La méthode EBIOS représente une aide à la mise en place d’un SGSSI. En effet, la réalisation préalable d’une étude EBIOS offre plusieurs avantages : •
Une méthode structurée identifiant les besoins réels de l’organisme en matière de SSI, • Le soutien de la démarche spécifiée dans l’ISO 27001, pendant la phase d’analyse et d’évaluation des risques, pour choisir des objectifs et mesures de sécurité pertinents, • - Une description pratique et détaillée de la mise en œuvre des objectifs et mesures de sécurité de l’ISO 27001 sous la forme d’exigences de sécurité fonctionnelles,
>>CONCLUSION La méthode EBIOS autorise des interventions et un questionnement de la politique de sécurité à mettre en oeuvre dans une entreprise simple et facilement accessible. Pourtant, en fonction des périmètres à auditer, cette méthode peut parfois être considérée comme trop générique. En fonction du périmètre à auditer, elle peut parfois s’avérer trop générique. Dans ce cas, il est possible d’intervenir avec d’autres méthodes.
Tera-Magazine
Numéro 5 |Novembre 2012
28
Pensez en Assembleur
Comprenez mieux votre CPU Partie : 1
Avez-vous déjà eu l'idée de savoir quelle langue votre CPU parle? Êtes vous Prêt à descendre au bas niveau et savoir comment l’ordinateur fonctionne vraiment? Rejoignez nous pour un tour autour du langage assembleur X86 ...
S
i je vous raconte la blague ou l'anecdote suivante : 111111101010100010101 vous fera t-elle rire? Je doute fort que vous avez compris ma blague parce que c’est en binaire (Prière de ne pas perdre de temps à la convertir en ASCII!), Mais si vous êtes meurt de rire SVP vous avez un CPU dans votre crâne et cet article n'est pas pour vous. Malgré que Le binaire est tout ce que les processeurs comprennent, nous sommes
29
Tera-Magazine
Numéro 5 |Novembre 2012
massivement isolés des instructions CPU grâce aux langages de haut niveau (Java, C++..) et aux bibliothèques et Frameworks. Une telle abstraction rend nos codes lisibles, réutilisables, compréhensibles et surtout portables. Pourtant nous ne devons pas oublier ce que le processeur est en train de faire en dessous et c’est pourquoi l’apprentissage du langage d’assembleur est essentiel et d’une importance vitale pour tous les programmeurs experts.
Les raisons qui vous pousse à penser en assembleur sont multiples dont les plus importants sont : • Comprendre la façon dont l’ordinateur fonctionne et voir avec un œil bas niveau, votre code de haut niveau. • Apprendre à estimer chaque octet de mémoire et d’éviter les pertes inutiles. • C’est amusant du moins pour moi. Durant cet article je vais inshalah vous apprendre à utiliser l'assembleur et je www.Teramagazine.tk
vais vous montrer comment un processeur exécute les ordres des langages haut niveau.
Assembleur? Aujourd’hui, personne avec un esprit sain ne voudra écrire directement du code binaire. Heureusement, nous avons des programmes appelés assembleurs qui nous permettent d’écrire des instructions CPU dans un fichier puis de les convertir en code binaire. Ces assembleurs sont beaucoup plus simples que les compilateurs. En les utilisant vous êtes supposé savoir ce que vous faites et que vous n’avez pas besoin d’assistance.
Qui utilise le langage assembleur aujourd’hui? Avant de répondre, je dis que L’expression exacte serait "langage d’assemblage", l’assembleur étant le programme qui permet de transformer le langage d’assemblage en code binaire. Néanmoins, nous emploierons ici le terme "assembleur" pour nous simplifier la tâche. Sans doute, ce n’est pas le bon choix comme langage de développement des applications bureautiques, car le code n’est pas portable entre les différents types de CPU(X86, PPC, ARM…) et il est plus difficile à maintenir. Cependant, quand vous voulez travailler en bas niveau et éviter toutes les couches d’abstraction comme pour le cas de l’écriture des pilotes de périphériques, interagir
avec le noyau ou faire des algorithmes optimisés pour les jeux, l’assembleur sera le choix idéal. Après cette introduction, nous allons plonger dans le langage assembleur. Let’s go!
vez télécharger le paquet nasm-XXX.tar.gz de la page officielle : http://www.nasm.us/ et suivre les instructions. plusieurs livres ou tutos commence avec de longs
Outils pour coder
chapitres autour de l'arithmétique binaire, hexadécimal et d'autres sujets relatifs, mais je pense que ce n'est pas la meilleure approche pour apprendre il vaut mieux commencer par l'écriture d'un programme et l'exécuter et ensuite comprendre ce qui s'est passé, d'ailleurs c'est la méthode que j'adopte dans la suite de cet article. Ce code vous sera peut être étrange mais à la fin vous allez changer d’avis.
Assembleur 01101
Assembleur 01101
Langage assembleur 001010101
"L’expression exacte serait « langage d’assemblage », l’assembleur étant le programme qui permet de transformer le langage d’assemblage en code binaire "
Pour suivre cet article, je vous préconise d'utiliser un linux. Vous aurez besoin d’installer deux programmes (sous linux) nasm et ld. L’outil ld (éditeur de liens, outil de développement GNU ) est normalement installé comme une dépendance de GCC donc vous n’aurez pas besoin de l’installer dans le cas normal. Un point important à signaler, c’est qu’on va écrire un programme avec Premier programme des instructions 32 bit pour en assembleur avoir un maximum de comCommençons par écrire patibilité avec les CPUs donc nous devons travailler dans un fichier texte qu’on nomme tera.asm les lignes sur une distribution 32 bit de codes suivantes : et non 64 bit. Si vous êtes basé section .text ; sur ubuntu/debian global _start ; pour installer nasm _start : ; le début de l’execution utilisez :
mov eax, 4 ; l’appel noyau N4 mov ebx, 1 ; la sortie stdout mov ecx, message ; mov edx, message_length ; pour avoir les outils int 0x80 ; interruption système nécessaires. mov eax, 1 ; l’appel noyau N1 (exit) Si vous êtes basé int 0x80 ; opensuse/suse : section .data Zypper install message db" Tera magazineN5", 10 nasm. Sinon vous poumessage_length equ $ - message Sudo apt-get install build-essential nasm
Tera-Magazine
Numéro 5 |Novembre 2012
30
registre. Pour l’exécuter, lancez votre terminal et placez-vous dans le dossier (cd /chemin) où vous avez mis le fichier tera.asm et utiliser les commandes
• nasm -f elf32 -o tera.o tera.asm • ld -o tera tera.o • ./tera A l’issue nous aurons notre message ‘TeramagazineN5 ‘ imprimé à l’écran. Pas mal non ? Si vous exécutez ce programme sachez que vous venez d’écrire un programme en assembleur qui communique directement avec le noyau Linux et votre CPU, en lui disant d’imprimer un message à l’écran, sans utiliser aucune bibliothèque, ni compilateur, ni interpréteur. Seulement vous, le CPU et le noyau. Après ce tour de magie, je vais donc expliquer en détails ce programme et ce qui s’est passé.
Décortiquons le code précédent : La première chose à noter, l’existence des points-virgules (;) qui désignent les commentaires, quoique ce soit après une demi-colonne sera juste une explication. Ces commentaires ne seront pas inclus dans l’exécutable finale. Durant vos premières étapes de la programmation, il est sage de commenter à peu près toute chose non triviale pour se rappeler de quoi il s’agit, si jamais vous y revenez plus tard. Enchaînons, Les premières lignes de notre code ne sont pas des instructions du processeur, mais des directives qui indiquent à l’assembleur comment traiter le fichier. La première ligne définit une section intitulée text.
section .text ; Les sections sont des moyens pour diviser les programmes de sorte qu’une partie ne se confond pas avec l’autre. Pour les systèmes d’exploitation simples, le code(insrtuctions) et les données sont toutes mélangées, ce qui pose des pro31
Tera-Magazine
Numéro 5 |Novembre 2012
blèmes de sécurité, car un hacker pourra remplacer une donnée avec du code exécutable malveillant. Linux (et d’ailleurs les OSs modernes) est plus intelligent et garde de telles choses séparées. Ils finissent tous dans le même exécutable: le fichier Tera dans notre cas, mais le programme de chargement du système d’exploitation les pose dans des endroits différents dans la mémoire vive. Malgré son nom, la section text n’est pas une place pour y mettre une chaîne de caractères, mais plutôt des instructions CPU réelles c-à-d le code réel que nous voulons exécuter.
global _start _start : Ici, _start est un label, ce qui signifie qu’il réfère à une position spécifique dans le fichier. _start: apparaît au-dessus des premières instructions CPU (celles du mov). Il indique que c’est là que l’exécution de notre programme commence. Certes que c’est assez évident pour nous, mais ce n’est pas le cas pour les systèmes d’exploitation surtout dans des programmes plus complexes avec beaucoup de fichiers. Ainsi que le global_start expose le label à d’autres outils que nous utilisons pour générer le fichier exécutable, comme l’éditeur de liens (ld).
mov eax,4 mov est la première instruction CPU x86 dans notre programme. La plupart des instructions ont des noms concis pour indiquer ce qu’elles font. Dans ce cas, mov signifie déplacer les données. Elle copie une donnée d’un endroit à un autre, sans que l’originale ne soit supprimée. Le Déplacement de données est l’opération la plus courante pour les CPUs, donc la plupart des codes en assembleur X86 que vous verrez seront pleins de ces instructions de déplacement mov. Mais ce quoi cette chose eax? Il s'agit d'un www.Teramagazine.tk
►Les registres
C’est ici que nous entrons dans le fonctionnement physique du CPU. Votre processeur n’a aucune notion de variables comme pour les langages de haut niveau (c++,java..). Il voit juste la mémoire comme un grand groupe d’octets qu’il traite grâce à nos techniques de programmation. Toutefois, la modification du contenu de la RAM est une tâche qui consomme beaucoup de temps, pour éviter cette perte de temps le CPU a sa propre mémoire temporaire interne divisée en parties appelés
dans EAX; c’est simple !. Vous pouvez également copier des données entre les différents registres comme par exemple
mov eax, ebx. Ceci copie les données du registre EBX dans EAX.
Assembleur 01101
Assembleur 01101
Votre Premier Programme assembleur
registres. Comme vous le savez, le CPU ne connaît pas les chaînes de texte ou les piles TCP / IP, etc. il traite que des chiffres. Il fournit l’essentiel sur lequel nous pouvons construire nos applications. Nous utilisons les registres pour exécuter des opérations mathématiques et le déroulement du programme directement s’exécute en fonction de leurs résultats. Ceci implique l'acquisition des données qui sont en RAM et les placer dans les registres, pour effectuer les calculs et les ranger de nouveau dans la RAM. Sachez qu’il y a de nombreux registres avec des objectifs différents. Pour le moment, nous allons juste mettre l’accent sur les suivants:
» EAX, EBX, ECX, EDX Il s’agit de quatre registres de 32 bits. Vous pouvez me dire pourquoi ils ne sont pas appelés juste A, B, C et D au lieu d’EAX….? Je dirais, que c’était le cas dans le passé, quand tout était en 8-bit, mais après l’apparition des CPU 16 bits ils ont été étendu à AX, BX,… puis ils ont été étendu encore plus à EAX, EBX (32 bits) dans l’ère du 32 bit. Un registre n’est pas très utile s'il contient des données aléatoires, donc nous avons besoin d’un moyen pour y mettre des données et c’est là que l’instruction mov entre en scène. mov fonctionne de droite à gauche, alors quand nous faisons:
mov eax, 4 Nous mettons (stockage) le ‘nombre‘ 4
Fig.1: L'intérieur d'un CPU
À ce stade, vous pourriez vous demander :
Quelle est la relation de tout cela avec l’affichage d’un message sur l’écran? Comment à l’aide de simples opérations arithmétiques on réussit une telle opération ? Je vous comprends, j’avais les mêmes idées quand j’ai débuté dans ce domaine. Ayez patience et vous comprenez le rapport. Commençons par une explication un peu difficile : le CPU n’as pas de moyen pour imprimer un message sur l’écran, déjà il ne connaît pas c’est quoi un écran. Ce que le processeur peut faire c’est mettre les résultats arithmétiques (les chiffres) en VRAM (Ram Vidéo), si nous pouvons savoir comment les placer dans les bons places en VRAM nous pourrons imprimer des caractères sur l’écran. Cependant l’emplacement de cette Ram vidéo et comment elle fonctionne dépend de la carte graphique et de la résolution de l’écran et d’autres facteurs. Pour résumer, le processeur envoie les codes des caractères du message à afficher à la VRAM pour être imprimés sur l’écran par le processeur de l’affichage. Pour mieux comprendre vous pouvez chercher sur Google des informations sur le Tera-Magazine
Numéro 5 |Novembre 2012
32
fonctionnement de la VRAM. L'explication la plus simple est que l'afichage réussit
Fig.2: les appels système avec leurs numéros
mov eax, 4 ; Numéro de l’appel noyau : Write(écrire)
mov ebx, 1 ; ou écrire ( stdout) mov ecx, message ; l’emplacement de la chaine (caractères). Fig.2: Liaison CPU, RAM et carte graphique.
mov edx, message_length ; Nombre de
caractères à écrire Comment savons-nous que le numéro 4 est pour l’impression ( ou écriture) d’une ►L’intervention du Noyau pour affi- chaîne de texte? La réponse se trouve cher un message "la valeur 4 (du EAX) indans le fichier Heureusement, le noyau dique que le texte sera /usr/include/asm/ linux inclut une routine pour imprimé (opération d’écriunistd_32.h (ubuntu) imprimer une chaîne de ture)" presenté dans la figure texte. Comme, le noyau est Numéro 2. en relation avec le matériel, les écrans, Si vous y jetez un coup d’œil, vous verle serveur X et les terminaux virtuels, on rez une liste de numéros à côté de leurs peut donc le laisser (et le système X Winroutines du noyau correspondantes. Vous dow) traiter ce sujet d’affichage. pouvez voir que le noyau peut faire un Tout ce que nous avons à faire est d’interlarge éventail de tâches fondamentales rompre (interruption) le noyau lors de : ouvrir un fichier, modifier des autorisason activité pour qu’il nous consacre un tions, monter des systèmes de fichiers, moment. changer la priorité du processus, etc. Comment pouvons-nous dire au noyau Vous ne trouvez pas les choses telles que exactement ce que nous voulons faire? l’ouverture d’une fenêtre ou la lecture des Et bien, nous devons spécifier à travers images à partir d’un appareil photo numénos requêtes mises dans les registres ce rique. Le noyau fournit juste les bases. que nous voulons avoir. Nous devons indiquer: ►Noyau et registre ?suite du pro1. Le type de la demande (impression d’un message). gramme 2. Où afficher (par exemple l’écran) Le noyau Linux est l’ami des registres, 3. Où est le message fournissant des fonctionnalités de base 4. Le nombre de caractères à imprimer. telles que la lecture des données à partir de fichiers et la création de nouveaux proDans cet ordre nous plaçons ces données cessus. Nous avons vu que la valeur 4 (du dans les registres EAX, EBX, ECX et EDX EAX) indique que le texte sera imprimé comme suit: (opération d’écriture). grâce à l’intervention du noyau (kernel).
33
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
riel fera une demande spécifique à travers Pour EBX nous avons mis la valeur 1 qui le noyau et il peut faire ceci par l’interméindique la sortie d’impression stdout (outdiaire de l’instruction int 0x80. pout standard). Cette valeur peut chanLe CPU enregistre son état actuel (ce ger, car comme vous le savez peut-être, qu’il faisait) se met ensuite à l’interruption, un programme peut générer une sortie puis revient à sa tâche précédente. à d’autres endroits comme stderr pour la Dans ce cas, nous interjournalisation des erreurs "l’équipe de développement rompons le noyau parce (log), mais ce n’est pas que nous voulons effecimportant ici. Nous voulons du noyeau linux conseil de tuer l’opération d’écriture. seulement utiliser la sortie toujours passer par la libc" Comme vous avez vu standard stdout. nous avons mis toutes les données dans Maintenant, c’est au tour de ECX, qui les registres appropriés. Il nous suffit stocke l’emplacement du message que nous voulons imprimer. C’est là que les éti- maintenant d’appeler le noyau. quettes entrent en jeu à nouveau. Au-desTerminer l'exécution sus de notre programme vous verrez une Bien entendu, la réponse (impression du section de données : message) prend généralement quelques section .data millisecondes, puis l’exécution continue dans notre code. Avec notre message imIl s’agit des chaînes statiques et des primé, nous allons dire au noyau que notre nombres que nous allons utiliser, qui ne programme a pris fin pour que le noyau sont jamais destinés à être exécutés. libère toute la mémoire que nous avons Pour insérer une chaîne de utilisée. C’est un travail simple: Nous mettons 1 dans EAX (pour l’appel caractères("Tera magazineN5") dans système de sortie 'exit) notre code, nous utilisons la directive db (data bytes) ‘octets de données’: mov eax, 1 ;
message db "Tera magazineN5", 10
Alors, nous avons mis notre chaîne de texte dans la section des données et le nombre 10 sur l’extrémité, qui est un caractère de nouvelle ligne de sorte que la sortie soit meilleure. Nous avons précédé tout cela par le terme message, qui est notre label pour que nous puissions localiser cette chaîne. Vous pouvez changer le message à ‘monmessage’ ou ce que vous voulez, pourvu que vous mettiez à jour les autres références de ce code et n’utilisez pas des instructions CPU réels comme des étiquettes (mov,push..).
▶Interruption 0x80 Maintenant, on arrive à la partie amusante: appeler le noyau. La plupart des processeurs ont un système d’interruptions, qui sont les moyens d’arrêter le processeur de faire ses taches normales et de le rendre attentif à autre chose. Normalement votre CPU sera occupé pour servir le système d’exploitation. Mais parfois un programme ou un maté-
Assembleur 01101
Assembleur 01101
Langage assembleur 001010101
int 0x80 ;
et ensuite appeler le noyau encore une fois (0x80). Nous aurions pu également nous aider de la libc et éviter la manipulation directe de l’interruption 0x80 et nous aurions alors eu le mélange de C et d’assembleur. Lier son code assembleur avec la libc peut-être effectivement très pratique si l’on ne veut pas réinventer la rou. Dans le cadre d’applications « professionnelles » il est néanmoins conseillé de ne pas passer directement par l’interruption 0x80 pour faire appel aux routines du kernel. En effet, rien ne certifie que les services proposés par cette interruption ne changeront pas. L'équipe de développement du noyau linux conseil de toujours passer par la libc s’agissant des appels systèmes et se réservant le droit de modifier quoi que ce soit sans crier gare. Pour en savoir plus sur L'interruption 0x80 et les différents appels systèmes consulter le lien http://home.
snafu.de/phpr/lhpsyscal.html.
Benchmark Tera-Magazine
Numéro 5 |Novembre 2012
34
J’aimerais attirer votre attention à la question de la taille du code (une sorte de benchmark). Au début, de ce tutoriel, nous avons dit que la programmation en assembleur vous aide à optimiser et alléger votre programmation. Eh bien, nous pouvons démontrer la performance de l’assembleur vis-à-vis ce sujet. Pour comparer nous allons écrire le même programme, que nous avons fait déjà, en c ? Le code sera comme suit :
#include <studio.h> void main() { puts(‘TeramagazineN5’); } Compiler ce code à l'aide de la commande gcc test.c et Stripper (consiste à l’alléger en supprimant les symboles qu’il contient) le binaire résultant par strip a.out.
coder en assembleur :
Désassembleur
• La vitesse d’exécution. • La taille du code généré. • Le faible besoin en RAM.
Il existe des programmes dont le plus connu est Ndisasm qui font l’inverse que NASM. Ils traduisent du langage machine (un fichier exécutable) en langage assembleur (aussi désigné sous le nom de langage « bas niveau »). Cette opération, le désassemblage, est l’inverse de celle effectuée par un programme assembleur pour utiliser ndisasm lancer :
Bonne programmation et au mois prochain!
Astuce Vous pouvez faire appel au compilateur gcc pour voir votre code ecrit en c traduit en assembleur . gcc -s nom_de_fichier.c et vous aurez en sortie un fichier avec une extension .s contenant du code assembleur (Fig3.)
Qu’est-ce que vous obtenez? Nous aurons un fichier de 5.5 Ko, vous pouvez avoir un résultat légèrement différent. Comparer ce résultat avec la taille du fichier binaire (tera) généré par le code assembleur, qui pèse 683 octets (8 fois moins), l’assembleur l’emporte. Il y a plusieurs raisons à ce gonflement; en passant par les compilateurs (CCG …) beaucoup de données s’a joutent dans le fichier de sortie, chose qu’on évite lors de la pro-
Numéro 5 |Novembre 2012
Syntaxe assembleur Ceux d’entre vous ayant déjà codé en assembleur sous DOS ou Windows seront certainement surpris d’apprendre que la syntaxe qu’ils avaient employée jusqu’à présent n’est pas la seule disponible. En effet, il existe en fait deux styles de notation possibles :
• Les conventions AT&T
Fig.3: Utilisation du gcc pour retrouver le code assembleur d'un programme en c
Ainsi nous avons écrit votre premier programme en langage assembleur. Ce n’est pas un grand exploit, mais maintenant vous êtes familier avec les bases et vous êtes prêts à explorer plus loin le mois prochain. En Fin rappelez vous bien des avantages à Tera-Magazine
Fig.4: Désassemblage du fichier de sortie de l'assembleur
Ces conventions viennent directement du constructeur de microprocesseur ; c’est pourquoi elles sont suivies par la ma jeure partie des assembleurs modernes. Le code généré est clair et épuré. Exemple: push ebp mov ebp,esp push ebx push esi push edi
⌬Un mot de la fin
35
ndisasm nom_de_fichier et vous aurez le code assembleur de votre exécutable.
• Les conventions Intel
grammation assembleur qui se passe des compilateurs pour passer directement au langage machine. Malgré que les compilateurs modernes sont assez doués pour générer du code optimisé, rien ne vaut le langage d’assemblage si vous voulez vraiment un contrôle précis pour réduire la taille de votre exécutable.
Assembleur 01101
Assembleur 01101
Langage assembleur10101
www.Teramagazine.tk
Ce style de codage est né en même temps qu’Unix et les conventions datent donc de cette époque. Il est un peu perturbant si l’on a pris l’habitude de coder en suivant les conventions Intel, mais on se familiarise assez rapidement avec. Exemple: pushl %ebp movl %esp,%ebp pushl %ebx pushl %esi pushl %edi Il existe quelques assembleurs qui permettent d’utiliser les conventions Intel sur de l’Unix, le plus abouti étant Nasm. Dans ce document nous utiliserons les conventions de notation Intel et emploierons Nasm nous pourrons changer la form des instructions du fichier de la syntax AT&T en Intel par : objdump -d -M intel-mnemonic mon_fichier.
Tera-Magazine
Numéro 5 |Novembre 2012
36
Le google des Hackers ☢
Cyber-sécurité SI Industriels 142934 machine scannées au Maroc
S
HODAN (Sentient Hyper-Optimized Data Access Network) est le nom du moteur de recherche d’un type unique. Si vous êtes sonnectés à internet, je vous demande bien de consulter le site: http://www.shodanhq.com/. Comme vous pouvez le constater sur la page d'accueil (Fig1), Il s’agit d’un moteur de recherche pour répondre à des requêtes
spéciales. Il ne s’agit pas d’un concurrent de Google puisque son domaine de recherche et toute à fait différent. Je vous laisse avec la définition de son réalisateur John Matherly (http://twitter.com/achillean): SHODAN est un moteur de recherche qui vous permet de trouver des appareils informatiques spécifiques (routeurs, ser-
veurs, caméras IP, etc) en utilisant une variété de filtres. Certains l’ont également décrit comme un répertoire de numérisation des ports des protocoles http,ftp,SSH,SNMP et SIP ou un moteur de recherche de bannières. Alors qu’est-ce que SHODAN indexe alors? Bonne question. La majeure partie des données est tirée des «bannières», qui sont des méta-données
bannières rassemblées plutôt que de rechercher un contenu spécifique sur un terme de recherche particulier comme le fait google, yahoo..
serveur.
en deux ans. Cela va de leurs localisations exactes aux spécifications des logiciels qui les contrôlent. Le site de Shodan annonce la couleur : les webcams, les routeurs, les centrales, les iphones, les éoliennes, les réfrigérateurs, les
SHODAN interroge les ports et attrape les bannières résultant, puis il indexe celles-ci (plutôt que le contenu Web) dans sa base. La recherche se fait donc sur le contenu des
Shodan a déjà emmagasiné les données de plus de 100 millions d’appareils
téléphones sur IP,etc. Bref,Shodan débusque tout ce qui est connecté et en révèle les points faibles
Shodan
Shodan
Shodan
envoyées par le serveur au client. Ces données peuvent être des informations sur les logiciel tournant au coté serveur, des options supportées par les services, un message d’accueil ou toute autre chose que le client peut savoir avant d’interagir avec le
Utilité
Un pas en avant pour fournir un outil gratuit ‘d’Intrusion as a Service’ (IaaS) au grand public. Ce service peut spécialement
être utilisé par les ‘ penetration testers’, ‘les experts de la sécurité informatique’ et pirates pour avoir des informations techniques de valeur. Il aide à chasser les vulnérabilités et aussi à protéger ses systèmes.
bannières
SHODAN est conçu pour aider l’utilisateur à trouver des nœuds spécifiques (postes de travail, serveurs, routeurs, commutateurs, etc.) avec un contenu spécifique dans leurs bannières Par exemple, ci-dessous une bannière FTP:
Cela nous indique un nom potentiel du serveur (infobox.ru), le type de serveur FTP Proftpd, version 1.3.0. Le serveur tourne sous Solaris 9i. Pour HTTP une bannière ressemble à ceci: HTTP/1.0 200 OK Serveur: Apache/1.3.26 (Unix) PHP/4.1.2 AuthMySQL/2.20 mod_gzip/1.3.19.1a mod_ ssl/2.8.9 OpenSSL/0.9.6g Last-Modified: Wed, 1 juillet 1998 08:51:04 GMT Accept-Ranges: bytes Content-Length: 97 Content-Type: text / html Fig1 ; shodanhq.com
37
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
38
Opérations basiques :
L’utilisation de shodon est facile. Pour affiner votre recherche vous devez apprendre les filtres disponibles: Pays Le filtre pays est utilisé pour restreindre les résultats par pays. C’est utile lorsque vous souhaitez rechercher les ordinateurs fonctionnant dans un pays spécifique. Exemples: pour trouver des appareils Cisco situés au Maroc: pays:MA cisco.
Fig.1: résultat de recherche sur le matériel Cisco au Maroc
Lectures des bannières
Avant de commencer avec SHODAN, il est important de comprendre les différentes sections des bannières qui s’affichent pour optimiser les résultats de recherche. Habituellement, les bannières qui sont affichées comme résultats de recherche dans SHODAN ne sont que des métadonnées reçus par les clients à partir du serveur. Ces métadonnées se composent de plusieurs champs d’entête HTTP et toutes les informations importantes telles que le nom du serveur, la date de modification et d’autres qui sont répartis dans ces champs d’entête.
39
Tera-Magazine
Numéro 5 |Novembre 2012
Comment shodan fonctionne :
Shodan s’intéresse aux ports TCP/IP ports - HTTP (80), Telnet (23), FTP (21), SSH (22), SNMP (161), SIP (5060). Il va tenter des connexions et enregistre les résultats) dans sa base de données. Si vous ne vous sentez pas concerné sachez que Shodan a déjà mis en ligne les résultats de 142934 hôtes scannés rien qu’en Maroc, plus de 10 Millions par le monde.
Exemples d’utilisation
os (systèmes) Le filtre ‘os’ est utilisé pour rechercher des systèmes d’exploitation spécifiques. Des valeurs possibles sont les suivantes: windows, linux et cisco. Exemples: Microsoft-IIS sous Windows 2003: Microsoft-IIS os: "windows 2003" JBoss sous Linux: JBoss OS: Linux le port Le filtre "port" est utilisé pour restreindre la recherche à des services spécifiques. Les valeurs possibles sont: 21, 22, 23 et 80. D’autres filtres existent : géographique, nom de hôte, net, etc. Vous pouvez utilisez une filtration graphiquedisponible sur la page d'accueil sans pouvoir utiliser les mots clés .
vez utiliser votre compte facebook, Google… Astuce Afin d’utiliser les filtres il faut bien avoir un compte shodan ou se connecter en utilisant un compte gmail, facebook,.. On connaissait déjà les 'google dorks' qui permettent de trouver des trucs bien sympas à l'aide de google, mais là ça va encore plus loin, car shodan nous livre sur un plateau des serveurs vulnérables, ftp anonymes, mots de passe par défaut,etc. Un service assez unique qui se développe encore plus, par la mise en place d'un framwarke et l'intégration à certains outils de sécurité.. Shodan présente à la fois un gain de temps énorme pour tous les hackers qui scannaient des rangées d’ips à la recherche de cibles présentant telle ou telle faille et un redou-
table moyen pour vous convaincre définitivement que vos serveurs ont tout intérêt à ne pas tourner sur les port par défaut.
SHODAN et SCADA ? Cyber-sécurité SI Industriels (SCADA)
Les valves de canalisations critiques, les tréfonds des usines chimiques, le coeur des data centers, les turbines électriques, les aiguillages… Une vrais mine d’or pour les pirates informatique surtout que la plupart de ces systèmes sont mal sécurisés à l’occurrence
Shodan
Shodan
résultat c’est 2992 appareils Cisco.
Fig.2: supervision par Scada
Shodan capture les spécifications de tout les appareils en ligne. Dont des automates de contrôles industriels. Comme ceux qui pilotent la distribution d’eau ou d’électricité, Rien ou presque ne lui échappe.
SCADA.
SCADA
SCADA : Supervisory Control And Data Acquisition. Un système de supervision permettant la centralisation des don-
Rien ne vaut pour comprendre un exemple. Nous allons chercher les routeurs Je vous conseille d’utiliser cisco détectés au Maroc: shodan après authentificaOn cherche : cisco et on tion. Pour ce but vous poufiltre par pays Maroc. le
www.Teramagazine.tk
Fig.3: interface de contrôle d'une pompe utilisant SCAD
Tera-Magazine
Numéro 5 |Novembre 2012
40
Shodan
nées, la présentation souvent semi-graphique sur des postes de "pilotage", la gestion des alarmes, l’historisation des données… pour le contrôle et la supervision des processus industriels comme fabrication, production, gestion d’énergie, traitement d’eau...
Cibler des automates peu sécurisés accessibles par Internet avec shodan
Shodan met le plus reculé des scadas, les systèmes de contrôles industriels à la portée des hackers déterminés. En utilisant shodan nous pouvons bien trouver des victimes il suffit de connaître les failles du système SCADA. Les vulnérabilités sont disponibles sur internet vous n’aurez pas besoin de les découvrir vous même. En outre, il existe des systèmes qui utilisent des combinaisons mot de passe/login qui sont fournies par les fournisseurs (siemens,GENESIS..) qui sont souvent trouvables sur internet ainsi que les mot de passes par défaut. J’ai essayé de trouver un de ces systèmes en utilisant shodan. Je cherche SCADA sur shodan, je tombe par hasard sur un système ayant comme IP 85.10.209.39 (l’allemand) qui présente une interface web pour configurer une sorte de pompe à dis-
41
Tera-Magazine
Numéro 5 |Novembre 2012
tance. L'interface est protégée par mot de passe. Du premier coup je donne admin/admin et Bingo!! Je suis connecté sur l’application. Biensur mon intention étant que de vous donner une idée du risque que court les installations industriels liées à internet pour permettre un contrôle à distance, je tente pas une manip qui peut bien arrêter ce système. Ce manque de vigilance, peut bien coûter cher. Si on cible un système dont on connais le nom de la page d’authentification par exemple MainAst. shtm, on peut lancer une recherche shodan rien que sur cette page pour avoir tous les systèmes qui ont cette page dans leurs interfaces web. Si vous n’arrivez pas à accéder en utilisant un mot de passe par défaut vous pouvez faire appel à des solution de ‘brute forcing’.
Les systèmes SCADA peuvent être protégés par les opérations suivantes: 1. Les systèmes doivent être placés derrière des parfeux. 2. Utilisation des VPNs(Virtual Private Network) pour un accès à distance sécurisé. 3. Désactivation de compte en cas de détection des méthode de brute force. 4. Utilisation des mots de passes fortes.
Rejoignez Notre page teramagazine sur FACEBOOK www.Facebook.com/tera.maga
→
Pour une bonne utilisation de shodan vous devez apprendre à déchiffrer et comprendre les bannières HTTP,FTP... pour bien trouver des victimes potentiels. Désormais chaque mois Shodan répertorie les spécifications, les métadatas de 10 millions de nouveaux objets connectés sur internet parmi lesquels, il existe des choses qui n’étaient pas supposées être cartographiables sur internet. Ne croyez pas que vous êtes à l’abri de shodan.
Faites un "j'aime"+"afficher dans le fils des nouvelles "ou en anglais "show in news Feed" pour recevoir les informations partagées quotidiennement. www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
42
Jmaghreb
Jmaghreb
JMAGHREB
1.0
Tera-magazine Jmaghreb’s madia partner.
I WAS THERE IT WAS GREAT
U
ne première au Maroc, un grand événement Java a été organisé à L’EMI(l’Ecole Mohammadia d’Ingénieurs) à Rabat par Morocco JUG (Communauté marocaine des utilisateurs de Java). Soutenu par Oracle, JBoss/Redhat, Safran Morpho, Google, Springsource/Vmware, Objis .. Jmaghreb a connu un grand succès en qualité d’organisation, des conférences qui ont été animées par des experts de notoriété internationale et des ateliers pratiques. JMaghreb est considéré comme l’un des plus grands événements en Afrique autour de Java et des technologies associées (Java / Java EE, Java FX, Android, HTML5 …). Dans le prochain numéro, nos présenterons le contenu des ateliers et des formations auxquelles notre envoyé a assisté. Un dernier point Bravo pour le logo original du Berad marocain :).
43
Tera-Magazine
Numéro 5 |Novembre 2012
SSIBLES :
AMÉLIORATIONS PO
ur Jmaghreb 2.0: Nos suggestions po aming”. e chaîne de “live stre un d’ e ac pl en ise M r • os de l'événement su dé vi s de t en m re st • Enregi youtube. rtout essus d’inscription su • Améliorer le proc nts’. pour les atelier ‘attira
NOUS ATTENDONS DÉJÀ JMAGHREB 2.0 www.Teramagazine.tk www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
44
IN DM
tr
at
eu
rd
es
sy
st
èm
es
:>
>
SY
SA
Sy sa dm in
Partie 2
Ad m in
is
Nos objectifs
ine.tk
Le
m ét
ie
rd
’u
n
Pour vous donner une idée globale, je vous annonce ce que nous allons apprendre au long de cette section réseau sous linux: • la configuration des paramètres réseau sous linux • Configuration des serveurs DNS, DHCP,SAMBA,Mail.. • Mise en place et configuration du Parfeu • La sécurité réseau • Logging • Dépannage réseau • Configuration des routeurs • Monitoring Le premier point "la Gestion de la configuration réseau sous linux" sera notre sujet cette fois et le premier pas en avant pour mettre en place un réseau informa-
45
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
tique basé sur des solutions linux. Pour être pratique, nous allons nous imaginer un scénario à réaliser.
le réseau à mettre en place
SysAdmin
SysAdmin
cet
article est la deuxième partie d’une série que je propose pour vous initier au métier du sysadmin (mon job) et pour faire de vous un professionnel à la fin. Ce mois-ci, c’est le tour de la configuration réseau sous linux. Je suppose que vous avez lu l’article précédent, que vous avez votre linux est installé sur votre machine ou que vous utilisez la virtualisation ( Vmware,virtualBox..) Comme je vous ai suggéré la dernière fois, l’important c’est avoir un linux sous la main. Je vous rappelle que dans l’article précédent j’ai montré comment peut-on avoir accès à un serveur distant (SSH, VNC..) ainsi que les commandes systèmes de base que vous pouvez apprendre. Pour être front avec vous, avant de rédiger cet article je ne savais pas d’où commencer et quel sujet aborder comme début, vu que le domaine administration système est vaste. Sans oublier les demandes de sujets à aborder que je reçois. Après réflexion, J’ai opté pour la configuration réseau comme début vu que c’est la tâche de base qui vous affrontera sans doute dans votre début, comme c’était mon cas quand j’étais un newbie.
Imaginions que vous êtes recruté par une entreprise. Après qu'on vous souhaite la bienvenue, on vous demande : "nous avons des routeurs, des switchs, une ligne ADSL, des machines.. bref tout ce que vous voulez et on vous demande de nous faire un réseau avec un domaine, un DNS, un serveur DHCP, un serveur mail pour envoyer et recevoir des mails, etc." Croyez moi vous aurez du boulot à faire et vous aurez intérêt à connaître comment le réussir ?. Si vous n’êtes pas habitué à une telle tâche, ne vous inquiétez pas, nous allons découvrir étape par étape comment parvenir à tout mettre en place. Supposons que le réseau qu’on souhaite mettre en place est celui présenté dans le schéma Fig.1 . Un schéma typique des réseaux d’entreprises. Je suppose que vous êtes capable de faire le bon câblage et que vous avez connecté vos machines au réseau.
Pourquoi la configuration réseau?
La config réseau est une tâche qui se répète le long du processus de l’établissement de votre Réseau, nous aurons besoin d’elle lors de la mise en place des serveurs (DHNS, SAMBA...) et des machines, donc il sera ingénieux de l’apprendre en premier avant de tenter quoique se soit. Le long de cet article nous allons découvrir: comment ajouter une machine linux à un réseau routé c.-à-d réaliser les opérations suivantes: • Configurer une interface réseau. • Configurer la table de routage • Spécifier le serveur DNS • Découvrir les commandes réseau utiles Pour mes serveurs j’utilise Opensuse 11, je vous recommande de l’installer sur votre machine ou utilisez la virtualisation. En parallèle je vais présenter la configuration pour débian/ubuntu,redhat/fedora/ Centos qui sont les plus utilisés d’après Tera-Magazine
Numéro 5 |Novembre 2012
46
SysAdmin
SysAdmin
Les étapes de mise en place d’un réseau Locale LAN: 1. Cablage des équipements. 2. Configuration du routeur ADSL pour avoir un accés internet. 3. Choix de l’adressage du réseau privé et le nom de domaine. 4. Installation et configuration des serveurs desirés (DNS,DHCP...). 5. Configuration des machines des utilisateurs 6. Sécurisation du réseau. 7. Monitoring. ur
te Rou
B
: 192.168.14.20 IP :: 192.168.14.22 192.168.14.22 IP
Serveur A
Fig1. Schéma du réseau local à réaliser.
47
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
48
Interfaces Réseau.
Au début j’attire votre attention à un point important: Sachez qu’un serveur ou une simple machine peut avoir un, deux ou plusieurs cartes(interfaces) réseau. Chacune d’elles peut être connectée à un réseau différent et donc elle peut être configurée différemment (pour bien comprendre je vous recommande l’excellent article de notre ami Mustapha daoui: TRANSFORMER UNE MACHINE EN ROUTEUR ET PARFEU parue en Numéro 3 de Tera magazine). Malgré que j’ai un serveur équipé par deux cartes réseau, j’aurais besoin que d’une seule. Sachez que vous pouvez ajouter une deuxième carte réseau à votre simple ordinateur. Chaque carte physique est représentée par une notation, eth0, eth1,.. retenez le bien. La première carte sera eth0, la deuxième eth1, troisième eth2, ainsi de suite. Le nom ‘eth’ signifie ethernet, car on utilise un réseau ethernet et non wifi (wlan0,..) ou autre. Pour connaître les interfaces disponibles Lancez votre fenêtre de commande (CLI) et tapez l’une des commandes suivantes • sudo Ifconfig • ip s a (ip adress show) • service network status (commande optionnelle)
IP. Ces deux commandes nous montrent les interfaces actives avec leurs configurations (ip, netmask,…). Je vous conseille d’utiliser la commande ip est très performante. Si une interface (eth0,eth1,wlan0..) qu’on veux configurer n’est pas activée on l’active en utilisant ifup ou ifconfig up. ifup nom_de_l’interface.
Configuration des paramètres réseau.
Dans cet article j’utilise eth0 ma première carte réseau. Je modifie la config de mon interface eth0 selon les données du schéma 1 pour avoir : Adresse : Ip 192.168.14.22 Netmask: 255.255.255.0 Network ID: 192.168.14.0 IP de diffusion: 192.168.14.255 Passerelle/Router IP: 192.168.14.2 Serveur DNS : 192.168.14.21
L’outil Ipconfig fait partie du package nettool avec d’autres outils comme :route, arp, netstat qui sont des outils traditionnels pour les anciens noyaux linux Iproute2 est le nouveau package qui offre l’outil ip comme remplaçant des commandes : ifconfig,route, arp, ss pour netstat et tc comme nouveauté.
1.Attribution d’ip
Nous allons opter pour une configuration persistante qui ne change pas après redémarrage
1.1 Sous Opensuse :
Fig.2 : les interfaces réseau disponibles par ip s a
Pour que la configuration sous opensuse/suse linux je modifie le fichier : /etc/sysconfig/network/ifcfg-eth0 (Pour eth1 on utilise le fichier Ifcfgeth1) Nous ferons appel à VI (éditeur de fichiers sous linux) pour le modifier Sudo vi /etc/sysconfig/network/ifcfgeth0
Fig.3 : informations des interfaces réseau
Ifconfig est la plus utilisée même si elle est un peu dépassée et remplacée par Fig.4: édition du fichier ifcfg-eth*
49
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk www.Teramagazine.tk
Si le fichier ifcfg-eth0 n’existe pas on peut le créer ou copier ifcfg-lo et modifier le par la suite . L’éditeur VI n’est pas simple à utiliser pour les débutants car il ne s’agit pas de block note (Windows). Pour modifier dans le fichier cliquer sur i pour passer en mode édition de fichier et changer ce que vous voulez, sinon vous pouvez utiliser gedit qui est un outil graphique.
Fig.5: édition d’un fichier ifcfg-eth* par gedit
Le fichier doit contenir les valeurs suivantes : BOOTPROTO=’static’ Cette option indique la méthode d’attribution d’ip. Pour un serveur l’IP doit être fixe (statique). On change static par la valeur DHCP si on veut acquérir notre ip d’un serveur DHCP. BROADCAST=’192.168.14.255’ Indique l’adresse de diffusion. IPADDR=’192.168.14.22/24’ L’adresse Ip est donnée en notation CIDR, donc plus besoin de spécifier le netmask et le network ID. Attention : Enlevez les éspace avant et après les signes ‘=’. STARTMOD=’auto’ Indique que la carte réseau est activée automatiquement. On utilise ifplugd pour quelle soit activée que lorsqu’elle est branchée au réseau. Pour sauvegarder et sortir de Vi pressez "echap" ensuite tapez :wq Après cette modification, vous devez redémarrer le service network pour que la nouvelle configuration soit prise en considération en utilisant une des commandes suivantes : • sudo /etc/init.d/networking restart • service network restat • ifdown eth0 ensuite ifup eth0. On utilise la première commande
si on a configuré plusieurs interfaces sinon pour cibler une seul, la commande ifdown/ifup suffit.
1.2 debian/ubuntu On modifie le fichier suivant : /etc/network/interfaces pour contenir les valeurs ci-dessous. auto eth0 iface eth0 inet static address 192.168.14.22 netmask 255.255.255.0 network 192.168.14.0 broadcast 192.168.14.255 gateway 192.168.14.2
Sysadmin
Sysadmin
mon expérience.
Enrigistrez et redémarrez le service réseau (même procédure qu’opensuse). L'option ‘auto’ indique que l’interface négocie automatiquement le débit et le mode utilisé. iface indique l’interface à configurer et le mode de configuration ‘static’.
1.3 Redhat /Centos La procédure pour Redhat et ses dérivés ressemble à celle suivi pour opensuse: On modifie le fichier vi /etc/sysconfig/network-scripts/ ifcfg-eth0
Fig.6: configuration de eth1 en redhat
pour avoir le contenu suivant : DEVICE=’eth0’ ONBOOT=yes BOOTPROTO=none IPADDR=10.1.3.8 NETMASK=255.255.255.0 IPV6INIT=no NM_CONTROLLED=’yes’ Redahat/Centos : En cas de configuration d’un serveur désactivez le NetworkManager: service networkmanager stop chckconfig networkmanager off et changer la valeur dans le fichier ifcfg-eth par ‘no’. Tera-Magazine
Numéro 5 |Novembre 2012
50
• gw pour indiquer la passerelle par laquelle le trafique doit passer pour atteindre notre destination
2.Configuration de la table de routage
2.3 Redhat /Centos
Sous Redhat nous ajoutons la ligne ‘Réseau cible’ via ‘passerelle’ Pour que la machine puisse communiExemple : quer avec différents réseaux, il faut que • 10.10.14.0/24 via 192.168.14.2 la table de routage soit configurée selon • default 192.168.14.2 notre schéma réseau. Au fichier Pour consulter la table de routage de vi /etc/sysconfig/network-scripts/routevotre machine utilisez eth0 route -n Vous devez redémarrer le service ou ajoutez les 2.1 Opensuse lignes network pour que les modificaLa route la plus importante tions de configuration réseau soient ADDRESS=’réseau est celle par défaut qui est cible’. prises en considération utilisée pour communiquer avec les réseaux externes. Selon notre schéma la route par défaut Netmask=’masque réseau' doit passer par le routeur B pour accéder GATEWAY =‘passerelle’ à l’Internet ou à un autre réseau lié au pour chaque chemin statique que vous routeur. voulez définir, sans oublier d’ajouter un indice à ces termes (adress0, adress1..).
Fig.7: table de routage .
Pour spécifier la route par défaut on modifie le fichier de routage suivant : Sudo Vi /etc/sysconfig/network/routes On ajoute la ligne default 192.168.14.2 - Pour d’autres route on ajoute la ligne : Destination routeur(gw) netmask ² On utilise le fichier routes si on veut appliquer le même routage aux différentes interfaces réseau, par contre si on veut appliquer le routage que sur une interface spécifiée on utilise le fichier / etc/sysconfig/network/ifroute-*. avec * représente le nom de l’interface ciblée (eth0,eth1..). Cette dernière méthode est utile dans le cas où les interfaces sont connectées à des sous-reseaux différents.
2.2 Ubuntu/deb
Pour ajouter une route sous debian/ ubuntu, c’est simple. On ajoute la ligne up route add -net 'réseau cible' netmask 255.255.255.0 gw 192.168.14.2 au fichier /etc/network/interfaces. • -net Destination
“
“
Test
Une fois la configuration a pris fin nous procédons à un test: On ping le routeur A pour tester la liaison machine routeur: Ping -c3 192.168.14.2 On vérifie si le ping réussit ou non. Au cas d’échec revérifier vos configurations.
3.Configuration du client DNS
La configuration du client DNS est identique pour opensuse,ubuntu,Debian… Dans le fichier resolv.conf nous indiquons les serveurs DNS vers lesquels les requêtes de résolutions nom domaine/ip seront envoyées. Sudo vi /etc/ et on ajoute nameserver 192.168.14.21 (DNS principal) nameserver 192.168.14.1 (DNS secondaire) Pour linux le nombre de serveurs DNS a déterminé est illimité on peut mettre n serveurs DNS dans le fichier resolv.conf. Désormais notre machine est bien connectée à notre réseau avec un ip statique et un routage vers le routeur B.
Test DNS:
Nous testons notre configuration en
utilisant nslookup pour demander une résolution de nom de domaine au serveur DNS: nslookup google.ma Notre serveur DNS principale n’est pas encore mis en service donc la réponse sera fournie par notre serveur DNS secondaire qui est dans notre cas le routeur ADSL(IP: 192.168.14.1) qui a un DNS
machine cible • Arp Chacun de ces outils offre plusieurs options que vous pouvez consulter en lisant le manuel ou en utilisant help Man commande commande --help Amusez vous bien.
Sysadmin
Sysadmin
Après enregistrement on exécute un redémarrage du service networking. (Même procédure qu’opensuse).
Configuration par outil graphique :
Si vous êtes en train de configurer une machine munie d’un environnement graphique, sachez que chaque distribution
Fig.8: résolution du nom de domaine à l’aide de nslookup
intégré. Votre machine désormais peut communiquer sans problème avec votre réseau. Il peut reconnaître le serveur DNS et le routeur et le reste du réseau.
Commandes à apprendre
Passons maintenant à un survol des commandes réseau les plus utilisés Fig.10: L’outil Yast2
nslookup www.example.com consulte le serveur DNS pour résoudre le nom en adresse ip et vice versa • Dig : permet de diagnostiquer les dysfonctionnements dans la résolution de nom • nbtscan : permet la résolution des noms netbios. • Netstat: un outil permettant de connaître les connexions TCP actives
linux possède un gestionnaire graphique pour la configuration réseau. Pour Opensuse on utilise yast2.
Fig.9: résolution du nom de domaine à l’aide de host
et lister l’ensemble des ports TCP et UDP ouverts sur l’ordinateur. • Host : fort utile lors d'un audit car elle permet l'interrogation de serveur DNS de façon très simple • Traceroute : permet ainsi de dresser une cartographie des routeurs présents entre une machine source et une Fig.11: édition des paramètres réseau de l’interface eth1
51
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
52
Vous avez appris au cours de cet article la configuration des paramètres d’une interface réseau qui s'avère une taâche très importante pour la mise en place d’un réseau à administrer.
Fig.12: informations sur les interfaces disponibles à l’aide de yast2
pour l’invoquer utilisez sudo yast2 Yast2 est une interface graphique pour gérer votre linux en entier se présente. Consultez la partie sysconfig pour configurer les paramètres réseau de votre interface (Fig.11). Je rappelle que c’est une mauvaise habitude de se contenter de la configuration par outils graphiques.
Configuration non persistante : En utilisant la méthode de configuration précédente qui se base sur la modification des fichiers. Les paramètres de configuration sont conservés lorsque le système est éteint. Cependant, si on veut avoir une configuration non persistante on a recours à des lignes de commandes spécifiques. Pour l’attribution de l’IP 192.168.14.22 à une interface (eth0) on utilise
Le mois prochain nous allons procéder à mettre en place notre serveur DNS (192.168.14.21) principal.
La Notation CIDR :
Les RFC1518, RFC4632 ont introduit une notation supplémentaire pour désigner le masque. Au lieu d'exprimer le masque de réseau sous la notation décimale pointée utilisée pour les adresses IP, il est désormais possible d'indiquer simplement la taille (en bit) du masque après l'adresse en les séparant pas un slash. Concrètement, les deux notations suivantes sont donc identiques:
Sysadmin
Sysadmin
Fin
Notation avec masque 169.232.134.25 (adresse IP) 255.255.192.0 (masque) Notation CIDR 169.232.134.25/18 La notation CIDR permet de définir de manière compacte le masque de réseau associé à une adresse IP. Avec ce système, il est implicite que les bits à 1 du masque sont les bits de poids fort de celui-ci.
♺Astuce
Ci-dessous des Astuce linux utiles pour simplifier l’utilisation de la console: Ctrl+l : équivalent de la commande clear qui efface les commandes tapées. ctrl+r : pour faire une recherche dans l’historique des commandes. history: affiche une liste des commandes déjà utilisées. !! : Pour exécuter la dernière commande.
►ifconfig eth0 192.168.14.22 netmask 255.255.255.0 broadcast 192.168.14.255 ou ▶ip addr add 192.168.14.22/24 broadcast 192.168.14.255 dev eth0.
Fig.12: Notation CIDR
routes Pour 7outer tout le trafic via le routeur 192.168.14.2 ‘connecté’ à l’interface eth0: ►route add default gw 192.168.14.2 eth0 ou ▶ip route add 192.168.14.0/24 dev eth0 Quand linux redémarre il oublie les configurations indiquées par ces commandes. L'atout de ce moyen c’est que c’est universel entre tous les distros linux.
53
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
54
Une discussion Autour
Né à Taroudant en 1983, Titulaire d’un bac sciences maths et lauréat de l’ENSIAS, option Informatique et aide à la décision. Une fois le diplôme en poche j’ai débuté mon carrière dans une filiale de France Telecom (Sofrecom) où j’ai été membre de la MOA BI et responsable du reporting. Actuellement je suis responsable BI de la SNRT.
Le Business Intelligence D
ans une initiative que propose Tera magazine à ces lecteurs. Nous présentons des compétences maro-
55
Tera-Magazine
Numéro 5 |Novembre 2012
caines dans différents domaines en relation avec l’informatique afin de bénéficier de leurs expériences et décou-
vrir leurs métiers. Nous aurons durant cet article une Interview avec MR Taoufiq ZARRA pour nous parler du BI.
www.Teramagazine.tk
Q
Pourriez-vous nous donner une idée sur votre domaine BI, de quoi s’agit-il
Business intelligence
scolaire et professionnel ?
ciale on a réussi à avoir des tableaux de bord de pilotage des réseaux de prévision de vente et d’optimisation. On était aussi parmi les premiers au Maroc à avoir connecté notre solution BI avec l’ERP JD Edwards (comptabilité, achat, déplacements) ainsi que les ressources humaines depuis AGIRH et la présidence et la direction générale pour les tableaux de bord, indicateurs de pilotage, gestion d’alertes,...
faire une différence entre Q lePeut-on BI et le management du système d’information ?
La BI ou l’informatique décisionnelle comme son nom l’indique désigne l’en Le domaine BI ou business intelligence semble de technologies permettant de est un domaine très vaste et chaque jour traiter, valoriser et présenter les donde nouveaux concepts même de nounées à des fins de compréhension d’ana veaux métiers sont nés de la BI. lyse et de décision. Par contre, le management du système d’information est unEn fait la SNRT est inscrite dans un ensemble de connaissance et des outilsgrand chantier de la gouvernance d’où de gestion la création de données. de notre Pour un diri cellule qui La BI ou l’informatique décigeant la BI s’occupe a c c o m p l i esionnelle comme son nom l’inde l’impléle manage mentadique désigne l’ensemble de ment du SI, il tion d’un a besoin destechnologies permettant de système outils d’ac décisiontraiter, valoriser et présenter les cès à l’infor nel pour données à des fins de comprémation ett o u t e s prendre deshension d’analyse et de décision les actidécisions vités par d’où l’infor exemple m a t i q u e le contrôle décisionnellede geset aussi à des outils de gestion de don tion pour l’analyse des coûts, l’analyse nées d’où le management du système de rentabilité, on a réussi à avoir un d’information. système BI référence dans le domaine -
?
“
d’audiovisuel qui consiste à contrôler les productions ainsi que l’estimation des devis, avec la direction commer-
“
Business intelligence
Au début donnez nous une idée Q brève sur vous et sur votre parcours
Tera-Magazine
Numéro 5 |Novembre 2012
56
Business intelligence
Q
Quel sont les outils que vous utilisés ?
J’ai commencé à réaliser des projets en utilisant pentaho pour les comptes de SOFISOFT, NEXTMA, DRAPOR, etc. Après pendant les deux ans que j’ai passés à SOFRECOM, j’ai réalisé des TB avec BO pour les grands comptes de France Telecom comme Crédit agricole ou PMI, STmicroelectronics, JTI, UMT, ... Finalement la solution que je juge magique est Qlikview où pour un habituer des outils BI toutes les étapes du projet on peut deviser facilement le temps de réalisation par 10, c’est un outil simple dans l’utilisation rapide dans le traitement et surtout sexy dans la représentation des tableaux de bord.
de chargement ont bien terminé puis je planche sur les projets en cours. Je parcours la chaîne depuis le début, la collecte de besoin, jusqu’à la présentation des rapports.
Q
Quelles sont les compétences que vous jugez nécessaires pour un spécialiste en BI sur le plan technique et personnel. Je peux dire que tout le monde peut faire de la BI principalement la compétence technique nécessaire est la maîtrise du SQL après l’outil BI. Du côté personnel il faut avoir de la patience avec les utilisateurs et surtout savoir écouter et poser les bonnes questions.
"Je
Quelles sont les pense que conseils que vous donActuellement je suis entrain nez à ceux qui veulent la BI au Maroc d’auto formé sur la solution débuter dans ce Microsoft BI pour un noucomme partout au domaine ? veau projet monde est en plein Je peux dire que Quels sont Les proQ blèmes que vous rencon- expansion chaque personne qui maîtrise de l’SQL peut trez ? dire ‘BISMILAH’ dans la " BI surtout si elle est encaComme tout consulting l’expression de besoin manque parfois de précision, les indicateurs demandés sont parfois trop vastes et les premiers jours d’implémentation sont toujours les plus difficiles, les utilisateurs disposent parfois de leurs propres indicateurs alors si ne reçoivent pas les mêmes résultats l’insatisfaction sera élevé.
Q
drée par une bonne équipe, un conseil toujours commencé petit et je juge que la meilleure école pour un consultant BI est l’ETL.
Comment vous voyez le BI au Maroc ?
Moi je pense que la BI au Maroc comme partout au monde est en plein expansion surtout avec la commercialisation maintenant des solutions à la portée des PME.
Q
Le virus W32/VBWorm connu sous le nom virus des raccourci exploite une faille de sécurité de Windows pour changer un dossier existant sur le lecteur flash dans une icône
L
de raccourci. Il peut transférer les copies de lui-même à d’autres ordinateurs via le réseau sans aucune permission. Ce virus subsiste même après un formatage et il est rarement détecté par les Antivirus donc vaux mieux l'éradiquer et réparer les dégâts provoqués. Astuce Vous pouvez accéder aux dossiers perdu (caché par le virus) par adresse (I://dossier_ infecté) et non par l'explorateur Windows.
Les 4 étapes de l’extermination: le remède sera pris par ‘prises’. 1 Activez l’option d’affichage des fichiers et dossiers cachés. 2 supprimez tous les fichiers suspect de votre USB. 3 lancez la fenêtre de commande et ceci en pressant Windows+R ensuite en tapant CMD ou cliquez sur démarrer ensuite taper cmd. 4 Je suppose que le nom de votre USB est
www.Teramagazine.tk
Pourriez-vous nous donner un exemple de taches quotidiennes que vous faites ?
M: exécutons la commande suivante :
attrib -h -r -s /s /d M:\*.*
Comme je suis le responsable du système BI, chaque matin je consulte les journaux de l’ETL afin de s’assurer que les batchs 57
Le remède contre le ‘Shortcut Virus’
S
i un jour vous explorez votre clé USB et vous y trouvez des raccourcis et quelques fichiers étrangers, sachez alors que vous êtes infecté par le virus des raccourcis ou 'shortcut virus' en anglais. Ce virus et l'un des virus les plus répandus qui ciblent les USB et les disques durs externes.
Tera-Magazine
Numéro 5 |Novembre 2012
Quelques minutes plus tard selon la taille de votre USB, l’opération prend fin. www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
58
À la découverte de
D
urant mes projets de développement d’applications graphiques, je me trouve des fois face au choix difficile de la solution que je dois implémenter pour mon interface graphique. Le choix étant limité aux moyens que je maîtrise: Qt/C++, MFC, les Winform standard, WPF. Je mets entre mes yeux, pour opter pour une solution, les contraintes suivantes: Qt/C++, MFC, les Winform standard, WPF. je met entre mes yeux, pour opter pour une solution, les contraintes suivantes : Complexité dans la programmation et la maintenance Design Performance et support de bug 59
Tera-Magazine
Numéro 5 |Novembre 2012
L’interopérabilité Pourtant le choix reste difficile. Notre but ici n’est pas d’évaluer ces outils car chacun a ses points forts et faibles qu’il faut connaître pour bien choisir. Pour vous donner une idée : Si je développe une application gourmande en accélération GPU et qui a besoin de beaucoup d’interaction avec l’utilisateur je compte bien pour QT qui profite bien de la puissance du C++, en plus QT est portable et très bien documentée. Je fais des compliments à une technologie que je ne présente pas dans cet article. Je crois que je me suis emporté, revenons à notre WPF. Si j’opte plus pour le
design et les effets graphiques, je choisi bien WPF. Quoique ce choix me lie directement à la Plateforme .NET(c#, XAML) et au OS (>=Win XP). WPF est épaulé par de outils de design très performants que ça soit Visual studio ou Microsoft Expression Blend, qui peut réaliser des chefsd'œuvre graphiques. La discussion ne finira jamais sur la comparaison des technologies d’interfaces graphiques Je vous laisse juger vousmême WPF après son utilisation. L’article est pour vous apprendre une technologie que je qualifie de simple à utiliser surtout pour les « mauvais développeurs » aussi bien pour les bons. www.Teramagazine.tk
W
indows présente son WPF ,comme étant un système de présentation de nouvelle génération qui génère des applications clientes ,Windows avec des expériences utilisateur visuellement surprenantes. Avec WPF, vous pouvez créer une large gamme d’applications autonomes et hébergées par un navigateur. WPF est créé pour tirer parti du matériel graphique moderne. WPF offre un jeu complet de fonctionnalités de développement d’applications qui incluent XAML (extensible Application Markup Language), des contrôles, la liaison de données et la disposition ainsi que des graphiques 2D et 3D, l’animation, les styles, les modèles, les documents, les médias, le texte et la typographie. WPF est inclus dans le Framework Microsoft .NET, vous pouvez donc générer des applications intégrant d’autres éléments de la bibliothèque du Framework .NET. WPF existe comme sousensemble du Framework .NET situé dans l’espace de noms System.Windows.
Procédure pas à pas : mise en route de WPF Cette procédure pas à pas vous initie au développement d’une application Windows Presentation Foundation (WPF) qui inclut des éléments communs à la plupart des applications WPF : balisage XAML, code-behind, définitions d’applications, contrôles, etc.
Le coin du développeur
Le coin du développeur
Présentation de WPF
Création du projet d’application Dans cette section, vous créez l’infrastructure de l’application, qui inclut la définition de l’application. Commençons !!
Objectif de l’atelier Le but sera de créé une application Windows WPF autonome simple sous forme de formulaire qui Fig.1: Création du projet WPF pose une question aux utilisateurs et Lancez le Visual studio, nous allons comvérifie la réponse. Le code du projet est mencer par créer un nouveau projet disponible à http://goo.gl/QR9B3 WPF.
Outils :
Vous devez disposer du visuel studio, vous pouvez télécharger sa version express ou complète. De mon coté j’utilise Visual studio 2010 sur un Windows 7.
Pressez CTRL+N, Pour avoir la fenêtre suivante : Nommez votre projet, je lui donne le nom Tera. Après création vous aurez devant vous une interface vierge ainsi qu’un fichier Tera-Magazine
Numéro 5 |Novembre 2012
60
J’attire votre attention à un point c’est que si vous changez une valeur par le gestionnaire des propriétés, le fichier XAML sera changé automatiquement.
♺Configuration du WPF:
Le coin du développeur
Le coin du développeur
Pour visualiser le résultat obtenu générez et exécutez l’application en appuyant sur F5 ou sélectionnez démarrer le débogage dans le menu Déboguer (Fig5). L’illustration Fig.4 montre l’application avec les contrôles insérés. Fermez l’application à retourner à Visual Studio. Vous avez réussi ainsi le premier pas.
XAML qui définit l’application WPF et toutes les ressources d’application.
Maintenant, Nous allons configurer et personnaliser notre interface et ses composants. Cette opération est simple, vous avez deux moyens pour le faire : • Éditer le fichier XAML. • Utiliser l’outil ‘properties’ qui se trouve à droite en tabulation avec l’explorateur des fichiers du projet (fig.6). Pour modifier les propriétés d’un composant, il suffit de le sélectionner et changer la valeur de l’attribut qu’on veut. Exemple pour changer le titre de l’interface WPF : Je la sélectionne (je clique dessus) et je change l’attribut ‘title’ qui a comme valeur MainWindow en Tera magazine vous, pouvez aussi attribuer une icône en utilisant le champ ICON, vous pouvez aussi changez la couleur de fond, etc. Bref, je vous laisse découvrir le reste.
Fig.2: l'éspace de travil Visual studio 2010.
Un premier essaie
Vous pouvez désormais peupler votre interface avec les composants disponibles dans le ‘toolbox’ (J’utilise Visual studio en anglais en français ça doit être ‘boite à outil’). Commencez à glisser (drag and drop) les composants vers l’interface graphique pour avoir une idée de quoi il s’agit. Vous remarquez qu’il existe un très grands nombre d’outils, testez-les. De mon côté, je glisse les éléments qu’on utilise fréquemment : Je glisse un TextBox, un comboBox, un bouton, un textblok ou label, un peu du sel, du poivre…
Pour utiliser XAML c’est aussi simple, une fois que vous sélectionnez un composant vous êtes directement sur sa ligne de définition XAML, changer le comme vous voulez. <TextBlock Height="23" HorizontalAlignment="Left" Margin="87,177,0,0" Name="textBlock1" Text="" VerticalAlignment="Top" Width="146" /> Fig.6: les propriétés des composants.
Fig.3: ToolBox ou boite d'outils
Fig.5: Menu de debug
Fig.4: Intérface initiale
61
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Fig.7: Fichier XAML de l'application.
Tera-Magazine
Numéro 5 |Novembre 2012
62
Le coin du développeur
private void button1_Click(object sender, RoutedEventArgs e) {
Je suppose ici, que vous êtes devenu familier avec la gestion des composants et de leurs attributs. Nous passons à la réalisation de notre application qui aura comme apparence finale :
Fig.10
jets. La fenêtre suivante s’affiche pour créer les objets dont leurs contenus seront les valeurs de notre menu.
Δ Ajoutons des Labels : Déplacer les composants selon l’ordre qui vous convient car l’ordre n’as aucune influence sur le fonctionnement de l’application juste un truc de designer.
Pour que l’utilisateur comprend de quoi il s’agit on ajout des labels, pour modifier leurs contenu changez l’attribut ‘content’. Donnons un nom à notre bouton du formulaire, changez la valeur de l’attribut content par ‘vérifier’.
Δ Menu Déroulant
ΔAjout d’image :
Fig.8: intérface finale de notre formulaire
Le menu déroulant comportera les questions auxquels l’utilisateur va répondre. Donc nous remplissons notre combobox ou ‘menu déroulant’ par les valeurs suivantes (chaînes de caractères) : • ’Sur quel langage se base WPF?(c sharp,VB..)’ • Quel environnement de dev. est utilisé’ Pour le faire, nous aurons besoin du gestionnaire des propriétés que nous avons déjà vu pour modifier et ajouter des ‘Items’.
Fig.9
Glissons le composant image dans notre WPF et changeons l’attribut source pour introduire une image.
ΔBouton Button (qui permettra de vérifier la réponse donnée à la question sélectionnée dans la liste). Enfin débuggons, pour voir le résultat (F5).
Donnons de la vie à cette interface : Nous allons coder un peu !! Ne vous effrayez pas c’est assez simple même si vous n’êtes pas familier avec C#. Cliquez de fois de suite sur le bouton ‘vérifier’ dans votre interfaceWPF, vous serai diriger vers le code. C’est (code behind) de votre application. Vous obtenez une nouvelle fonction :
} Il s’agit de la fonction qui se mettra en exécution après que le bouton soit pressé par l’utilisateur. Dans cette fonction on définit le traitement qu’on veut des donnéss. Tout d’abord sachez que chaque composant est identifié par un nom unique (l’attribut Name). Notez-le bien. Dans notre exemple, nous voulons vérifier la réponse donnée par l’utilisateur et afficher le résultat donc on aura besoin de récupérer la question choisie et la réponse donnée. Pour cela On aura besoin des noms des composants ciblés. Dans cet exemple Le nom de la liste déroulante est comboBox1 et le champ texte est textBox1. Mettons le code suivant dans la fonction précédente ////////////////////////////////////////////////// if (comboBox1.SelectedIndex == 0) { if( textBox1.Text == «c sharp») textBlock1.Text = «bonne réponse»; else textBlock1.Text = «erreur»; } ///////////////////////////////////////// if (comboBox1.SelectedIndex == 1) { if (textBox1.Text == «visual studio») MessageBox.Show(«bonne réponse»); else MessageBox.Show(«erreur»); }
comboBox1.SelectedIndex représente l’index du contenu de la liste déroulante. Dans notre cas on a deux valeurs (2 questions) la première aura l’indice 0 et la deuxième l’indice 1donc en récupérant l’indice nous serons de quel valeur s’agit-il ? (question) textBox1.Text contient la valeur donnée par l’utilisateur (la réponse). textBlock1.Text = «bonne réponse»; pour imprimer un message ‘ bonne réponse’ sur l’interface. MessageBox.Show(«bonne réponse»); génère un message sous forme d’alerte comme le montre la figure suivante :
rueppolevéd ud nioc eL
Finalisons notre application
Vous disposez maintenant de plusieurs Fig.11: résultat du MessageBox.show() techniques vous permettant de créer une interface utilisateur avec Windows Presentation Foundation (WPF) .Modifier le code comme vous voulez, le principe est le même pour tous les types de composants (contrôles), pour récupérer le contenu ou pour changer leur valeur. Vous pouvez consulter la MSDN de Microsoft pour une description détaillée de chaque composant et de ses attributs. Le projet sera disponible sous le lien suivant : C’est tout ce qu’a permis mon temps. Inchalah, dans la suite je vais vous faire découvrir plus de tour. L’important étant toujours le début. Assurez-vous bien que vous avez réussi le projet qu’on vient de réaliser et que vous avez bien compris ce qu’on a fait. Si vous avez besoin d’aide je suis à votre service. Au mois prochain.
On choisit d’ajouter une collection d’ob63
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
64
Utilisez votre appareil mobile avec une souris
Android Zone
Android Zone
s e l g g o G e l g Goo Δ Faites des recherches en prenant des photos
V
otre appareil Android est capable de faire plus de ce que vous croyez. Si votre appareil est compatible avec la norme USB-OTG, vous pouvez connecter une souris USB à votre appareil mobile pour le contrôler comme un d’ordinateur.
G
oogle propose une application de recherche surprenante sur son googleplay pour les appareils android, il s'agit de goggles. vous n'avez pas le temps d'écrire votre recherche ou si tout simplement vous recherchez des informations sur ce qui est devant vous. Dirigez l'appareil photo de votre mobile vers un tableau, un site célèbre, un produit, une devanture de magasin ou une image populaire,un code-barres ou un code QR,. Si Goggles trouve ces éléments dans sa base de données, il vous renverra des informations utiles les concernant. Goggles peut reconnaître des textes en allemand, en anglais, etc. et les traduire dans d'autres langues. Goggles peut également lire des codes-barres et des codes QR.
1
Localisez le mini port USB de votre appareil. Il se trouve souvent en tête. Branchez un adaptateur USB/mini-USB que vous pouvez trouver chez les vendeurs.
2
Connectez votre souris USB à l’adaptateur USB. Si la souris ne s’allume pas changez la. Il se peut qu’elle soit incompatible avec l’appareil.
3
Un petit curseur s’affichera par la suite au centre de votre appareil. vous aurez les mêmes fonctionnalités que sur votre bureau Windows/Linux.
Fonctionnalités :
USB OTG: Vous pouvez fabriquer votre propre câble USB OTG. Lisez l’article TeraLabo P 73
• Reconnaissance de sites célèbres • Traduction d'un texte pris en photo • Ajout de contacts en numérisant une carte de visite ou un code QR • Numérisation de textes à l'aide de la reconnaissance
optique de caractères • Reconnaissance de tableaux, de livres, de DVD, de CD et de presque n'importe quelle image 2D • Résolution de sudoku • Recherche de produits similaires
Δ Disponible à http://goo.gl/4qMKt 65
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
66
S
V
Faites de votre android un mouhadine
ous êtes loin des mosquées et vous n’entendez pas les appels aux prières ou si vous voulez savoir quand l’adhan sera lancée cette application est faites pour vous. Maroc Athan est la première application d'Athan spécialement conçu pour le Maroc. Aucun calcul n’est effectué au niveau de l’application, tous les horaires sont issus de la base de données du Ministère des Habous donnant ainsi une exactitude impressionnante. Fonctionnalités de l'application : • Athan selon le ministère des habous. • Plus de 300 villes marocaines sont disponibles. • 6 Mouadhinin sont disponibles dont 4 marocains. • Possibilité de programmer un bip sonore au lieu du mouadhin. • Un bip sonore peut être configuré avant chaque salat. • Possibilité de programmer salat Doha, un bip est émis 30 minutes après shourouk, un autre est émis 30 avant dohr pour signaler la fin du doha. • Possibilité d'apprendre des ahadith de saidouna Mohamed salla lah 3alayhi wa sallam. • Mode répondeur : Mets le téléphone en mode silencieux et envoi un message sms aux personnes qui vous appellent pendant votre salat. • Possibilité de désactiver le sms du répondeur. • Réveil Fajr : Permet de programmer un réveil avant le fajr (en nombre de minutes avant fajr) • Possibilité de personnaliser la sonnerie du réveil. • Widget Ahadith. • Widget horaire salat.
67
Tera-Magazine
Numéro 5 |Novembre 2012
i vous aimez griffonner sur votre téléphone et vous aimer la peinture nous vous présentons une application qui vous intéressera sur Android. Markers est une application libre, de peinture numérique pour le système d'exploitation Android de Google, à destination des téléphones portables et des tablettes tactiles. Il a la particularité d'être capable de gérer la pression du doigt en fonction de la surface du doigt étalée sur
Android Zone
Android Zone
Dessiner sur Android avec Markers ceaux qui sont facilement accessibles d'une simple pression. L'autre caractéristique qui a vraiment attiré mon attention est la sensibilité à la pression. Il fonctionne très bien et immédiatement il suit mon doigt sans problème. Vous pouvez changer l'épaisseur des lignes parfaitement quand l'ongle de pression de vos doigts change cela vous donne un bon contrôle des pinceaux. Je vous invite bien à l'essayer.
l'écran, Markers rend les dessins sur votre tablette ou téléphone facile. Il possède les mêmes caractéristiques qu'une application de dessin sur ordinateur, vous obtiendrez des pinceaux, des couleurs, etc. ... mais c'est la façon dont il s'acquitte de ces actions qui lui permet de se démarquer du reste. Tout d'abord, l'interface est simple et facile à utiliser. Un Enfant ou adulte n'aura aucun problème à trouver son chemin dans les couleurs et les pinΔ Disponible à http://goo.gl/k4U4G www.Teramagazine.tk
Δ Disponible à http://goo.gl/ZrOVY Tera-Magazine
Numéro 5 |Novembre 2012
68
Tera-labo
Tera-Labo
TERA-Labo Créer un adaptateur
USB ON THE GO
"Connectez une souris ou un clavier à votre smartephone"
L
a plupart des téléphones portables et tablettes Android prennent en charge l’USB OTG (On-The-Go). Cette norme permet à utilisateur de connecter à son appareil des périphériques d’entrée USB tels que les claviers et les souris, ou même s’étendre au stockage à l’aide d’une clé USB ordinaire et ceci à travers le port USB que vous utilisez pour charger ou pour communiquer avec un ordinateur. Les câbles utilisés pour le USB on-the-go sont à portée, vous pouvez les acheter de votre magasin de matériel informatique avec une dizaine de dirhams sinon si vous êtes passionné par le bricolage ou pour faire des économies, vous pouvez le créer vous-même. Dans cet atelier nous allons découvrir comment réaliser un câble OTG.
v
69
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
70
Durant cette expérience, vous aurez besoin de quelques équipements pour travailler, rien de trop exotique. Tout ce dont vous avez besoin est dans la boîte à outils standard d’un bricoleur. •Soudeur de fer. •Soudures •Un couteau •Ruban isolant •Briquet •Un câble mini USB (câble 1) •Un câble d’extension USB avec extrémité femelle (câble 2)
Une fois que vous avez ouvert le connecteur, vous verrez les fils de couleur soudés aux petites épingles. Ces broches et les fils correspondants sont présentés au tableau ci-dessous. Broche 1 Le fil rouge (VCC) Broche 2 Fil blanc (DATA -) Broches 3 Fil vert (DATA +) Broche 4 Broche 5
Aucun (ID de connexion) Fil noir (SOL)
Points de soudure Ce que vous devez faire est de lier la quatrième broche (la connexion ID) à la broche cinq (sol) comme l’indique le schéma suivant(Fig.3) :
USB femelle du câble 2. Préparez les files à lier et enlever la gaine qui entoure les files électriques à l’aide du briquet (Fig.4).
Tera-Labo
Tera-Labo
▶Préparation.
❖Étape 3 Regroupement des câbles Regardez les fils, si vous avez les mêmes couleurs entre les deux câbles, votre tâche sera très simple. Il suffira de relier les fils de mêmes couleurs. Si les couleurs diffèrent, consultez le schéma de la figure 3. Ouvrez l’extrémité mâle du câble 2 que vous avez coupé et vérifiez les broches. Raccordez les deux parties ensemble, en veillant à mettre votre tube rétractable en place avant de faire les connexions. Prenez le temps d’avoir de bonnes, soudures solides. À la fin collez la liaison entre les deux câbles avec du ruban adhésif.
Fig.6
Fig.1: matériel de bricolage
Avec ses outils nous allons trancher les deux câbles et les lier pour en faire un seul avec deux extrémités une USB mini mâle et l’autre USB femelle (Fig.6).
❖Étape 1
Avant de commencer il faut préparer l’extrémité mini USB en réalisant une soudure au niveau des broches de la tête. Pour le faire prenez votre câble micro USB et coupez la gaine extérieure loin de la petite extrémité.
Fig.3: soudure à faire au niveau de l'extrémité mini-USB
Dans un câble USB simple la quatrième broche est ouverte par contre dans un câble USB OTG elle est mise à la terre.
❖Étape 2
Après que la soudure à été bien faite, Coupez l’extrémité du câble 1 pour avoir le mini USB et coupez aussi l’extrémité
Fig.5: Regroupez les fils
❖TEST
Branchez le câble dans votre téléphone ou votre tablette. Prenez une vieille souris filaire USB, connectez-la à l’autre bout du câble réalisé. En quelques secondes, vous devriez voir un pointeur de la souris sur votre appareil (fig.7). Si la souris que vous utilisez dispose d’un capteur au lieu d’une balle, vous verrez aussi qu’il s’allume dès que vous la branchez.
Fig.7: Apparition du curseur sur l'écran de votre mobile Fig.2: préparer la tête mini usb à la soudure
71
Tera-Magazine
Numéro 5 |Novembre 2012
Fig.4: brûler la protection des fils en cuivre.
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
72
تهدد تويتر
فكما هي. "أجزم أن غالبية من يقرأ هذا المقال يسمع ألول مرة بالشبكة اإلجتماعية "فييد ةده المرة يتعلق األمر بموقع. العادة بالنسبة للمواقع فالنجاح يبدأ في أمريكا لينتشر في العالم نجح في جذب في أيام معدودة مليون مستخدم. فيد هو شبكة تواصل إجتماعي قريبة جدا من تويتر و فيسبوك تسمح بنشر تحديثات ال يتجاوز الفيديوهات، إضافة إلى إتاحتها نشر الصور،) مرات مايسمح به تويتر3( حرفا420 طولها هذه كلها خواص الشبكات االجتماعية المعروفة على الساحة لكن يتميز..والملفات الصوتية مما يربحونه% 50 فيد بتمكين مستخدميها من اإلستفادة المادية مما ينشرون وتأخذ الشبكة. عند التسجيل يعرض عليك الموقع االختيار بين جعل قراءة ماتنشره مجاني للمتتبعين أو يؤدى ً عنه لكن من الصعوبة إقناع المستخدم العادي أصدقاءه ومتابعيه أن يدفعوا مال مقابل قراءة ما ينشره على صفحته التواصلية ويبقى االمر ممكنا عندما يكون االداء من اجل محتوى حصري او مفيد خاصة ان المبلغ المحدد من طرف المستخدم يكون هزيال لكن مع تراكم هده المبالغ قد يجني المستخدمون المال الوفير ً ،وهكذا ويروجون ألنفسهم، يغردون ويثرثرون مقابل ثمن،بدل من التغريد والثرثرة من دون طائل يعتبر فييد أول محإولة لجعل هذه الشبكات.ويبيعون منتجاتهم لمعجبيهم بشكل مباشر اإلجتماعية تدر دخال من خالل نشاط المستخدم بها. لحد االن الموقع مستعمل من طرف المشاهير لعرض منشوراتهم لمتتبعيهم مقابل اشتراكات مادية بسيطة ”هل أخاف “فيد فمن.تويتر؟ بالتأكيد يرضى بما هو مجاني إن الحت أمامه فرصة تقاضي األجر؟ الدليل على خشية تويتر منعه موقع فيد من توفير إمكانية تسجيل دخول المنتسبين الجدد إلى الموقع من خالل حساباتهم في تويتر. االيام القادمة ستبين مدى إمكانية نجاح فكرة فييد
يمكنكم زيارة صفحتنا على موقع فييد على الرابط التالي www.pheed.com/teramagazine
73
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk www.Teramagazine.tk
T
here are a lot of professions that require 8 to 12 hours of work each day on a computer. This is very harmful for eyes. For your body generally. Much time spent on front of computer causes eye fatigue, redness, itching and gradual worsening of vision, carpal tunnel syndrome and spinal injuries. You have to protect yourself so you can get your best work done without compromising your own well-being. Here are several things that you can do to protect yourself from your computer.
How to protect your eyes? Focusing your eyes at the same distance point for extended periods of time causes fatigue. • Make sure you don’t work in a dark room. Place your computer so that reflection of light don’t bother you. • Determine the optimal distance from the screen to your eyes. • Your monitor should be at a level slightly below the horizontal eye level. Tilt the screen a little away from yourself. • Ensure that your monitor’s contrast is properly adjusted. • Frequently look away, turn your head and try to look at any faraway objects. placed at least 20 feet away.This changes the focal length of your eyes, a must-do for the tired eyes. • When you feel tired, close your eyes
English Topic
Pheed.com
Pheed
الشبكة االجتماعية الجديدة
Protect your eyes when you are using a computer
firmly and open them quickly 20 times in a row in a series of 5. This exercise will have an improved effect if you’ll do it in the morning • Blink, blink and blink again. Don’t forget to blink as this is one of the most important tips to keep your eyes in good shape. • Close your eyes, from time to time. Take some time and lie down, with your eyes closed. When possible, why not, take a quick nap. At last, there's a some medications that your doctor can advise you. so take your appointment. Don't forget ; An ounce of prevention is worth a pound of cure. Position monitor 18" to 24" away (approximately arm's length) and about 15' to 30' below your line of sight
Don't let light shine in your eyes or on your screen
Square screen to your line of vision
Tera-Magazine
Numéro 5 |Novembre 2012
74
Quize
ComicSpace
Le vrai Facebook
Mission Impossible
Participez et gagnez un switch 24 ports : Combien de paires de fils utilise un câble ethernet 100MB/s pour la transmission des données? Envoyez vos réponses à tera.revue@gmail.com pour participer à la tombola
la recherche sur internet est interdite.
La réponse de la question précédente = 75
Tera-Magazine
Numéro 5 |Novembre 2012
fonction trim() www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
76
ComicSpace
Laissez Votre adresse mail sur le petit formulaire de 'subscrib' pour recevoir les prochains Numéros de Tera-magazine
www.teramagazine.tk
1
Consultez notre SiteWeb www.teramagazine.tk
+ Samsung Vs apple
Donnez Votre Email.
2
Mission Impossible
=
3
Récevez les numéros de Teramagazine.
www.Teramagazine.tk
77
Tera-Magazine
Numéro 5 |Novembre 2012
www.Teramagazine.tk
Tera-Magazine
Numéro 5 |Novembre 2012
78
Vous
pouvez nous rejoindre pour partager vos connaissances Envoyez vos participations à TERA.REVUE@GMAIL.COM
79
Tera-Magazine
Numéro 5 |Novembre 2012
facebook.com/tera.maga @terarevue
http://goo.gl/jwYF0 tera.revue@gmail.com
>>FAITES NOUS
SAVOIR CE QUE VOUS VOULEZ LIRE DANS NOTRE PROCHAIN NUMÉRO.
www.Teramagazine.tk