<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Forum Pasja Informatyki - Najnowsze z tagiem csrf</title>
<link>https://forum.pasja-informatyki.pl/tag/csrf</link>
<description>Powered by Question2Answer</description>
<item>
<title>Token CSRF a POST requesty</title>
<link>https://forum.pasja-informatyki.pl/547041/token-csrf-a-post-requesty</link>
<description>Witam, czy w przypadku używania POST requestów, token csrf jest wgl. potrzebny?</description>
<category>JavaScript</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/547041/token-csrf-a-post-requesty</guid>
<pubDate>Mon, 19 Jul 2021 06:40:18 +0000</pubDate>
</item>
<item>
<title>Metoda &quot;double submitted cookie&quot;. Bezpieczeństwo dla CORS.</title>
<link>https://forum.pasja-informatyki.pl/533380/metoda-double-submitted-cookie-bezpieczenstwo-dla-cors</link>
<description>

&lt;p&gt;Witam, dużo czytałem na temat wspomnianej w tytule metody przeciwdziałania atakom CSRF. Wiem, że po wejściu na stronę, ustawiany jest plik cookie z atrybutem httpOnly zawierający token, dodatkowo ten sam token przesyłany jest na klienta w jakiejś formie (np. jako ukryte pole formularza). Po wysłaniu requesta, oba tokeny muszą się zgadzać. No i niby jesteśmy bezpieczni, bo atakujący tworząc linka z requestem, nie wie jaki token utworzy serwer w pliku cookie u klienta.&lt;/p&gt;



&lt;p&gt;Co jednak, jeśli skrypt atakującego najpierw wykona żądanie GET na &quot;atakowaną stronę&quot;, &lt;strong&gt;sparsuje odpowiednio odpowiedź&lt;/strong&gt; i wyciągnie z niej CSRF token? Jak wiadomo, pliki cookie ustawiane są zawsze automatycznie. Mamy więc wszystkie informacje, by wykonać krytyczny request.&lt;/p&gt;



&lt;p&gt;Wiem, że pogrubiony fragment jest zastrzeżony przez SOP (Single Origin Policy). Zastanawia mnie jednak to, jak sprawa wygląda dla serwera zezwalającego na CORS. &lt;em&gt;Czy w takiej sytuacji całe omawiane zabezpieczenie jest bezskuteczne? &lt;/em&gt;&lt;/p&gt;



&lt;p&gt;Z góry dziękuje za informację zwrotną czy dobrze myślę &lt;img alt=&quot;laugh&quot; src=&quot;https://forum.pasja-informatyki.pl/qa-plugin/ckeditor4/plugins/smiley/images/teeth_smile.png&quot; style=&quot;height:23px; width:23px&quot; title=&quot;laugh&quot;&gt;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
<category>Bezpieczeństwo, hacking</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/533380/metoda-double-submitted-cookie-bezpieczenstwo-dla-cors</guid>
<pubDate>Tue, 16 Mar 2021 18:57:24 +0000</pubDate>
</item>
<item>
<title>Symony 5 The CSRF token is invalid - na hostingu</title>
<link>https://forum.pasja-informatyki.pl/524785/symony-5-the-csrf-token-is-invalid-na-hostingu</link>
<description>

&lt;p&gt;Witam,&lt;/p&gt;



&lt;p&gt;Mam dziwny problem. mam aplikacje u siebie na PC na localhost która działa prawidłowo, po skopiowaniu na hosting wywala mi błąd&amp;nbsp;&lt;/p&gt;



&lt;table id=&quot;registration_form-errors&quot;&gt;
	

&lt;tbody&gt;
		

&lt;tr&gt;
			

&lt;td&gt;The CSRF token is invalid. Please try to resubmit the form.&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Nie mam pojęcia jak rozwiązać ten problem, kasowałem cache, próbowałem na wersji prod i dev, wszystkie formularze na aplikacji plują tym błędem, mam druga aplikacje zrobiona 2 miesiące na której wszystkie formularze działają prawidłowo.&lt;/p&gt;</description>
<category>PHP</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/524785/symony-5-the-csrf-token-is-invalid-na-hostingu</guid>
<pubDate>Tue, 12 Jan 2021 14:13:18 +0000</pubDate>
</item>
<item>
<title>Jak wysyłać tokeny CSRF za pomocą Ajax'a oraz PHP.</title>
<link>https://forum.pasja-informatyki.pl/438667/jak-wysylac-tokeny-csrf-za-pomoca-ajaxa-oraz-php</link>
<description>

&lt;p&gt;Cześć,&lt;/p&gt;



&lt;p&gt;Ostatnio stworzyłem alert (info o cookies), działał on normalnie.. tzn. gdy nowy użytkownik wchodzi na stronę, wyskakuję mu alert zamyka go 'iksem', i odrazu wysyłam wiadomość do PHP za pomocą ajax'a i PHP tworzy odpowiedni cookie.&lt;/p&gt;



