The Butterfly Effect (2)

Antonio Fontes / Blog / Conseil / Communication / Genève / HEG / Intelligence et guerre économique / Management et sécurité de l'information / NTIC / Sécurité des applications web / Veille

<September 2008>
SuMoTuWeThFrSa
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011


Navigation

Subscriptions

Post Categories



Monday, October 04, 2004 - Posts

Est-il possible de tronquer l'article affiché dans la page d'accueil ?

Je blogue régulièrement sur plusieurs installations de WordPress, un outil de blog gratuit fonctionnant sur l'architecture LAMP. Une fonctionnalité que j'utilise régulièrement est la baslise 'more', permettant de décider jusqu'à quel endroit l'article est affiché dans la page d'accueil.

Dans la mesure où j'ai tendance à écrire des pavés de plusieurs pages, cela me permettrait de conserver un accueil 'léger' lorsque des utilisateurs arrivent sur ce blog.

.Text propose t'il cette fonctionnalité ?

posted Monday, October 04, 2004 8:25 PM by saphyr with 0 Comments

ASP Classique et ASP.Net: partager les variables de session

Une question que l’on m’a déjà posé plus d’une fois: comment partager des variables de session entre une application ASP et une application ASP.Net ?

Ce cas de figure se présente principalement dans le cas de gros projets de migration durant lesquels il est nécessaire de conserver une couche existante (ASP) parallèlement à la nouvelle couche en Dotnet.

Je ne vais pas m’étaler longtemps sur le sujet mais voici une méthode en quelques étapes:


Identifier la session

Dans tous les cas, il y a une ‘première’ requête. Cependant, il est rarement possible de déterminer à l’avance, avec certitude, dans quelle application l’utilisateur va faire la première requête.

Les deux mécanismes de session se basent respectivement sur une valeur stockée dans un cookie. Ce dernier contient en effet un identificateur de session permettant à l’application ASP Classique ou ASP.Net de faire le lien entre le client et toutes ses variables de session.

La problématique ici est que chacun des deux mécanismes possède son propre identificateur. Il faut donc créer un ‘lien’ entre les deux mécanismes. Ce lien peut être une chaîne texte, un nombre généré aléatoirement ou tout simplement l’un des deux identificateurs de session qui va être considéré comme le ‘maître’. Ce ‘maître’ , que je nomme ‘masterid’ est alors placé dans un cookie. L’application appelée va donc vérifier si un masterid est disponible, le cas échéant, elle le créera.

En image:

Stockage des clés-valeurs de session

Les applications web dynamiques consomment généralement une base de données. Nous allons donc l’utiliser, elle est là pour ça!

Le but ici est donc simplement de placer toutes les combinaisons de clés-valeurs faisant référence à un client au sein de la base de données. Voici une proposition de structure de table:

Récupération / Stockage des clés/valeurs de session

Chaque mécanisme (ASP classique et ASP.Net) doit disposer de ses propres méthodes de modification et d’accès aux variables de session. L’exemple suivant pourrait convenir:

SessionInit()
Effectue le processus décrit plus haut, consistant à initialiser un “masterid” s’il n’est pas détecté ou à récupérer celui présent dans le cookie du client.

SessionSetValue(key, value)
Insère la combinaison clé-valeur dans la base de données. Dans le cas où la clé est déjà stockée dans la table, une mise à jour sera effectuée.

SessionGetValue(key)
Extrait la valeur de la clé indiquée à partir de la base de données.

Conclusion

Nous avons ici un mécanisme simple de gestion partagée de variables de session entre une application de type ASP classique et ASP.Net. Bien entendu, cette méthode peut être étendue à toute autre technologie ‘web dynamique’ telle que PHP ou JSP par exemple.

La solution proposée reste très ‘basique’ dans la mesure où aucun souci réel de sécurité n’a été discuté (complexité et sécurité du masterid?) et seule des combinaisons clé-valeurs de type ‘texte’ peuvent être utilisées. Dans la majeure partie des cas cependant, cela suffira largement.

