Stage 2A : Soutenance

longtermsingularInternet and Web Development

Dec 4, 2013 (3 years and 8 months ago)

79 views

Stage 2A : Soutenance

Soutenance du stage 2A

24/
11
/0
8


Le cadre du stage


Le lieu


L’entreprise


Les
objectifs


Application de
gestion

des
employés


Pré
-
Etude


La solution
apportée


Conclusion
partielle


Deploiement

d’un site web


Pré
-
Etude


La solution
apportée


Conclusion
partielle


Conclusion


Le cadre du stage : Le lieu

Soutenance du stage 2A

24/
11
/0
8


Stage
obtenu

dans

le cadre de la
réalisation

du
stage technique en 2
°

année



Stage
effectué

en
Belgique

:
L’intérêt

était


La confrontation avec
une

nouvelle culture


Obtenir

la mention “stage à
l’étranger


Le cadre du stage : Le lieu

Soutenance du stage 2A

24/
11
/0
8

Le cadre du stage : L’entreprise

Soutenance du stage 2A

24/
11
/0
8


Stage
effectué

à la
résidence

Chèvrefeuilles


Maison

de repos
situé

à
Havré

en
belgique


Stage
trouvé

par le
biais

du service relation
entreprise


Les maîtres de stage


Propriétaire de la société : M. Yves Lenoir


Encadrant technique : M. Grégory Lenoir


Gérante de la société : Mme
Renaut


25
employés

pour 40
résidents


Le cadre du stage : Les objectifs

Soutenance du stage 2A

24/
11
/0
8


Le
sujet

initial du stage : “
developpement

d’une

application de
gestion

d’une

maison

de repos de la
rédaction

du cahier des charges au
déploiement



Utilisation

de PHP/
MySQL

et du framework
Symfony


Gestion

d’une

base de
données

des
employés

et
des
pensionnaires


Gestion

d’un journal des
soins



Génération

des
facturations

des
pensionnaires

Le cadre du stage : Les objectifs

Soutenance du stage 2A

24/
11
/0
8



Définition

d’un
objectif

supplémentaire

selon

l’avancement

général


Déploiement

d’un site internet de
présentation

de
l’entreprise


Utilisation

d’un CMS (
joomla
!)


Application de gestion des employés : pré
-
Etude

Soutenance du stage 2A

24/
11
/0
8



Définition

d’un
objectif

supplémentaire

selon

l’avancement

général


Déploiement

d’un site internet de
présentation

de
l’entreprise


Utilisation

d’un CMS (
joomla
!)


Plan



Redefining the project & Prevision




Methodology : how to




Bibliography

Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Redefining

the

project


Our project, like we think it, can be
named:


“Reverse engineering on the Ipod USB
protocol”

Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Our Goals


Reverse engineer the USB protocol of
the Ipod and understand clearly the
way its functions work



Be able to give commands to the Ipod



Understand the answers it gives


Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Our Goals


Develop an application able to use
directly the discovered protocol



Find a good usage for the protocol



Develop the application itself

Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Gantt
chart


Bibliography

Search


Bibliography

Search


Scripting

Development




Software

Development

Capture


and

Frames

Purify


and

Protocol

Analyse



and

Protocol

Use


Protocol

September

October

November

December

January

Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

How to do ?


Using an UBS sniffer like USBSnoop (or
SniffUSB)


Interfacing between the application and
the USB driver


Catching every USB frame


Using it to make some logs


06/
11
/0
8

06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

How to do ?

06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

How to do ?


Use a script written in python in order
to purify logs


It will remove all information we don’t
need


It will organize frames to be easier to
understand

06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

How to do ?


Understand the protocol


Analyse the behaviour of the protocol while
we use some functions of ITunes


Highlight the important part of the
communication


Try to send some frames


06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

USB in a nutshell


Universal Serial Bus (USB) is a serial bus
standard to interface devices to a host
computer


In response of a data packect, we could have
three basic responses :


a ACK (data was successfully received)


a NAK (data cannot be received at this time)


a

STALL

(device

has

an

error

and

never

transfer

data

until

some

corrective

action

is

perfomed)

06/
11
/0
8

Bibliography


Apple’s website & community


Proprietary solutions


Open Source community

Reverse Engineering on the IPod's USB protocol

06
/
02
/0
8

Apple’s website & community

Reverse Engineering on the IPod's USB protocol

06
/
02
/0
8

Apple’s website & community

Apple does not provide information on their website

Reverse Engineering on the IPod's USB protocol

04
/
02
/0
8

Apple’s website & community


The topic is not evoked in details in the
discussions on the Apple forums


Reverse Engineering on the IPod's USB protocol

06
/
02
/0
8

Proprietary solutions



USBTrace


USB Monitor


Advanced USB Port Monitor


USBlyzer




Reverse Engineering on the IPod's USB protocol

06
/
02
/0
8

Open Source community



Projects related to the AAP (Apple Accessory
Protocol)


Projects related to the iPhone


Projects related to the iPod Touch


NO projects about the USB protocol for the
iPod Nano

Reverse Engineering on the IPod's USB protocol

06/
11
/0
8

Reverse Engineering on the IPod's USB protocol

Reverse Engineering on the IPod's USB protocol



Thank you for your attention.

If you have some questions.