🔐 Blog about ethical hacking and vulnerability research by Valentin Lobstein (aka Chocapikk)| Chocapikk's Cybersecurity Blog 🛡️
Valentin Lobstein (Chocapikk) 🫶 Ethical Hacker and Cybersecurity Enthusiast 👨💻🔐 Hi everyone! I’m Valentin Lobstein, also known as Chocapikk. I am a pentester and cybersecurity student at Oteria Cyber School. My passion lies in ethical hacking, vulnerability research, and software development. I started my journey in pentesting in 2020, with almost no prior knowledge of using a PC. Since then, I have dedicated myself to learning and mastering the art of cybersecurity.| Chocapikk's Cybersecurity Blog 🛡️💻
🔐 Blog about ethical hacking and vulnerability research by Valentin Lobstein (aka Chocapikk)| Chocapikk's Cybersecurity Blog 🛡️
Introduction CVE-2025-30007 – Unauthenticated XSS in serverbackupprogress.sgp CVE-2025-30008 – Unauthenticated XSS in restoreprogress.sgp Reflected XSS in getloginstate (No CVE) Password Reset via ResellerSetPassword (Unexploited Logic) Username Enumeration via CheckUserExists Suspicious Behavior in SignupCustomer Timeline Final Thoughts Introduction Vembu BDRSuite is an all-in-one backup and disaster recovery solution designed to protect virtual, physical, cloud, and SaaS workloads. It t...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction Why WPProbe? A Local Way to Build the Database Technical Background How WPProbe Works (and What It Can’t Do) Vulnerability Info (Wordfence Matching) References & Ideas Final Words Introduction WPProbe is a tool I built to solve a simple problem: detecting installed WordPress plugins in a reliable and quiet way. In this post, I explain how the tool came to life, its strengths, its limits, and why this REST-based idea is still not widely used, even though it works well.| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
What is MagnusBilling? MagnusBilling is a VoIP billing platform launched in 2006, originally a commercial product. Since 2015, it has been released as open source, with the goal of involving the community to “improve even more” the product and provide a complete billing system for the telecom world. It relies on a classic stack: Asterisk for VoIP handling, ExtJS for the frontend, and Yii Framework for the backend. According to their site, the project boasts:| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
System Overview Vulnerability Analysis Proof of Concept Timeline of Events Mitigation Recommendations System Overview SVGTranslate, developed by Wikimedia, converts SVG files into PNG images while allowing for language-based text substitutions within the SVG content. This PHP backend application is structured with functionality managed through ApiController.php and Renderer.php. The source code is hosted on SVGTranslate’s GitHub repository. Component Path API Controller: /src/Controller/Api...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction Qu’est-ce que Mocodo ? Découverte des Vulnérabilités Détail Technique de la Vulnérabilité RCE dans /web/generate.php (CVE-2024-35374) Segment de Code Vulnérable dans /web/generate.php Explication Exemple d’exploitation Détail Technique de la Vulnérabilité RCE dans /web/rewrite.php (CVE-2024-35373) Segment de Code Vulnérable dans /web/rewrite.php Explication Exemple de l’exploitation Solutions et Recommandations Mesures de Correction Suggérées Timeline des Évé...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
CVE-2024-31819 Exploited: Technical Insight into AVideo’s WWBNIndex Plugin Vulnerability Introduction The discovery of a critical Remote Code Execution (RCE) vulnerability within the AVideo platform, specifically in its WWBNIndex plugin, marks a significant event in the cybersecurity landscape. Designated as CVE-2024-31819, this vulnerability empowers unauthenticated attackers to execute arbitrary code, threatening the security and integrity of the platform. AVideo, an esteemed open-source ...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction Acknowledgments Vulnerabilities Summary Local File Inclusion Leading to Potential Remote Code Execution in DerbyNet’s kiosk.php Unauthenticated SQL Injection via ‘where’ Clause in Award Document Rendering Unauthenticated SQL Injection via ‘where’ Clause in Racer Document Rendering Unauthenticated SQL Injection via ‘classids’ Parameter in ajax/query.slide.next.inc Unauthenticated XSS Vulnerability in ./inc/kiosks.inc Unauthenticated XSS in racer-results.php Unauthent...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction MajorDoMo, a beacon in Russian home automation, particularly favored by Raspberry Pi aficionados, has been a trusted name for over a decade. With over 380 stars on its official GitHub repository at the time of writing, its popularity is evident. However, lurking within its thumb.php module is a severe unauthenticated Remote Code Execution (RCE) vulnerability. This article intricately explores this critical flaw, detailing its roots, distinct exploitation methods, and possible ram...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Récompense Ce Writeup à été récompensé comme “Winner of n00bzCTF2023 Best Well Written Writeup award!” Énoncé Dans ce challenge, on nous a donné un fichier python server.py et voici son contenu: from flask import Flask, request, render_template, render_template_string, redirect import subprocess import urllib flag = open('flag.txt').read() app = Flask(__name__) @app.route('/') def main(): return redirect('/login') @app.route('/login',methods=['GET','POST']) def login(): if reques...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Énoncé Dans ce challenge, on nous a donné une classe Java téléchargeable ici, Pour reverse engineer une classe Java, nous aurons besoin d’un decompilateur Java, j’ai décidé d’utiliser jadx-gui. Analyse du code initial En analysant le code source, nous avons la fonction main() qui contient le code suivant: package defpackage; import java.util.Arrays; /* renamed from: EZrev reason: default package */ /* loaded from: EZrev.class */ public class EZrev { public static void main(String...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Énoncé Dans ce challenge, on nous a donné un fichier jar, téléchargeable ici. Pour reverse engineer un fichier jar, nous aurons besoin d’un decompilateur Java, j’ai décidé d’utiliser jadx-gui également. Analyse du code initial En analysant le code source, nous avons la classe MyPin() qui contient le code suivant: package defpackage; import java.awt.LayoutManager; import javax.swing.JFrame; import javax.swing.JLabel; /* renamed from: Mypin reason: default package */ /* loaded fro...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge MISC ‘Gish’ proposé lors du tjCTF 2023. Énoncé Dans ce challenge, on nous a donné un fichier qui contient le code source de l’application à exploiter. Voici ce que contient run.py: #!/usr/bin/python3 import sys import shlex import subprocess from os import chdir chdir('/srv/') print('please enter your script, terminated by the word "end"') sys.stdout.flush() script_lines = [] while True: ne...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge ‘ENISA Flag Store 1/2’ proposé lors du FCSC 2023. Nous disposons du code source suivant, il s’agit de l’application web du challenge. Par la longueur de ce code, vous pouvez le télécharger ici. Le but du challenge est de voler un flag à nos chers amis suisses. En analysant le code nous pouvons voir plusieurs choses:| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas du challenge ‘Lapin Blanc’ proposé lors du FCSC 2023. Tout d’abord nous avons accès à un socket réseau à challenges.france-cybersecurity-challenge.fr:2350. Je décide de faire des tests avec netcat avec la commande nc challenges.france-cybersecurity-challenge.fr 2350 pour voir comment se comporte l’application et de quoi il s’agit. En faisant des tests nous pouvons avoir la sortie suivante: nc challenges.france-c...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge ‘uid’ proposé lors du FCSC 2023. A notre disposition nous avons le fichier binaire suivant: ici Nous allons ouvrir IDA pour voir ce que nous devons faire pour exploiter le binaire et ce qu’il fait. En générant le pseudocode de la fonction main() de IDA, nous avons ce résultat: int __cdecl main(int argc, const char **argv, const char **envp) { char v4[44]; // [rsp+0h] [rbp-30h] BYREF __uid_t ...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge ‘Zéro Pointé’ proposé lors du FCSC 2023. Dans ce défi, nous avons exploité une vulnérabilité liée à un débordement d’entier dans un programme C pour déclencher un signal SIGFPE et exécuter la fonction flag(). Le code lit deux valeurs long, effectue une division, et traite un cas spécifique de division par zéro. Analyse du code À notre disposition nous avons le code source zero-poi...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Énoncé Dans ce challenge, on nous a donné un fichier qui contient l’application Flask. Voici un aperçu de l’application app.py: import flask import os def escape_shell_cmd(data): for char in data: if char in '&#;`|*?~<>^()[]{}$\\': return False else: return True app = flask.Flask(__name__) @app.route('/', methods=['GET']) def index(): return flask.render_template('index.html') @app.route('/api/curl', methods=['POST']) def curl(): url = flask.request.form.get('ip') if escape_shell_cmd(...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Énoncé Dans ce challenge, on nous a donné un fichier qui contient une série de commandes Minecraft. Voici un aperçu des commandes : summon armor_stand ~2 ~-3 ~2 {NoGravity:1,Invisible:1} summon armor_stand ~3 ~-3 ~2 {NoGravity:1,Invisible:1} ... Nous ne savons pas à quoi cela correspond, mais puisque Minecraft est connu pour fabriquer des pixel art, nous avons décidé d’explorer cette possibilité. Solution Étape 1 : Lire le fichier et extraire les coordonnées Tout d’abord, nous ...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Énoncé Dans ce challenge, on nous a donné un accès au lien suivant: http://logical.tamuctf.com/ Sur celui ci il s’agit d’une application qui permet de réinitialiser un mot de passe si on l’a oublié et si notre utilisateur est présent dans leur base de données. Dans la consigne du challenge on nous parle de l’utilisateur admin. Exploitation Ce challenge m’a l’air vraiment classique donc j’essaie de récupérer avec BurpSuite la requête pour qu’on puisse l’utiliser av...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge Reverse ‘BabyRev’ proposé lors du CTF Cyber Africa Forum 2023. Nous avons à notre disposition le binaire suivant qui est téléchargeable ici. Utilisons notre outil préféré IDA Free pour décompiler le binaire. Ici ce que je vais faire, c’est de me faciliter le travail en utilisant la feature Generate PseudoCode de IDA. Dans la fonction main() nous avons le code suivant:| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge Cryptographie ‘Tower of Encryption’ proposé lors du CTF Cyber Africa Forum 2023. Nous avons un fichier challenge_file.txt qui contient la donnée suivante: JJFEMRKNKJFU4S2KIZKTIUZSJNEVUS2UJFKVUU2KJZCVMVKTGJKUURSLKZKVKMSLJJNEGVSNKZFVIR2KJRCVOVCTJRFVUS2WJNGVGSKKJJDEKR2WKNHEWWSGKZFVGS2PJFJEGVSLKZBVISSWIVLE2USDK5EVMSKUIVJTES2KJJCEKS2TJNLUUTSHIVLVOU2HJNNEKVSFJVJUYSSGJJCUOVSTJRFVESSVLFJVGU2JLJGEKS2VJJJ...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge Stéganographie ‘IT Administrator Credentials’ proposé lors du CTF Cyber Africa Forum 2023. A notre disposition nous avons ce fichier word : ici En analysant le document docx, nous pouvons remarquer que le fichier est protégé par un mot de passe. Le premier reflèxe en voyant ça est d’utiliser office2john pour générer le hash du document que nous avons à disposition pour tenter une attaqu...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article nous allons explorer le déroulement pas à pas du challenge Forensic ‘I Warn You!’ proposé lors du CTF Cyber Africa Forum 2023. Voici la consigne: (1) what is the malware name detected by McAfee that was bonded in the exe? (2) Find out the established malicious connection ASN Owner name? Flag Format: CAF_{answer1_answer2} Note 1: Don’t run the exe file in your main machine. This is a malicious file and setted for the ctf task.| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Dans cet article, nous allons explorer le déroulement pas à pas (walkthrough) du challenge Web “Baby Hacker Big Brother” proposé lors du CTF Cyber Africa Forum 2023. Lorsque nous nous rendons sur la page web du challenge, nous obtenons ce rendu: Nous avons un formulaire pour créer un compte sur le site web. Je décide d’ouvrir Burp Suite pour voir comment est implémentée l’envoi des données au serveur: GET /generate.php?input=PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz48...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction Dans cet article, nous allons explorer la vulnérabilité d’Insecure Direct Object Reference (IDOR), une vulnérabilité de sécurité courante dans les applications Web qui peut avoir des impacts significatifs sur la confidentialité, l’intégrité et la disponibilité des données. Nous allons expliquer ce qu’est une vulnérabilité IDOR, comment elle peut être exploitée, et comment la prévenir. Nous fournirons également des exemples de code vulnérable et des méthod...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Introduction Dans cet article, nous explorerons comment utiliser les sockets Python dans le contexte de la sécurité offensive. Les sockets permettent la communication entre deux machines via un réseau, et leur maîtrise est cruciale pour les professionnels de la cybersécurité. Nous aborderons des cas pratiques tels que les reverse shells et les serveurs de commande et de contrôle (C2). Les bases des sockets en Python Un socket est un point de communication entre deux processus à traver...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Qu’est ce qu’une faille upload ? Les failles d’upload sont une vulnérabilité courante sur les sites web qui permettent aux utilisateurs de télécharger des fichiers. Les attaquants peuvent exploiter cette vulnérabilité en téléchargeant des fichiers malveillants sur le serveur, ce qui peut entraîner des compromissions de sécurité. Dans cet article, nous allons expliquer comment fonctionnent les failles d’upload, comment les attaquants peuvent les exploiter et comment les corr...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Comprendre l’élévation de privilèges via les crontab sur Unix Les crontabs sont des fichiers de configuration qui permettent à l’utilisateur de planifier l’exécution de tâches régulières sur un système Unix. Les tâches programmées peuvent inclure des sauvegardes, des mises à jour de base de données, des scripts de nettoyage et d’autres tâches similaires. Les tâches programmées sont exécutées en arrière-plan, ce qui permet aux utilisateurs de planifier des tâches à...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Une injection de commande système est une technique de piratage courante utilisée pour exécuter des commandes directement sur le système d’exploitation d’un serveur web. Cette technique permet à l’attaquant de prendre le contrôle total du système d’exploitation et de l’utiliser à des fins malveillantes. L’attaque se produit lorsque les attaquants parviennent à insérer des commandes malveillantes dans des champs de formulaire ou d’autres entrées utilisateur de l’appl...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Configuration d’un serveur Apache avec SSL Installer OpenSSL sur votre serveur Apache: sudo apt-get install openssl Créer un répertoire pour les fichiers de certificat SSL: sudo mkdir /etc/ssl/webserver.kikoo.lol Générer un certificat auto-signé: sudo openssl req -new -x509 -keyout /etc/ssl/webserver.kikoo.lol/Ma+super+CA.key -out /etc/ssl/webserver.kikoo.lol/Ma+super+CA.crt -days 365 -nodes Générer un certificat SSL pour votre serveur: sudo openssl req -new -nodes -out /etc/ssl/webs...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
Créer un Dork Shodan en utilisant le hash MMH3 du fichier favicon.ico Installation du module Python mmh3 Pour utiliser le module mmh3, vous devez d’abord l’installer sur votre ordinateur. Vous pouvez le faire en utilisant la commande suivante : pip install mmh3 Création d’un fichier Python Créez un nouveau fichier Python et importez le module mmh3 en utilisant la commande suivante : import mmh3 Définition de la fonction pour générer le hash Définissez une fonction qui prend en en...| Posts on Chocapikk's Cybersecurity Blog 🛡️💻
An in-depth forensic analysis of how a seemingly legitimate Proof-of-Concept (PoC) for CVE-2020-35489 turned out to be a cleverly disguised malware. This blog post details the attack vector, payload deobfuscation, Indicators of Compromise (IoCs), and the steps taken to analyze and neutralize the threat.| Chocapikk's Cybersecurity Blog 🛡️