Ασφάλεια, με απλά λόγια
Χωρίς buzzwords. Δες τι κάνουμε — και τι δεν ισχυριζόμαστε — για να κρατάμε τα sites, τους πελάτες και τα έσοδά σου ασφαλή.
Κρυπτογράφηση σε διαμετακόμιση
Κάθε σύνδεση χρησιμοποιεί TLS 1.3. HSTS preloaded. Δεν δεχόμαστε TLS 1.0 / 1.1 και αδύναμα cipher suites. Καμία εξαίρεση για legacy clients.
Κρυπτογράφηση σε ηρεμία
Τα database volumes και τα S3 buckets είναι κρυπτογραφημένα με AES-256. Τα backups κρυπτογραφούνται πριν φύγουν από το δίκτυο παραγωγής.
2-Factor Authentication
TOTP 2FA περιλαμβάνεται σε κάθε πλάνο, με προαιρετικό email-OTP fallback. 8 μοναδικά recovery codes ανά χρήστη. Υποχρεωτικό για admins.
Hosting μόνο σε ΕΕ
Κύρια περιοχή: Φρανκφούρτη. Εφεδρική: Στοκχόλμη. Καμία διαβίβαση δεδομένων εκτός ΕΟΧ χωρίς τεκμηριωμένη Standard Contractual Clause.
Απομόνωση tenant
Κάθε customer site τρέχει στο δικό του DB scope. Τα plugins εκτελούνται σε sandbox με profile disable_functions + open_basedir — ένας tenant δεν επηρεάζει άλλον.
Rate limiting + audit log
Per-IP rate limits σε κάθε δημόσια φόρμα. Κάθε admin action καταγράφεται στο activity log με υποκείμενο, δρώντα, IP και πλήρες diff αλλαγμένων πεδίων.
Πρακτικές που τηρούμε
Ετήσιο εξωτερικό pen-test
Ανεξάρτητη εταιρεία στην ΕΕ. Critical findings διορθώνονται πριν υπογραφεί το report.
SAST στο CI
Κάθε PR τρέχει static analysis (Psalm + Larastan). PRs δεν γίνονται merge με security severity > medium.
Παρακολούθηση dependencies
Composer + npm dependencies σαρώνονται καθημερινά. Critical CVEs ενεργοποιούν patch release την ίδια μέρα.
Διαχείριση secrets
Κανένα secret στο repo. Τα production secrets ζουν στο HashiCorp Vault με τριμηνιαία rotation.
Backups + restore drills
Καθημερινά encrypted snapshots για 30 ημέρες. Τρέχουμε πλήρες restore drill ανά τρίμηνο.
Απόκριση σε incidents
Τεκμηριωμένο runbook. Severity 1 incidents αποκτούν public post-mortem εντός 14 ημερών στο /blog.
Υπογεγραμμένα webhooks
Outbound webhooks υπογεγραμμένα με HMAC-SHA256. Οι πελάτες επαληθεύουν ανά αίτημα.
Hashing κωδικών
bcrypt με cost 12 (configurable). Κανένας κωδικός δεν φεύγει unhashed από το request boundary.
Υπεύθυνη γνωστοποίηση
Βρήκες ευπάθεια; Στείλε email στο security@radcms.io με βήματα αναπαραγωγής. Κρυπτογράφησε με το PGP key μας για ευαίσθητα ευρήματα.
Η δέσμευσή μας
- Επιβεβαίωση παραλαβής εντός 48 ωρών.
- Triage απόφαση εντός 5 εργάσιμων ημερών (in scope / out of scope / duplicate).
- Συνεχής ενημέρωση μέχρι το ζήτημα να λυθεί.
- Δημόσια αναφορά σε εσένα (αν θες) όταν δημοσιευτεί το fix.
- Bounty για έγκυρα critical/high ευρήματα (case-by-case, αυτή τη στιγμή έως €5.000).
Παρακαλούμε μην δοκιμάζεις πάνω σε customer data, μην τρέχεις automated scanners με μεγάλο όγκο και δώσε μας λογικό χρόνο για διόρθωση πριν τη δημόσια αποκάλυψη.
Audit σε εξέλιξη · στόχος 2026
Διαθέσιμο για πλάνα Enterprise