&lt;p&gt;Problem w tym że zaimplementowałem do strony CSRF protection i teraz gdy dane się wysyłają po kliknięciu X, wywala response 404 valid csrf.. co jest logiczne. Ale&amp;nbsp;mam problem z wysłaniem owego csrf za pomocą ajaxa.&lt;/p&gt;



&lt;p&gt;Próbowałem zrobić takie coś (znalazłem jakiś randomowy poradnik na necie)&lt;/p&gt;



&lt;pre class=&quot;brush:jscript;&quot;&gt;
&amp;lt;!-- CSRF Tokens --&amp;gt;
&amp;lt;div class=&quot;js-csrf-token&quot; style=&quot;display:none;&quot; data-csrf-token-name=&quot;X-{{ csrf_name() }}&quot; data-csrf-token-value=&quot;{{ csrf_token() }}&quot;&amp;gt;&amp;lt;/div&amp;gt;

&amp;lt;!-- Accept cookies by user --&amp;gt;
&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;
    function getCsrfToken() {
        const csrfTokenNode = document.getElementsByClassName('js-csrf-token')[0];

        return {
            name: csrfTokenNode.getAttribute('data-csrf-token-name'),
            value: csrfTokenNode.getAttribute('data-csrf-token-value')
        }
    }
    console.log(getCsrfToken());
    const csrfToken = getCsrfToken();

    $(function () {
        $(&quot;.uk-alert-close&quot;).on(&quot;click&quot;, function(e) {
            $.ajax({
                url: '{{ base_url() }}/cookies/info',
                method : &quot;POST&quot;,
                cache: false,
                dataType : &quot;xml&quot;,
                beforeSend: function(request) {
                    request.setRequestHeader(csrfToken.name, csrfToken.value);
                },
                data : {
                    accept:  true
                }
            })
                .done(function() {
                })
                .always(function() {
                });
        });
    });
&amp;lt;/script&amp;gt;&lt;/pre&gt;



&lt;p&gt;I pomysł był taki żeby wysłać to jako Header requestu ajaxa (?), no i to nie działa.. w sensie gdy sprawdzam header i jego zawartość się wysyła, działa, ale nadal wywala response z valid csrf.&lt;/p&gt;



&lt;p&gt;Ogólnie bym potrafił do zrobić, ale nie do końca wiem na czym polega wysyłanie tych tokenów i jak one działają. Ma ktoś jakiś pomysł jak to mogę zaimplementować żeby przez Ajax'a (i jQuery) mogę to wysłać?&lt;/p&gt;



&lt;p&gt;A i dodam że csrf zaimportowałem od slim'a bo stronę właśnie robię w slim'ie (php).&lt;/p&gt;



&lt;p&gt;Z góry dziękuję!&lt;/p&gt;</description>
<category>PHP</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/438667/jak-wysylac-tokeny-csrf-za-pomoca-ajaxa-oraz-php</guid>
<pubDate>Fri, 05 Jul 2019 10:12:45 +0000</pubDate>
</item>
<item>
<title>Jak działa generowanie tokenu CSRF</title>
<link>https://forum.pasja-informatyki.pl/395712/jak-dziala-generowanie-tokenu-csrf</link>
<description>Cześć, mam do was pytanie. Otóż realizuje aktualnie projekt, i staram się podejść do niego skrupulatnie. Nie siedziałem w życiu dużo nad różnego rodzaju zabezpieczeniami przed atakami hakerskimi, i chciałbym się was zapytać czy dobrze pojąłem idee tokenu CSRF. Pisane jest to w czystym php&lt;br /&gt;
&lt;br /&gt;
1. Na początku w formularzu z logowaniem włączam sesje&lt;br /&gt;
2. Generuje randomowy token przy użyciu jakiejś funkcji do tego przeznaczonej np: md5(uniqid(rand(), true))&lt;br /&gt;
3. Token umieszczam w formularzu jako niewidoczny, i zapisuje do sesji&lt;br /&gt;
4. W pliku w którym odbierany jest token odczytuje sesje, i jeżeli różni się on od tego który został w formularzu wyświetlam błąd.&lt;br /&gt;
&lt;br /&gt;
Dobrze to zrozumiałem? Dzięki z góry</description>
<category>Bezpieczeństwo, hacking</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/395712/jak-dziala-generowanie-tokenu-csrf</guid>
<pubDate>Fri, 23 Nov 2018 20:57:33 +0000</pubDate>
</item>
<item>
<title>CSRF error błąd przy przesyłaniu pliku</title>
<link>https://forum.pasja-informatyki.pl/332278/csrf-error-blad-przy-przesylaniu-pliku</link>
<description>Witam&lt;br /&gt;
&lt;br /&gt;
Spotkałam się dziś z dziwnym błędem, którego nigdy dotąd nie widziałam. Ale od początku :&lt;br /&gt;
&lt;br /&gt;
- jak zawsze byłam zalogowana na deviantART *taka strona dla artystów* i przeglądałam komentarze. W jednym z nich pewna osoba pytała mnie o narzędzia jakich używam i dosłała link z amazona, by upewnić się, że to te same przybory. Oczywiście w niego kliknęłam.&lt;br /&gt;
&lt;br /&gt;
- chcąc odpowiedzieć na pytanie tej osoby, wysyłam zdjęcie z przyborami na *deviantartowy schowek na obrazki* stash. Widzę jednak, że zdjęcie jest nieobrócone, usuwam i chcę wrzucić je jeszcze raz.&lt;br /&gt;
&lt;br /&gt;
I tu się pojawia komunikat : Error uploading file: CSRF error&lt;br /&gt;
&lt;br /&gt;
Za każdym kolejnym razem, gdy chciałam przesłać jakikolwiek plik na stash, wyskakuje ten sam błąd *próbowałam na Mozilli i Chrome, mam wrażenie, że to nie wina przeglądarki*&lt;br /&gt;
&lt;br /&gt;
Nie wiem czy to zadziałało w jakikolwiek sposób na inne strony, niczego innego dziwnego nie zauważyłam&lt;br /&gt;
&lt;br /&gt;
Czyściłam komputer dwoma programami : Malwarebytes i CCleaner&lt;br /&gt;
&lt;br /&gt;
Usunęło mi to pół historii przeglądania, cały kosz i kilka innych śmieci, ale problem nadal jest i nie mam pojęcia o co może chodzić&lt;br /&gt;
&lt;br /&gt;
Pozdrawiam i liczę na jakąkolwiek pomoc!</description>
<category>Sieci komputerowe, internet</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/332278/csrf-error-blad-przy-przesylaniu-pliku</guid>
<pubDate>Mon, 05 Mar 2018 18:04:45 +0000</pubDate>
</item>
<item>
<title>mvc - csrf a post</title>
<link>https://forum.pasja-informatyki.pl/306900/mvc-csrf-a-post</link>
<description>

