•  

    postMessage pozwala na wymienianie danych pomiędzy różnymi domenami przy użyciu #javascript
    Dzisiaj w #od0dopentestera o tym, jak sprawdzić źródło wiadomości oraz dlaczego nie używać wyrażeń regularnych do tego celu.

    window.addEventListener("message", function(message) {
    alert(message.data);
    }


    Jeżeli na stronie umieścimy taki kawałek kodu, dowolna inna witryna będzie mogła przesłać do naszej domeny wiadomość i wyświetlić ją użytkownikowi:

    document.getElementById("f").contentWindow.postMessage("Wiadomość", "*");

    Jest to możliwe ponieważ nie sprawdzamy skąd pochodzi taka wiadomość.
    Powinniśmy pozwalać na wykonanie akcji tylko zaufanym stroną.
    W tym celu przeglądarka do każdej wiadomości dodaje pole origin, w którym zawarta jest nazwa domeny próbującej przesłać wiadomość:

    if (message.origin == "http://naszadomena.local")

    Ale ciągi znaków można sprawdzać na różne sposoby, na przykład przy użyciu wyrażeń regularnych:

    if (/^http\/\/www.domena.local$/.test(message.origin))

    Łatwo wtedy zapomnieć, że kropka - oznacza dowolny jeden znak.
    Aby sprawdzać czy jest tam rzeczywiście kropka - musielibyśmy poprzedzić ją \.
    W tym przypadku dane można również wysłać z wwwXdomena.local czy też wwwYdomena.local.

    if (message.origin.indexOf("www.domena2.local") > 0)

    Funkcja indexOf zwraca offset pod którym odnalazła poszukiwany ciąg.
    Sprawdza zatem czy podany tekst znajduje się gdziekolwiek.
    Aby obejść ten filtr możemy stworzyć subdomenę: www.domena2.local.innadomena.local

    Jeżeli chcesz być wołany dodaj się do Mirkolisty.
    Masz pytanie na temat bezpieczeństwa? Zadaj je na grupie od 0 do pentestera na Facebooku.

    Ps. Zapraszam do obserwowania tagu autorskiego #od0dopentestera

    #security #bezpieczenstwo #programowanie #programista15k #informatyka #it #nauka #technologia #ciekawostki #gruparatowaniapoziomu
    pokaż całość

    źródło: youtube.com

...to tylko najnowsze aktywności użytkownika Zajc

Zobacz wszystkie dodane znaleziska, komentarze i wpisy korzystając z menu powyżej.