Secure TYPO Extensions

2,731 views

Published on

in2code: Security in TYPO3 Extensions

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,731
On SlideShare
0
From Embeds
0
Number of Embeds
66
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Secure TYPO Extensions

  1. 1. Du kommst hier nicht rein! Sicher programmieren<br />
  2. 2. Sicher – warum?<br />Live Beispiele in echten T3 Extensions<br />SQL Injection<br />XSS (Cross Site Script)<br />Filtern der Usereingaben<br />Vorstellung von wt_doorman<br />Allgemeine Links zum Thema<br />
  3. 3. Sicher – Warum?<br />
  4. 4. Es ist kein Problem eine unsichere Extension einzusetzen<br />… so lange nichts passiert!<br />
  5. 5. Worstcase für die Agentur:<br />Datenverlust<br />Unmut des Kunden<br />Zeitverlust<br />Geldverlust<br />Mögliche Schadensersatzforderungen<br />Mögliche Folgeschäden<br />
  6. 6. Beispiele aus dem TER<br />
  7. 7. SQL injection<br />
  8. 8. Cross Site Scripting<br />
  9. 9. Filtern der Usereingaben<br />
  10. 10. Umwandlung in Integer<br />$int = intval($string);<br />Findet Einsatz vorwiegend bei Datenbank Aktionen (z.B. Zeige Datensatz mit uid = intval($uid) )<br />Bsp: <br /><ul><li>„xxx“ zu 0
  11. 11. „33“ zu 33</li></li></ul><li>String bei Datenbankaktionen<br />$string = <br />$GLOBALS[‘TYPO3_DB‘]->fullQuoteStr($string);<br />Findet Einsatz vorwiegend bei Datenbank Aktionen (z.B. Zeige Datensatz mit wert = „Usereingabe“)<br />Bsp: <br /><ul><li>„x‘xx“ zu „x‘xx“
  12. 12. „3“3“ zu „3“3“</li></li></ul><li>Ausgabe im FE<br />$string = htmlentities($string);<br />Ausgabe von Text (auch in HTML) – Wandlung der Sonderzeichen in ASCII Code<br />Bsp: <br /><ul><li>„xßxx“ zu „x&szlig;xx“
  13. 13. „3‘>3“ zu „3'>3“</li></li></ul><li>Weitere Funktionen<br />t3lib_div::removeXSS()<br />strip_tags() (kein umfassender Schutz!)<br />tslib_cObj::removeBadHTML()<br />Addslashes() <br />Bzw. t3lib_div::addSlashesOnArray()<br />
  14. 14. wt_doorman<br />
  15. 15. <ul><li>Nutzung zur Filterung sämtlicher GET und POST Parameter einer TYPO3 Installation
  16. 16. Nutzung in eigener Extension
  17. 17. wt_directory
  18. 18. wt_gallery</li></li></ul><li>int, definedvalues, text, alphanum, htmlentities<br />
  19. 19.
  20. 20. Allgemeine Links<br />Zum Thema<br />
  21. 21. <ul><li>wt_doorman:http://typo3.org/extensions/repository/view/wt_doorman/current/
  22. 22. Wikipedia zu SQL Injection:http://de.wikipedia.org/wiki/SQL_Injection
  23. 23. Wikipedia zu XSS:http://de.wikipedia.org/wiki/Cross-Site_Scripting
  24. 24. typo3.org zum Thema securityhttp://typo3.org/teams/security/security@typo3.org
  25. 25. Tutorial Henning Pingel:http://www.slideshare.net/hepi/developing-extensions-with-security-in-mind-presentation</li></li></ul><li>Vielen Dank<br />www.in2code.de<br />Stefan Busemann<br />Tina Gasteiger<br />Alex Kellner<br />In2code.<br />

×