&lt;p&gt;Witam.&lt;/p&gt;



&lt;p&gt;&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Uwaga:&lt;/p&gt;



&lt;pre class=&quot;brush:plain;&quot;&gt;
 login/new ( {controller}/{method} )&lt;/pre&gt;



&lt;p&gt;Mam następującą sytuację:&lt;/p&gt;



&lt;p&gt;Formularz wyświetlam w &lt;strong&gt;login/new&lt;/strong&gt;. Następnie po wypełnieniu&amp;nbsp;żądanie POST zostaje wysłane do &lt;strong&gt;login/create&amp;nbsp;&lt;/strong&gt;gdzie przechodzi&amp;nbsp;walidacje. W przypadku niepowodzenia ponownie zostaje wyświetlony formularz&amp;nbsp; z poprzednimi danymi POST (&quot;efekt zapamiętywania&quot;).&lt;/p&gt;



&lt;p&gt;Czy wyświetlanie formularza z poziomu innej metody niż pierwotna&amp;nbsp;jest dobrym pomysłem? Niby dzięki temu mogę przesłać dane POST do widoku, no ale..np.&amp;nbsp;&lt;/p&gt;



&lt;p&gt;Jeżeli użytkownik zostanie przekierowany na&amp;nbsp;&lt;strong&gt;login/create&lt;/strong&gt;, a następnie odświeży stronę to do serwera trafią poprzednie dane, co zaowocuje wyrzuceniem błędu o niepoprawności tokenu. Aby tego uniknąć można użyć sesji i za każdym niepowodzeniem przekierowywać do &lt;strong&gt;login/new&lt;/strong&gt;. No ale znowu nie jest to tak wygodne jak renderowanie widoku.&lt;/p&gt;



&lt;p&gt;Co o tym myślicie? Czy taka sytuacja jest dopuszczalna? Jakieś inne alternatywy?&lt;/p&gt;



&lt;p&gt;Kod można podejrzeć &lt;a href=&quot;https://github.com/idgu/mvc-login-register&quot; rel=&quot;nofollow&quot;&gt;tutaj&lt;/a&gt;&lt;/p&gt;</description>
<category>PHP</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/306900/mvc-csrf-a-post</guid>
<pubDate>Mon, 27 Nov 2017 19:11:46 +0000</pubDate>
</item>
<item>
<title>Zabezpiecznie CSRF w PHP</title>
<link>https://forum.pasja-informatyki.pl/255022/zabezpiecznie-csrf-w-php</link>
<description>

&lt;p&gt;Mam pytanie czy jak umieszczę&amp;nbsp;csrf_token w ciasteczku będzie&amp;nbsp;to bezpiecznie ?&lt;/p&gt;



&lt;pre class=&quot;brush:php;&quot;&gt;
&amp;lt;?php
setcookie('csrf_token',bin2hex(random_bytes(32)));
//Finalnie dorzuce do setcookie httponly i security na true
?&amp;gt;&lt;/pre&gt;



&lt;p&gt;Czytałem że zazwyczaj umieszcza się to w sesjach.&lt;/p&gt;



&lt;p&gt;Proszę o odpowiedż&lt;/p&gt;</description>
<category>PHP</category>
<guid isPermaLink="true">https://forum.pasja-informatyki.pl/255022/zabezpiecznie-csrf-w-php</guid>
<pubDate>Fri, 19 May 2017 17:05:24 +0000</pubDate>
</item>
</channel>
</rss>