fix: incompatibilities with new hugo version
This commit is contained in:
parent
44404f4034
commit
b5179b97ac
3 changed files with 24 additions and 24 deletions
16
config.toml
16
config.toml
|
@ -9,13 +9,9 @@ rssLimit = 10
|
|||
paginate = 10
|
||||
enableRobotsTXT = false
|
||||
|
||||
[Author] # Used in authorbox
|
||||
name = "ephase"
|
||||
bio = "Adminstrateur système, j'ai d'abord intégré la Licence Pro ADSILLH et maintenant le Master IDI à l'Université de Bodreaux"
|
||||
avatar = "assets/images/souris.svg"
|
||||
|
||||
[taxonomies]
|
||||
category = "categories"
|
||||
category = "categories"
|
||||
tag = "tags"
|
||||
|
||||
[Params]
|
||||
|
@ -28,10 +24,11 @@ enableRobotsTXT = false
|
|||
"secu_systeme",
|
||||
"conception_formelle",
|
||||
"secu_logicielle",
|
||||
"bdd_avancees",
|
||||
"bdd_avancees",
|
||||
"systemes_exploitation",
|
||||
"admin_reseau",
|
||||
"secu_reseaux"
|
||||
"secu_reseaux",
|
||||
"conduite_projet"
|
||||
]
|
||||
post_meta = ["author", "date", "categories", "translations"]
|
||||
mathjax = true
|
||||
|
@ -43,3 +40,8 @@ enableRobotsTXT = false
|
|||
single = false # Configure layout for single pages
|
||||
# Enable widgets in given order
|
||||
widgets = ["search", "categories", "taglist"]
|
||||
|
||||
[Params.Author] # Used in authorbox
|
||||
name = "ephase"
|
||||
bio = "Adminstrateur système, j'ai d'abord intégré la Licence Pro ADSILLH et maintenant le Master IDI à l'Université de Bodreaux"
|
||||
avatar = "assets/images/souris.svg"
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
title: "Installation : Postfix + LDAP"
|
||||
categories: ["Installation", "TD machine"]
|
||||
tags: ["Postfix", "LDAP", "maildir"]
|
||||
date: 2018-10-4
|
||||
date: 2018-10-04
|
||||
lastmod: 2018-10-18
|
||||
---
|
||||
|
||||
|
@ -12,13 +12,13 @@ coupler ensuite avec notre annuaire LDAP pour lagestion des comptes.
|
|||
## Installation de Postfix
|
||||
|
||||
L'installation sur debian est simple, il suffit d'installer le paquet adéquat et
|
||||
de répondre aux deux questions posée par dpkg :
|
||||
de répondre aux deux questions posée par dpkg :
|
||||
|
||||
```shell
|
||||
# apt install postfix
|
||||
```
|
||||
|
||||
### Configuration
|
||||
### Configuration
|
||||
|
||||
La configuration de postfix se fait dans le répertoire `/etc/postfix`. Le
|
||||
premier fichier à modifier est `main.cf`, on y configurera entre autre les
|
||||
|
|
|
@ -3,8 +3,6 @@ title: "Sécurité logicielle : TD 9 Hackme"
|
|||
date: 2023-04-14
|
||||
tags: ["Assembleur", "x86"]
|
||||
categories: ["Sécurité logicielle", "TD"]
|
||||
author:
|
||||
- Yorick Barbanneau
|
||||
---
|
||||
|
||||
## Level 0
|
||||
|
@ -15,7 +13,7 @@ Le programme demande à l'utilisateur une saisie, lorsque je rentre un texte, i
|
|||
répond `Nope`:
|
||||
|
||||
```
|
||||
./hackme
|
||||
./hackme
|
||||
This is level 0, welcome! What do you have to say?
|
||||
bonjour
|
||||
Nope!
|
||||
|
@ -66,14 +64,14 @@ GCC: (Debian 8.3.0-6) 8.3.0
|
|||
```
|
||||
|
||||
`IAmSuperSecure` parait relativement intéressant. Mais à ce stade rien n'est
|
||||
sûr. Mais juste comme ça essayons tout de même un `lstrace` sur notre programme:
|
||||
sûr. Mais juste comme ça essayons tout de même un `lstrace` sur notre programme:
|
||||
|
||||
```
|
||||
ltrace ./hackme
|
||||
ltrace ./hackme
|
||||
__libc_start_main(0x80490a0, 1, 0xffb45f24, 0x8049590 <unfinished ...>
|
||||
wprintf(0x804a064, 0xf7f988cb, 0xf7c1ca2f, 0xf7f804a0This is level 0, welcome! What do you have to say?
|
||||
) = 51
|
||||
getline(0xffb45e18, 0xffb45e1c, 0xf7e1d620, 0xf7c76ca5MyBadPassword
|
||||
getline(0xffb45e18, 0xffb45e1c, 0xf7e1d620, 0xf7c76ca5MyBadPassword
|
||||
) = 14
|
||||
strcmp("MyBadPassword", "IAmSuperSecure") = 1
|
||||
wprintf(0x804a048, 0xf7fbca40, 0, 0x80492c2Nope!
|
||||
|
@ -143,7 +141,7 @@ Essayons donc de comprendre comment. Recommençons l'exécution avec un `watch`
|
|||
la chaine contenue sur le programme :
|
||||
|
||||
```
|
||||
(gdb) wa * (char*)0x804d030
|
||||
(gdb) wa * (char*)0x804d030
|
||||
Hardware watchpoint 1: * (char*)0x804d030
|
||||
[...]
|
||||
|
||||
|
@ -171,10 +169,10 @@ Dump of assembler code for function z:
|
|||
0x0804932f <+15>: nop
|
||||
|
||||
0x08049330 <+16>: sub $0x9,%eax ; retire 0x9 à %eax
|
||||
|
||||
|
||||
0x08049333 <+19>: add $0x1,%edx ; incrémente %edx
|
||||
|
||||
0x08049336 <+22>: mov %al,-0x1(%edx) ; remets le caractère déchiffré
|
||||
0x08049336 <+22>: mov %al,-0x1(%edx) ; remets le caractère déchiffré
|
||||
; dans sa chaine
|
||||
|
||||
=> 0x08049339 <+25>: movzbl (%edx),%eax ; copie le caractère courant
|
||||
|
@ -257,7 +255,7 @@ chaque caractère.
|
|||
|
||||
\pagebreak
|
||||
|
||||
Pour déchiffrer le mot de passe écrit dans le programme, j'ai écris un script
|
||||
Pour déchiffrer le mot de passe écrit dans le programme, j'ai écris un script
|
||||
Python :
|
||||
|
||||
```python
|
||||
|
@ -315,7 +313,7 @@ End of assembler dump.
|
|||
```
|
||||
|
||||
Voici deux comparaisons intéressantes. La première s'effectue sur les 4 octets à
|
||||
l'adresse contenue dans `%eax`. La suivante sur le contenu à l'adresse de
|
||||
l'adresse contenue dans `%eax`. La suivante sur le contenu à l'adresse de
|
||||
`%eax + 0x4`.
|
||||
|
||||
\pagebreak
|
||||
|
@ -363,7 +361,7 @@ technique du `ctrl+c` puis `bt`:
|
|||
#7 0x080490d7 in main ()
|
||||
```
|
||||
|
||||
C'est la fonction `aa()` qui appelle `r()` (fonction de saisie), intéressons
|
||||
C'est la fonction `aa()` qui appelle `r()` (fonction de saisie), intéressons
|
||||
nous à elle en la désassemblant :
|
||||
|
||||
```
|
||||
|
@ -402,7 +400,7 @@ End of assembler dump.
|
|||
```
|
||||
|
||||
Cette fonction appelle une autre : `bb()`. C'est elle qui semble se charger de
|
||||
la vérification de la saisie. Avant de l'étudier, voyons comment `aa()` met les
|
||||
la vérification de la saisie. Avant de l'étudier, voyons comment `aa()` met les
|
||||
éléments en place avant de l'appeler :
|
||||
|
||||
* mets l'adresse vers la zone mémoire contenant la saisie utilisateur dans
|
||||
|
@ -604,7 +602,7 @@ la table ascii, utilisons les mathématiques:
|
|||
\nonumber\text{donc } 0 \oplus A \oplus A \oplus A \oplus A \oplus B = B
|
||||
\end{gather}
|
||||
|
||||
Ansi saisir un même caractère un nombre pair de fois suivi de `C`, alors c'est
|
||||
Ansi saisir un même caractère un nombre pair de fois suivi de `C`, alors c'est
|
||||
gagné :
|
||||
|
||||
```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue