Slide 1

Slide 1 text

WordPress Security 101 Found.ation, TheHubEvents, 16/04/2016 "WordPress Hacked: Real Cases" Gerasimos Mourelatos, FixMyWP

Slide 2

Slide 2 text

Who am I? Gerasimos Mourelatos Project Engineer/WordPress Consultant Co-founder @ FixMyWP.com Co-founder @ HostMyWP.com

Slide 3

Slide 3 text

Συνήθη Malware Προβλήματα για WordPress Εγκαταστάσεις

Slide 4

Slide 4 text

● Backdoors ● Pharma Hacks ● Drive by Downloads ● Malicious Redirects

Slide 5

Slide 5 text

BACKDOORS ● Παραβίαση μέσω Command Line(ssh) ή Exploit Kits ● Ο επιτιθέμενος μπορεί να αποκτήσει πρόσβαση σε όλο το server

Slide 6

Slide 6 text

PHARMA HACKS ● Spam Injections ● Το αποτέλεσμα είναι εμφανές μόνο στα Google Bot ● Κύριος στόχος είναι το spamming και όχι η παραβίαση για μετάδοση malware

Slide 7

Slide 7 text

DRIVE BY DOWNLOADS ● Script Injection ● Conditional Malware

Slide 8

Slide 8 text

MALICIOUS REDIRECTS ● .htaccess Redirects ● Php Encoded Redirect (index.php, header.php, footer.php)

Slide 9

Slide 9 text

BACKDOOR HACK ANALYSIS

Slide 10

Slide 10 text

ΠΡΩΤΑΓΩΝΙΣΤΕΣ ● Μια WordPress Εγκατάσταση ● Ένα Vulnerable Plugin ● Ένα Email Plugin ● Απουσία Principle of Least Privilege ● Hackers

Slide 11

Slide 11 text

Η μεγαλύτερη διαρροή όλων των εποχών ήταν αποτέλεσμα μιας Hacked WordPress Εγκατάστασης

Slide 12

Slide 12 text

