Table des matières
- 2026:
- 2025:
4 billet(s) pour septembre 2026
| Notes HTTP Strict Transport Security - HSTS | 2026/09/18 11:04 | Jean-Baptiste |
| Notes GNU Linux GPU carte graphiques | 2026/09/08 15:49 | Jean-Baptiste |
| Notes GNU Linux graphique | 2026/09/08 15:42 | Jean-Baptiste |
| Notes urlencoding - passer des mots de passe en HTTPS | 2026/09/03 17:58 | Jean-Baptiste |
Exemple git clone avec Ansible
- name: Git clone ansible.builtin.git: repo: https://{{ git_user }}:{{ git_password }}@{{ git_url }} dest: /tmp/plop/ single_branch: true version: "{{ git_version }}" depth: 1 environment: GIT_SSL_NO_VERIFY: "true" # GIT_TERMINAL_PROMPT: 0 vars: git_user: "{{ lookup('env', 'GIT_USER') | urlencode }}" git_password: "{{ lookup('env', 'GIT_PASSWORD') | urlencode | replace('/', '%2f') }}" git_url: gitlab.acme.local/plop git_version: "{{ lookup('env', 'GIT_VERSION') }}"
Windows exe - Comparaison de fichiers binaires
Voir :
- strings fichier.exe
- ldd fichier.exe
- Comparaison avec un éditeur hexadécimal
Voir aussi :
- ClamAV
- Contrôle d'intégrité
Fichier suspect à comparer avec un fichier de référence
Dans le cas ci-dessous nous avons un fichier exe avec un checksum différent d'autres qui semblent être de la même version.
mkdir Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/ cd Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/ 7z x ../Centreon-NSClient-0.5.2.41-20211102-x64.exe
$ diff -r Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/ Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/Uninst.exe and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/Uninst.exe differ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources.zip and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources.zip differ
Décompression des tous les binaires et archives avec “7z x” récursivement
$ diff -r Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/ Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/Uninst.exe and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/Uninst.exe differ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe differ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/check_logfiles.exe and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/check_logfiles.exe differ Binary files Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources.zip and Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources.zip differ
$ exiftool -FileVersion -ProductVersion Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe Centreon-
NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe
======== Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe
File Version : 1.0.0.0
Product Version : 20211102 (702e50519 388b9a2)
======== Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe
File Version : 1.0.0.0
Product Version : 20211102 (702e50519 852566c)
2 image files read
Lister toutes les sections
objdump -h file.exe
Exemple
.text .data .rdata .pdata .xdata .bss .idata .CRT .tls .rsrc
diff <(objdump -s --section .rsrc Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe) <(objdump -s --section .rsrc Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe) 2c2 < Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe: file format pei-x86-64 --- > Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe: file format pei-x86-64 16962,16963c16962,16963 < 8e53d0 35003000 35003100 39002000 33003800 5.0.5.1.9. .3.8. < 8e53e0 38006200 39006100 32002900 00000000 8.b.9.a.2.)..... --- > 8e53d0 35003000 35003100 39002000 38003500 5.0.5.1.9. .8.5. > 8e53e0 32003500 36003600 63002900 00000000 2.5.6.6.c.).....
$ diff <(objdump -d Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe) <(objdump -d Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe) 2c2 < Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/resources/scripts/centreon/centreon_plugins.exe: file format pei-x86-64 --- > Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/resources/scripts/centreon/centreon_plugins.exe: file format pei-x86-64
$ diff <(objdump -d Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/Uninst.exe) <(objdump -d Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/Uninst.exe) 2c2 < Centreon-NSClient-0.5.2.41-20211102-x64.exe_d/Uninst.exe: file format pei-i386 --- > Centreon-NSClient-0.5.2.41-20211102-x64.exe.corrupt_d/Uninst.exe: file format pei-i386
Conclusion
De par le jeu de la compression ces deux fichiers (le suspect et la référence) semblaient très différents l'un de l’autre, mais à y regarder de plus près, ces deux fichiers sont très semblables.
A force de décompresser toutes les exe/zip avec 7z x, nous constatons que la plupart des différences concerne le numéro de version mineur. Et même quand cela ne concerne pas la version, cela concerne des DATA_SEGMENT https://en.wikipedia.org/wiki/Data_segment
Notamment dans :
- check_logfiles.exe
- Uninst.exe
Après d'autre vérifications, tel que ldd pour voir les libs, une comparaison avec un éditeur hexadécimal, un contrôle avec ClamAV… j'en conclu que ce fichier suspect est très probablement saint, mais que cela ne change rien, puisqu'il ne faut jamais utiliser du code compilé qui n'est été signé !
Au delà de cette analyse j'en conclu que nous devons mettre en place un contrôle d'intégrité strict.
Pb git
pb git reset --hard ne fonctionne pas
Solution
Utiliser git checkout HEAD
#git reset --hard vars/phy-deb9-fr.var git checkout HEAD vars/phy-deb9-fr.var
Err: unknown revision or path not in the working tree.
$ git reset preseed/kvm-deb10.cfg vars/netinst-deb8-11.var fatal: ambiguous argument 'preseed/kvm-deb10.cfg': unknown revision or path not in the working tree. Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<yourcode>...]'
Solution
git checkout HEAD -- vars/kvm-deb10.var preseed/kvm-deb10.cfg
Pb git diff et git difftool ne fonctionne pas
Solution
Utiliser l'option --cached
git difftool --cached
Ou encore
git difftool HEAD
Err: The upstream branch of your current branch does not match the name of your current branch.
$ git push
fatal: The upstream branch of your current branch does not match
the name of your current branch. To push to the upstream branch
on the remote, use
git push origin HEAD:l12-prod
To push to the branch of the same name on the remote, use
git push origin HEAD
To choose either option permanently, see push.default in 'git help config'.
To avoid automatically configuring an upstream branch when its name
won't match the local branch, see option 'simple' of branch.autoSetupMerge
in 'git help config
Solution
git branch --unset-upstream
Notes YubiKey FIDO PIN
$ ykman fido access verify-pin Enter your PIN: ERROR: PIN verification failed: CTAP error: 0x32 - PIN_BLOCKED. $ ykman fido info AAGUID: 1fc0579f-8113-47ea-b116-bb5a8db9203b PIN: Blocked Minimum PIN length: 4 $ ykman fido reset WARNING! This will delete all FIDO credentials, including FIDO U2F credentials, and restore factory settings. Proceed? [y/N]: y Remove your YubiKey from the USB port. Re-insert your YubiKey now... Touch the YubiKey to confirm. Reset in progress, DO NOT REMOVE YOUR YUBIKEY! FIDO application data reset. $ ykman fido access change-pin Enter your new PIN: Repeat for confirmation: FIDO PIN updated.
Tester les flux réseaux UDP
Voir aussi remplacer_telnet_nc_sous_linux
telnet c'est pratique, mais ça ne marche que pour TCP
!! UDP n'est pas un protocole en mode connecté
Netcat est votre ami
$ nc -zvu 127.0.0.1 1-65535 Connection to 127.0.0.1 111 port [udp/*] succeeded! Connection to 127.0.0.1 161 port [udp/*] succeeded! Connection to 127.0.0.1 897 port [udp/*] succeeded! Connection to 127.0.0.1 1900 port [udp/*] succeeded! Connection to 127.0.0.1 2086 port [udp/*] succeeded! Connection to 127.0.0.1 5353 port [udp/*] succeeded! Connection to 127.0.0.1 32964 port [udp/*] succeeded! Connection to 127.0.0.1 34578 port [udp/*] succeeded! Connection to 127.0.0.1 37878 port [udp/*] succeeded!
$ nc -uvz serveur 1-162 serveur [172.17.39.87] 162 (snmp-trap) open serveur [172.17.39.87] 123 (ntp) open serveur [172.17.39.87] 67 (bootps) open
Sinon il existe Nmap
Netcat - bind binding NIC
nc -lnp 3306 192.168.200.62
$ ss -tln | grep 3306 LISTEN 0 1 192.168.200.62:3306 0.0.0.0:*
unixsock Unix domain sockets
echo -e "GET /containers/omsa82-snmp/stats HTTP/1.0\r\n" | nc -U /var/run/docker.sock
Autres
Bande passante :
- bwm-ng
- iperf
cat /sys/class/net/eth0/statistics/tx_bytes
# awk '/^Udp:/ { print $5}' /proc/1565/net/snmp
OutDatagrams
208064
Info
# cat /sys/class/net/eth0/duplex full
# cat /sys/class/net/eth0/speed 1000
# cat /sys/class/net/eth0/address 08:00:27:56:10:6a