Si vous souhaitez cependant faire évoluer votre mécanisme de partage de sessions vers une version offrant plus de fonctionnalités, il vous reste à examiner la proposition tout droit venue de chez Microsoft: How to Share Session State Between Classic ASP and ASP.NET.

posted Monday, October 04, 2004 8:21 PM by saphyr with 5 Comments

Movies and series with IT security emphasis

Last updated: October, 7th. 2004, version 4

There was recently some discussion about movies and series showing some interest into information systems hacking techniques on webappsec@securityfocus.com.

This list is to be used as a reference for IT security professionals who might need some ‘cultural’ examples within their teaching or coaching work. I’ll try to keep it updated so do not hesitate to add your propositions (please add them into the comments in order to have your name referenced).

Alias
- Computer systems hacked in almost every episode;

Antitrust
- Physical console access not being locked by an administrator;
- Source code leak from a inside corporate employee;

Battle Royale
- A group of teenagers introduce themselves to the military network, then launches a logic bomb;

CSI: Crime Scene Investigators
- Username and password written on a post-it stuck on a monitor (Episode ‘$35K O.B.O.) ;
- Man in the middle attack: a message is intercepted and modified by the cable guy (Episode: ‘Stalker’);

Cowboy Bebop (anime)
- Biometric security: Faye accepts responsibility for debts through thumbprint;
- Insider threat: corporate employee leaves access code to the main system;
- Remote access exploits;

Dreiundzwantzig
- About a hackergroup in the 80’s selling info to KGB etc somewhat true story;

Gunsmith Cats (anime)
- Compromised password;
- Steganography (images on a fake adult site hide criminal information);

Hackers
- 0 days exploits;
- Distributed denial of service;
- Corporate employee attack: the sysadmin wrote a worm which was shaving pennies off of every transaction;
- Virus;

Independence Day
- Introduction of malicious code into central network (mother ship) using a remote authorized connection (drone ship) by unauthorized party’s (the hero’s);

Jurassic Park
- Insider threat (the programmer gets the system to bypass security while he steals the DNA/embryos);

Lord of the Rings, The
- At the mines of Moria entrance gate. The password is written on an elfic ‘post-it’;
- Inside the mines, when Gandalf faces the Balrog and shouts ‘thou shall not pass!’;
- Sauron builds vast defenses and Mormannon, a fortified gate to lock everyone out of his domain. Yet the danger lies within: three hobbits are already inside the structure et getting closer to the “core”;

Matrix
- Backdoors;
- Exploits (ssh);

Minority Report
- Biometric (retina scan) access control and identity spoofing;
- Faulty HR termination procedures: employee’s access was not disabled after being fired;

Office Space
- Worm: gathers fractions of rounded pennies on a ‘private’ account;

Operation Swordfish
- Brute force attack;
- Virus;

Resident Evil
- Multiple PIN brute force attempts to enter Red Queen’s chamber;
- Vocally shared PIN results in death of team member;

Silicon Towers
- Cards built by a company all include a hardcoded backdoor access;

Sneakers
- Cryptography (when the team discovers it’s a crypto box they have;

Takedown
- Social engineering;

Tenki Universe (anime)
- Multi-tier authentication system (access to the crypts of Juraian Knights);
- Virus;

Terminator 2
- John Connor hacks into an ATM;
- Later in the movie, John uses the same technique to unlock a secured safe;

The Net
- Personally identifiable information (main characters personal information is deleted thanks to a single floppy disk containing some hacking software;

War Games
- Passwords directly related to the personality are easily guessed;
- Lack of authentication failure monitoring;


Contributors:
- webappsec@securityfocus members
- Serg Belokamen
- Skander Ben Mansour
- Mark Brewis
- Mark Curphey
- Stephen De Vries
- Matt Fisher
- Lucas Holt
- Jeff Levenglick
- Jason Merriman
- Arnold Meyers
- Edward Miller
- Rui Pereira
- Michael Russel
- Mattias Sandström
- Mickael Silk
- Koen Vingerhoets

and specially Mike Andrews, for having asked the question ;)

posted Monday, October 04, 2004 5:49 PM by saphyr with 0 Comments




Powered by Dot Net Junkies, by Telligent Systems