Επίθεση μέσω μιας Vulnerable έκδοσης του Slider Revolution Plugin (

Slide 13

Slide 13 text

Πρόσβαση στο Server μέσω Command Line Exploit kit: https://www.exploit-db.com/exploits/35385/

Slide 14

Slide 14 text

Πρόσβαση στα DB Login Details της εγκατάστασης μέσω του Slider Revolution /wp-admin/admin-ajax.php?action=revslider_show_image&img=../wp-config.php

Slide 15

Slide 15 text

Χρήση ενός MySQL DB client και σύνδεση με τα DB Login details που εμφανίζονται στο wp-config.php

Slide 16

Slide 16 text

Πρόσβαση στον Email Server μέσω του WP SMTP Plugin το οποίο αποθηκεύει τα Email Login Details ως Plain text

Slide 17

Slide 17 text

Σημάδια μιας Hacked WordPress Εγκατάστασης

Slide 18

Slide 18 text

Η φανερή παραβίαση

Slide 19

Slide 19 text

Απότομα μεγάλη εξερχόμενη κίνηση των email

Slide 20

Slide 20 text

SITE DE-INDEXED site:example.com

Slide 21

Slide 21 text

Ασυνήθιστα Αποτελέσματα Αναζήτησης

Slide 22

Slide 22 text

Browser Screen of Death(BSOD)

Slide 23

Slide 23 text

Google Webmaster Tools Warning

Slide 24

Slide 24 text

Homepage Redirects (συνήθως μέσω του .htacces)

Slide 25

Slide 25 text

Περίεργοι Χαρακτήρες στο Header & Footer της ιστοσελίδας

Slide 26

Slide 26 text

● Απότομη αύξηση των Spam Comment ● Διαφημίσεις άσχετες με το περιεχόμενο της ιστοσελίδας

Slide 27

Slide 27 text

Φόρτωση περιεχομένου από εξωτερικές πηγές

Slide 28

Slide 28 text

Προειδοποίηση για Malware από το Antivirus

Slide 29

Slide 29 text

Μεγαλύτερος αριθμός administrator από τον πραγματικό

Slide 30

Slide 30 text

Ασυνήθιστα Queries στa Traffic Αnalytic Reports (ΣΥΝΗΘΩΣ ΕΧΟΥΝ ΣΧΕΣΗ ΜΕ PORN ΚΑΙ PHARMA)

Slide 31

Slide 31 text

Αρχεία που δεν ανήκουν στη WordPress διανομή

Slide 32

Slide 32 text

Ασυνήθιστος κώδικας στο wp-config.php

Slide 33

Slide 33 text

Βήματα για τον καθαρισμό μιας WordPress Εγκατάστασης

Slide 34

Slide 34 text

Η ΦΙΛΟΣΟΦΙΑ

Slide 35

Slide 35 text

1. Πρόσβαση στο διαδίκτυο(!) 2. Πρόσβαση στο Dashboard 3. Πρόσβαση στο Hosting Panel 4. Ένα FTP Client(Filezilla) 5. Υπομονή και αυτοσυγκέντρωση (ΩΩΩΩΜΜΜΜΜ!)

Slide 36

Slide 36 text

ΕΝ ΑΡΧΗ ΗΝ ΤΟ BACKUP

Slide 37

Slide 37 text

WEBSITE

Slide 38

Slide 38 text

Σημειώνουμε τα Premium Themes & Plugins

Slide 39

Slide 39 text

Σημειώνουμε τη τρέχουσα WordPress έκδοση

Slide 40

Slide 40 text

Αναβάθμιση όλων των Pending Themes & Plugins

Slide 41

Slide 41 text

Αλλαγή όλων των κωδικών για τους Administrators & Logout

Slide 42

Slide 42 text

BACKUP

Slide 43

Slide 43 text

HOSTING PANEL

Slide 44

Slide 44 text

● Διαγραφή παλιού DB User και δημιουργία νέου* ● Σύνδεση του νέου DB user με τη Database *σημειώνουμε τα DB user details (username & password)

Slide 45

Slide 45 text

Έλεγχος της Database μέσω phpMyAdmin για ασυνήθιστες εγγραφές

Slide 46

Slide 46 text

Αλλαγή των Administrator Usernames μέσω του PhpMyAdmin

Slide 47

Slide 47 text

FILE MANAGER

Slide 48

Slide 48 text

Διαγραφή όλων των Core WordPress Files και Directories wp-*.php/readme.html/license.txt/wp-admin/wp-includes & των index.php κάτω από το wp-content/ ΠΡΟΣΟΧΗ: Δε διαγράφουμε τα παρακάτω: - wp-config.php - wp-content

Slide 49

Slide 49 text

Upload των αντίστοιχων files & directories της ίδιας έκδοσης Προτείνουμε τη συμπίεση σε zip πριν το upload και extract μετά από αυτό

Slide 50

Slide 50 text

FTP

Slide 51

Slide 51 text

Ελεγχος του wp-config.php για Code Injection

Slide 52

Slide 52 text

Ενημέρωση του wp-config.php με τα νέα στοιχεία για τον DB User

Slide 53

Slide 53 text

Αλλαγή των WordPress Authentication Keys https://api.wordpress.org/secret-key/1.1/salt/

Slide 54

Slide 54 text

● Χρήση των παραπάνω για την αντικατάσταση των αντίστοιχων τιμών στο wp-config-sample.php ● Διαγραφή του wp-config.php και rename του wp-config.-sample.php σε wp-config.php

Slide 55

Slide 55 text

Διαγραφή Cache (ΑΝ ΕΙΝΑΙ ΕΝΕΡΓΟΠΟΙΗΜΕΝΗ) ΣΤΟ /WP-CONTENT/CACHE

Slide 56

Slide 56 text

Έλεγχος για αρχεία που δεν ανήκουν στη WordPress διανομή και διαγραφή τους • root • wp-content/plugins • wp-content/themes • wp-content/uploads

Slide 57

Slide 57 text

● Διαγραφή παλαιότερων backup ● Έλεγχος για *.php και *.js αρχεία στο /wp-content/uploads/*

Slide 58

Slide 58 text

Έλεγχος για *.php και *.js αρχεία τα οποία έχουν ίδια ημερομηνία δημιουργίας ή τροποποίησης με αυτή των αρχείων που περιέχουν malware

Slide 59

Slide 59 text

WEBSITE

Slide 60

Slide 60 text

Έλεγχος του αριθμού Administrators στο Users Page του Dashboard

Slide 61

Slide 61 text

● Επανεγκατάσταση όλων των Themes & Plugins* ● Εγκατάσταση WordFence και έλεγχος για Malware * Τα premium theme & plugins πρέπει να τα ανακτήσουμε από τις ιστοσελίδες που τα αποκτήσαμε

Slide 62

Slide 62 text

Εαν έχετε και άλλα Directories εκτός WordPress τότε πρέπει να δηλώσετε στο WordFence, μέσω της ειδικής ρύθμισης που έχει, ώστε να τα σαρώσει

Slide 63

Slide 63 text

EXTRA

Slide 64

Slide 64 text

Αν έχετε > 1 WordPress Εγκαταστάσεις στο ίδιο Hosting Account τότε πρέπει να επαναλάβεται τη διαδικασία και για τις υπόλοιπες ιστοσελίδες

Slide 65

Slide 65 text

BACKUP

Slide 66

Slide 66 text

[email protected] https://fixmywp.com/ fb @ fixmywp tw @fixmywp