Transferts FTPS en PowerShell

Bonjour à tous, aujourd’hui je vous repartage quelques morceaux de PowerShell dont j’ai dû me servir récemment pour faire des transferts FTP et FTPS en PowerShell au taf. C’est un peu plus propre que mon hack de transfert reverse HTTP de la dernière fois… Ça peut vous servir pour automatiser des transferts, ou sauvegarde, faire de l’exfiltration en offensif ou collecter des données depuis des machines en live-forensics par exemple. Aller sans transition je vous passe les différents bout de code que j’ai eu à faire.

Upload de fichier en FTP

Le premier bout de code est tiré de ce Stack Overflow et permet d’uploader facilement un fichier vers un serveur FTP :

$File = "Fichier.zip";
$ftp = "ftp://etienene:Passw0rd1234!@ftp.geekeries.org/testps1/somefilename.zip";
$webclient = New-Object -TypeName System.Net.WebClient;
$uri = New-Object -TypeName System.Uri -ArgumentList $ftp;
$webclient.UploadFile($uri, $File);

C’est tout con, ça tient en 5 lignes, et on peut faire l’exfiltration ou du backup facilement avec ça. Je vous renvoie vers la création d’un serveur FTP avec docker pour monter un serveur qui reçoit les données. N’oubliez pas l’existence de la fonction DownloadFile qui existe dans le même objet WebClient pour télécharger vos fichiers ensuite.

Transferts FTPS en PowerShell : upload

Bon c’est joli … Lire la suite

CTFd et Splunk : utilisez SQL pour du SPL !

Bonjour à tous, Il y quelques temps (environ :-)) on m’a demandé d’organiser un CTF en interne au taf. Je pourrais vous parler un moment du projet, des contributions au challenges, de l’organisation ou de la com’ mais bon, c’est pas trop le but du blog de vous parler des trucs chiant…^^ Je voulais juste pour partager quelques requêtes SQL et SPL pour CTFd et Splunk que j’ai faites en fin de CTF pour générer des graphiques et quelques stats sur le déroulement du challenge.

Alors je l’ai pas indiqué mais on a utilisé un CTFd customisé (un peu, merci Keny) pour l’occasion. Derrière la plateforme on trouve donc une base MariaDB (ex-mysql) tout bête qu’on peut requêter avec du SQL tout ce qu’il y a de plus classique.

SQL over CTFd

Par exemple la liste des utilisateurs inscrit au CTF vers un CSV :

Select u.id as user_id, u.name as username, u.email as user_email, u.type as user_type, u.team_id as team_id, t.name as team_name, captain_id, u.created as user_created 
INTO OUTFILE '/tmp/ctfd_users.csv' 
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n' 
FROM users as u 
LEFT JOIN teams as t ON t.id=u.team_id ORDER BY team_name;

Ça vous sort … Lire la suite

Chiffrement des mots de passe dans mRemoteNG

Bonjour à tous, aujourd’hui on va se pencher rapidement sur le chiffrement des mots de passe dans mRemoteNG. Y’a pas longtemps, j’avais pommé un mot de passe qui visiblement ne s’était pas bien sauvegardé dans mon password Manager (problème d’interface chaise clavier probable), bonne nouvel il était toujours dans ma conf mRemoteNg.

mRemoteNG ?

mRemoteNG est un gestionnaire de connexions à distance (un peu comme PuTTY) pour Windows qui gère une pelleté de protocol et qui a le bon goût d’être Open Source. Jusqu’ici tout va bien.

Les exports de configuration dans mRemoteNG

Donc par rapport à mon soucis je commence par exporter ma conf et du coup ni une ni deux, bouton droit :

Et je me jette dans le XML ainsi généré :

<Node Name="Serveur.tld.fq.dn" Type="Connection" Descr="" Icon="mRemoteNG" Panel="General" Username="user@geekeries.org" Domain="" Password="Ni1es1Kzm##########KJNibkcvcveRfEYV#######DOAcvcvTYUtQB+#####jlcvcvEpkex5A+wE=" Hostname="Serveur.tld.fq.dn" Protocol="RDP" PuttySession="Default Settings" Port="3389"

Donc là, je me dis nickel un base64 (mais aussi quelle bande de nazes chez mRemoteNG… :’-D)

Bref, un coup de base 64 decode et…

[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("Ni1es1Kzm##########KJNibkcvcveRfEYV#######DOAcvcvTYUtQB+#####jlcvcvEpkex5A+wE="))
6-^�R��GTD�l����M��%쇑|D��|�)`�v�TGP�m�/c���JyU{@�

Nada, je récupère du bon gros bruit quel que soit l’encodage demandé.

(Dé)Chiffrement des mots de passe dans mRemoteNG

Bon un coup de let me google that for you plus tard, et on … Lire la suite

Econo-Geekeries : Peut-on annuler la dette publique ?

Bonjour à tous, ça fait un certains temps que je ne vous ai pas partagé une chaine Youtube. Du coup, cette semaine pas trop de fatigue pour moi à rédiger un article, je vous partage une longue vidéo de la chaine Heu?reka sur l’annulation de la dette publique. Alors accrochez vous, c’est long : 1h30 ! Mais plus c’est long… ah non, zut la charte étique. Globalement la vidéo fait le tour de plein de sujet en économie dont il a déjà parler dans des vidéos précédentes. Si vous ne connaissez pas la chaine, je ne peut que vous conseiller de vous abonner. C’est une très bonne vulgarisation au sujets économique, on se sent un peu moins bête quand on entend parler de dette publique, de refinancement, de prêt, de planche à billet et ou encore d’argent magique ! Parfois le discours est un peu orienté « à gauche », mais globalement l’objectivité est là et qu’on adhère ou non ça permet toujours de se faire sa propre opinion.

Bref culturez vous donc un peu pour annuler la dette publique (ou pas) ! C’est par ici que ça passe pour voir comment on pourrait annuler (une partie) de la … Lire la suite