Merge branch 'master' of ssh://barnulf.net:2255/epita/notes-ing2

This commit is contained in:
JOLIMAITRE Matthieu 2024-03-12 09:03:51 +01:00
commit 07bd9dce39
4 changed files with 358 additions and 0 deletions

89
bus/03_can.md Normal file
View file

@ -0,0 +1,89 @@
# Session 3 2024-03
bus can -> bus syst. série
réduire nb cables
# BUS CAN
conçu par BOSCH, fin des années 80
- temps maximal normalisé
- syst. d'erreur simple et efficace
-> contrôleurs CAN petits, peu couteux, entièrement intégrés, utilisable à débit important en tps réel et env difficile avec haut niveau de fiabilité
-> origine automobile, étandu à tous les domaines
syst critique (High speed) ou low speed
CAN -> prot. réseau intégré dans la norme ISO/OSI
## Protocole CAN
(rappel : arbitrage non destructif, si collision réémission de la deuxième trame plus tard)
=> catégorie des réseaux de terrain
-> hiérarchie des msg, garantie du temps de latence, souplesse de config
->reception de multiples sources avec synchro temporelle
-> fonctionnement multimaitre, detect° d'erreurs
->retransm. automatique des msg altérés
-> distinction d'err. : d'ordre temporaire ou de non fonctionnalité permanent au niveau d'un noeud
-> déconnexion des noeuds défectueux
### Caractéristiques
bus série = paire différentielle avec CAN_H(igh) et CAN_L(ow), connecté sur des résist. 120ohms ou capa 30pF résistant aux perturbat°
-> attention Can_H(igh) != can high speed
résist. 120 ohm au bout pour éviter que le message reparte dans le can après avoir circulé
si EMI (interference electromagn.)=> modif des msg dans H et L, calcul de la diff. de différentiel, et les deux seront modifiés de la même manière
ex
| CAN-H|5|3 |3|*4.5*|3|
|------|-| - |-| ----|-|
| CAN-L|1|1.5|2|*2.5*|1|
| UDiff|4|1.5|1|*2* |2|
-> la différence reste constante contrairement à tension mesurée dans le fil
ex : bit = 0 si Udiff < 3, 1 sinon
low-speed = vit de propag sur le bus = 125Kbits (permet cable plus long)
high-speed = 1 Mbits
### Principe de fctment
-> type wired-and : un bit dominant (0)(CANH > CANL) écrase un bit récessif (1)(CANH <= CANL)
+> les identif. des noeuds avec la valeur la plus faible sont prioritaires
synchro d'horloge : bourrage de bit inversé (bit stuffing)
le débit réel des infos ne tient pas compte de ces bits stuffing
si ajouter un bit de stuffing fait passer la séq. d'après à 5 bits conséc. => on ajoute encore un nouveau bit de stuffing => possibilité de propagation
types de trames :
- de données
- de requête (remote frame)
- de gestion d'erreur
- de surcharge (ex si un calc n'arrive pas à lire assez vite)
- espace entre frames
trame, fin = 7 bits à 1 + séparateur trames = 3 bits à 1
CAN sur les couches appli (prot spécifié par l'utilisateur) liaison et physique (prot CAN pour les deux couches)
#### Couche physique
couche MAC entre données et couche physique, elle donne la priorité et définit l'arbitrage
fournit les moyens matériels nécéssaires à l'activation, maintien, désactvation des connex physiques
-> gère repr. des bits et définit les niveaux electriques optiques etc des signaux
le type de transceiver définit le type de transmission (low speed ou high speed)
transceiver transforme trame en voltage pour can high ou low (et receptionne avec processus inverse)
2 couches basses, 3 parties : Implémentation, Standards et CAN (iso pas à connaitre)
can controller complète le msg (ajout identifiant, concat dataframe, etc)
µcontrolleur => crée msg
résist. de terminaisons évitent les répétitions en bout de ligne (rebond du signal)
##### Topologie du réseau
réseau sous forme de bus => tt est connecté
réseau avec passerelle -> un can fait office de pont entre deux réseaux
CAN low speed -> can fault tolerance : accepte des erreurs sur le réseau, et de les résoudre ou déconnecter les noeuds
faisceau de bits codé en NRZ
Bit stuffing sur remote frame et dataframe, s'applique jusqu'au CRC
synchro de 2 façon :
hard : sur le bit de start
Re-synchro sur chaque front récessif et dominant

95
hardware/01_init.md Normal file
View file

@ -0,0 +1,95 @@
# Session 1 Architecture hardware numérique 2024-03-01
3 controles continus + 1 projet : réalisation carte électronique
programme : résistances, transistor type moss, bascules (nand, etc), logique combinatoire et séquentielle, alimentation, switch, processeurs, etc
## Composants discrets
### Résistance
symbole R, unité ohm, ^v^v^v
energie dissipée P=RI²
limite le passage du courant
effet joule => ça chauffe
V/I = R <=> i = V/(RT)->inf. (R->0+)
si résistance faible=> courant augmente, le fil chauffe et se met à fumer
système de garde = disjoncteur / fusible,
ex : 220V tension efficace, 9KW, disjoncteur à 41V
(éléments de dissipation : resist. de charge, d'amortissement, chauffantes
elts de division de tension : résistances en ponts, resist. dans filtres (RC, RLC)
elts de polarisation : Pull-up, Pull-Down)
en série : Req = somme des résistances
en parallèle : 1/Req = somme(1/R)
si générateur idéal => fournit tjrs même courant
tau = RC
3tau = 95%
exp(-t/tau)
### Condensateur
ŵ : oméga
energie stockée dans un cond. : Q=C.V
symbole C, unité farad
bloque le passage d'un courant continu en stabilisé --||--
instantané = V = exp(-t/tau)+C si on colle un condens. déchargé avec une batterie forte (voiture) et un fil, la resistance est nulle (= le fil), le courant est infini, et le condensateur va charger vite
point de contact du condensateur => généralement une petite résistance, et une résistance de fuite (~quelques gigaohm)
en série : 1/Ceq = somme(1/c)
en parallèle Ceq = somme(C)
^v^v^v----||-----^v^v^v^
| |
|^v^v^v^v^v^v^v^v^v^v^v|
Z=1/cŵ, z=impédance d'un cond. en ohm
z=inf. en continu, car ŵ=0
oscour
lcŵ²=1 résonance (condens. et bobines(self)), courbe de fresnel, équations différentielles
ŵ=1/rac(LC)
#### self (bobine ?)
symbole L, unité henry, --0000000--
résistance nulle en courant continu, et résistance importante sinon
Lŵ/R=1
tau=L/R, au bout de 3tau~=95% de la self est démagnétisée
self en haute freq. c'est une bonne cappa
en série Leq = somme(L)
parallèle 1/Leq =somme(1/L)
impédance Z=Lŵ
### Les transistors MOS (Metal Oxyde Semiconductor) (MOSFET)
porteurs d'un seul type, donc composant unipolaire (contrairement au transist. bipolaire)
en silicium, car facilement dopable
V/Id = Rdson
3 contacts : (Grille, Drain et Source)
1er temps autour des zones n+ les charges :
-majoritaires sont '+' -> zone de déplétion lorsque Vgs >0 est appliquée entre drain et source, la diode substrat drain est bloquée, le courant ne passe pas
-quand la tension de la grille augmente, la zone entre D et S la force electromag attire les charges - et un canal se créé et -conduction d'un courant de D vers S (flux minoritaires d'e- dans la zone P attirée par la grille)
-proche de G, les e- deviennent majoritaires, un canal de conduction est créé entre D et vers S modulé par Vgs(dès que Vgs > Vth)
partie métal = condensateur
largeur grille ancien processeur : 5 nm, maintenant 18 angström (10^-10) : 1,8nm
salle grise - salle blanche : taux de particule réduit, on évite la poussière pour éviter d'abimer les processeurs
-sorte d'interrupteur quasi parfait
oxyde mauvais conducteur -> un composant s'oxyde R augmente -> RI² augmente mais comme I reste le meme le disjoncteur n'intervient pas -> la maison brule
-si tension entre grille et source = 0, aucun courant ne passe, mode bloqué, R=inf, dissipation thermique RI²=0
-sinon mode saturé, R = 0.5 ohm par exemple , si Vgs=V,I~32a, si Vgs baisse R augmente, dissipation thermique augmente
chauffe pendant qu'il s'ouvre, si passage rapide, pas de chauffe=> solution sur les transistors (1 et 0 ouvert et fermé souvent) augmenter la freq pour éviter de trop chauffer
zone ohmique, puis zone saturée

160
securite/01_init.md Normal file
View file

@ -0,0 +1,160 @@
# Sécurité 2024-03-01
epita-ssie@priamos.fr
etienne gérain => ne pas hésiter à se connecter sur linkedin
s8 => base cyber, cybersec technique (protection et attaques), sec du cloud, cybersec en entreprise
évaluations => tout ne sera pas dans le support de cours
=>possibilité d'évaluation non prévues, réviser le cours pour le cours suivant
actualité
oct 2023 -> vinovalie paralysée par hackers occitanie, hopitaux vittel et neufchateau dans les vosges sont la cible d'une cyberattaque grand est
lockbit, plus grand groupe cybercriminel , interventions récentes de polices interpays
## Histoire
fin du 8ème siècle, les vikings attaquent la france car riche mais mal organisée, attaques surprises délocalisées, population naive, pas de réponse coordonnée au problème
21è => la France possède une énorme richesse en capital intellectuel, même problème
école/université contre cybercrime
Pasteur => association recherche enseignement et pratique est la meilleure approche
internet vient de l'US army, sous le nom d'ARPANET, obj : améliorer la comm entre armées
années 50, guerre froide
bases stratégiques permettant aux USA d'encercler l'urss et de lancer des att. surprises avec des bombardiers
l'urss développe son arsenal nucléaire, prend l'avantage dans les années 60
les usa n'étaient pas protégées contre des att. sur leur réseaux de comm, une att sur une infrastruct. pouvait faire tomber tout le réseau
=> développement de l'arpanet, premier réseau maillé de **communication distribué** par léonard kleinrock à la fin des années 60 privé non prévu pour le grand public => aucune confidentialité, peu de controle d'intégrité
d'autres réseaux se développpent autour de la techno TCP/IP (NSFnet, USEnet,...)
arpanet s'interconnecte avec des univ et des labo civils ou privés
TCP/IP (protocole ouvert)=>beaucoup de flexibilité mais aucun mécanisme de séc.
nombreuses failles dans le protocole (ICMP prot. de ping, Routage, N° de séquence, SYN flooding (ouverture de tonnes de connexion), UDP) palliées par des rustines ou des surcouches
concept de *diode* dans un réseau => communique dans un seul sens x -- |> -- X
B diode A B peut communiquer vers A mais l'inverse est impossible
n'accepte que le protocole UDP car pas d'acknowledge possible, risque de saturation si TCP
ex d'utilisation : un pilote d'avion communique aux passagers
TCP/IP combine identité et localisation sur le réseau dans un objet : l'adresse IP => attaques facilitées car mascarade possible, détection problématique, anonymat quasi assuré
D'autres pb qu'internet :
- terminaux et OS optimisés pour exp. utilisateur pas pour la sécurité
- µprocesseurs tjrs plus complexes introduisant des failles dans le hardware (spectre, meltdown)
- Fournisseurs de services incompétents
- utilisateurs naifs
- hacktivistes, criminalité, concurrence, cyber guerre
HSM = hardware sec module, équipement permettant de génerer et stocker des clés crypto de séc.
cage d'écho -> rés. sociaux, suivre les gens qui pensent comme nous donne un faux sentiment de sécurité, manipulation
## Aujourd'hui
- 1 entreprise sur 2 se fait attaquer
- 74% des etps déclarent le phishing comme vecteur d'entrée principal pour les attaques subies
- dans 60% des cas les attaques impactent le le business des etps avec dans 7% des un déficit du CA
- les autres préjudices sont : vol de données (35%),usurpation d'identité (33%),données chiffrées par ransomware (22%)
8 etps sur 10 mènent des campagnes de sensibilisat°, mais 38% des incidents constatés proviennent de négligences/err. de manipulation
Les budgets alloués à la cybersec dépassent majoritairement 5% du budget IT global. 63% des etps prévoient une augmentation allouée aux dispositifs de prot., et 54% attribuée à l'augment. des effectifs
xdr -> syst. de détection temps réel mais ne répond pas aux "menaces inconnues"
station blanche => équipement pour tester une clé usb par exemple
les attaques se multiplient
réseau de zombies => utilisation d'une partie des ressources d'un tél. etc pr recréer un syst. virtuel capable d'attaquer
fuite de données chez un opérateur tcom (2014)=> défaillance d'un sous-traitant, avec serveur mal sécurisé permettant l'accès libre au fichier client
STUXNET -> 1ère utilisation majeure d'un cyber arme sur les centrales nucléaires iraniennes
usb possède capacité d'autorun
nouveaux vikings => gouvernement, etp, crime organisé, fraudeurs
attaques => défaçage de site, arnaque au président (d'une société), chantage à la webcam, déni de service, etc
Le niveau de risque augmente
france => 1 des 3 pays les + ciblés par la manipulat°, influence, etc
# Partie 2
## Principaux types d'attaques
maillon faible (l'humain) => peut souhaiter bypasser le système existant si inadapté aux besoins, pas forcément uniquement de la faute de l'humain
principaux vecteurs :
- le web (sysmantec detecte +10 000 nouveaux sites web infectés par jour)
- la messagerie
- les clés usb
top 14 attaques : ransomware, malware, service Maas, attaque par DoS et DDoS, Phishing, attaque type Man in the middle (MITM)
, script intersite (XSS), injection SQL, Tunneing DNS, Attaque de mots de passe, Attaque des anniversaires, attaque type "drive-by",
cryptopiratage, attaque IoT
phishing => extensions communes dangereuses : doc, pdf, exe, etc
marché noir sur le dark web
achat / vente de documents d'identité, n° de cartes bancaires, comptes sur des cloud, kits pour malwares
**Spear fishing (SP)**=> version ciblée du phishing, envoi d'un mail depuis un contact connu un collègue, ou un proche
-> adresse email source maquillée ou piratage du mail du contact
-> exploitat° des données publiques de la cible et de ses contacts sur les réseaux, des données de l'entreprise
pb majeur dans les etps, organisation de campagnes de sensibilisation
sécurité par l'obscurité = sécurité en cachant des bouts de code
-> mac et windows ont certaines parties de code propriétaires
recommandation
(openbsd => aucun protocole ouvert par défaut)
un seul antivirus sur son OS, 2-3 antivirus dans une ept (1 pour les ordis portables par exemple, 1 pour les serveurs)
plsrs antivirus se basent sur la même manière de detecter les virus
ne jamais se connecter à un réseau wifi ouvert ou filaire, si données sensibles sur un ordi
2017 : 1/13 des sites webs sont malicieux
début d'attaque : souvent SP (71% 2017), watering holes
watering holes => site web non géré par l'entreprise mais ou tous les utilisateurs se connectent (par exemple site web d'un comité d'etp) =>on attaque ce site web au lieu d'attaquer l'etp
SP => signes évocateurs (un contact a un besoin urgent, on vous demande de changer votre mode de connexion, on vous questionne sur des outils de paiement, des projets en cours)
recommandations d'outils : olvide, keepass
comment réagir ?
->formation des utilisateurs
->controler, Phishing pédagogique
->et parfois sanctionner
mail suspect
vérifier l'id de l'interlocuteur
contacter l'expéditeur par un autre moyen pour demander confirmation
ne pas transmettre d'info sensible
ouvrir un mail est il dangereux ? oui si le logiciel pour ouvrir le mail interprète de l'html
SP : 1ère étape de l'attaque APT
*APT* ->(advanced persistent threat) attaque complexe qui s'est faite en plusieurs étapes, parfois en plusieurs années
Kill chain : représentation d'une APT
reconnaissance (recherche d'infos publiques)-->construction (adaptat° des outils à l'etp)-->livraison (envoie de malware) -->exploitation (--escalade privilèges -->exfiltration--> maintien etc)
on peut représenter la séquence d'injection dans l'apt : envoi de mail--> ouverture du mail etc
water holing
cryptolocker -> chiffre en masse les données accédés en vue d'une rançon
Botnet : l'attaquant donne un ordre aux machines zombies qui attaquent à l'insu de l'utilisateur, sert par ex à DDoS
sabotages d'infrastructures industrielles
menaces : les réseaux sociaux, cyber-harcèlement
se protéger : mot de passe : mettre une phrase est plsu complexe à craquer qu'un mdp courts avec symboles spéciaux etc

14
update.sh Executable file
View file

@ -0,0 +1,14 @@
#!/bin/sh
set -e
cd "$(dirname "$(realpath "$0")")"
if [ $# -lt 1 ]
then echo "Usage: update.sh <dir> [msg]" && exit 1
fi
dir="$1"
msg="$2"
git add "$dir"
git commit -m "$dir $msg"
git push