Pytanie:
Czy tajne żądania GET mogą być brutalnie wymuszone?
Kargari
2018-06-19 09:57:36 UTC
view on stackexchange narkive permalink

Powiedzmy, że mam na serwerze stronę lub folder, który chcę zachować w tajemnicy.

  example.com/fdsafdsafdsfdsfdsafdrewrew.html  

lub

  example.com/fdsafdsafdsfdsfdsafdrewrewaa34532543432/admin/index.html

Jeśli tajna część ścieżki jest dość długa, czy mogę założyć, że posiadanie takiej tajnej strony lub obszaru jest bezpieczne i trudno będzie to odgadnąć lub użyć brutalnej siły?

Jakie są ogólne problemy z tym podejściem?

Zauważ, że nie pytam, jak to zrobić dobrze, ale jakie mogą być problemy z tym podejściem, jeśli w ogóle.

pod warunkiem, że Twoje maszyny są bezpieczne (https, dobre Wi-Fi itp.) i nigdy nie podasz publicznie linku do tajnego adresu URL, wtedy długi statyczny adres URL byłby bardzo trudny do odgadnięcia przez osobę postronną.
och, i wyłączyłeś listy katalogów i strony z „inteligentnymi błędami”, które sugerują ścieżki ...
Zwróć uwagę, że ta praktyka jest uważana za „wystarczająco dobrą” przez niektóre dobrze znane usługi internetowe, takie jak Dokumenty Google (które mają funkcję udostępniania przez łącze) i Overleaf (współpracujący internetowy edytor Latex).
@FedericoPoloni: Google prawdopodobnie będzie śledzić żądania zbiorcze i ostatecznie je blokować.Bez tego jest _ bardziej_ prawdopodobne, że odniesie sukces dzięki bruteforsingowi (oczywiście w stosunku do długości adresu URL).
Niektóre witryny robią to, na przykład w przypadku linków do resetowania hasła.Najbezpieczniejszym rozwiązaniem, jeśli zdecydujesz się pójść tą drogą, jest uczynienie z sekretu parametru GET (więc `index.html? Secret = hjasdhasdhasdasd`), aby uniknąć buforowania i przypadkowego natknięcia się robotów na Twój link i uczynienie go ** tymczasowym **
Tokeny @BgrWorker w linkach do resetowania hasła powinny być używane tylko raz, a następnie wyrzucane.To, o co prosi OP, to stała wartość, którą można ponownie wykorzystać, ale tak nie jest dokładnie to samo
Tak długo, jak ścieżka nigdy nie została upubliczniona, trudno byłoby to zgadnąć, jednak jest to zabezpieczenie poprzez niejasność, więc tak naprawdę nie ma nic do zabezpieczenia adresu URL.Radziłbym, aby trochę to rozszerzyć i uczynić hash adresu URL dynamicznym, aby wszystko zostało trafione w index.html, byłoby na innej, ale znanej ścieżce, łatwiejszej do wykonania w niektórych frameworkach niż w innych.
jeśli jest za pośrednictwem protokołu https, nie jest tak źle, jak podanie hasła lub czegoś, co można również wykorzystać do innych celów.
@FedericoPoloni Czy Dokumenty Google nie pozwalają na ograniczenie dostępu do niektórych kont, więc inni nie mogą uzyskać dostępu, nawet jeśli odgadną adres URL?Overleaf V2 domyślnie wyłącza udostępnianie linków.
@GoodDeeds Share-by-link to jedna z dozwolonych opcji udostępniania w Dokumentach Google.Możesz także zdecydować się na udostępnienie na określonych kontach, ale to inna sprawa.
Jest to w zasadzie zabezpieczenie przez zaciemnienie, które samo w sobie nigdy nie jest wystarczające.
@CompuChip Nie, nie jest.Nie więcej niż hasło jest „zabezpieczeniem przez zaciemnienie”, ponieważ nie każdy je zna.
@DrEval może wtedy źle zrozumiałem pytanie, ale przeczytałem, że OP chce tylko zasłonić stronę, utrudniając odgadnięcie adresu URL niż odpowiednio go chronić, np.używając hasła.
@CompuChip Jeśli adres URL jest wystarczająco bezpieczny, „staje się” hasłem.Wciąż jest to niepewne, ponieważ nie jest to dobry sposób przesyłania haseł, ale nie jest to zabezpieczenie przez zaciemnienie.
Jeśli masz dokument robots.txt, który może ujawniać niektóre adresy URL, ale jeśli mają one być ukryte, prawdopodobnie nigdy nie umieszczasz ich w pliku robots.txt.
Jeśli ktoś może spojrzeć na logi serwera internetowego, mógłby znaleźć wszystkie te interesujące adresy URL.
Również powiązane: [Jak mało prawdopodobne jest, że zostanie odgadnięty link do dokumentu Google?] (Https://security.stackexchange.com/questions/29449/how-unlikely-is-it-that-a-google-doc-link-jest odgadnięty)
Odwiedź [„security through obscurity to zły pomysł”] (https://stackoverflow.com/questions/533965/why-is-security-through-obscurity-a-bad-idea).
Osiem odpowiedzi:
forest
2018-06-19 10:04:32 UTC
view on stackexchange narkive permalink

Zasadniczo pytasz, czy przekazywanie tajnych parametrów w żądaniu GET jest bezpieczne. W rzeczywistości jest to klasyfikowane jako luka. Nie jest możliwe brutalne wymuszenie wystarczająco długiego ciągu pseudolosowego, zakładając, że serwer po prostu zwraca statyczną odpowiedź 404 za każdym razem, gdy zostanie określona nieprawidłowa ścieżka, ale w praktyce istnieje wiele innych problemów z bezpieczeństwem, które sprawiają, że jest to niebezpieczna technika:

  • Oprogramowanie rejestrujące często rejestruje żądania GET w postaci zwykłego tekstu, ale nie POST.

  • Użycie GET sprawia, że ​​ CSRF jest trywialny * podczas przetwarzania aktywnej zawartości.

  • Nagłówki odwołań mogą powodować wyciek tajnych wartości do innych witryn internetowych.

  • Historia przeglądarki zachowa sekrety przekazane w żądaniach GET.

Twój drugi przykład zawiera / admin / . Oznacza to dla mnie, że sama znajomość tej ścieżki wystarczyłaby do uwierzytelnienia na serwerze w kontekście administratora. Jest to bardzo niebezpieczne i nie powinno się tego robić więcej niż /? Password = hunter2 , główne zabezpieczenie internetowe faux pas .

Zamiast tego sekrety powinny być wysyłane w żądaniu POST. Jeśli nie jest to możliwe lub jeśli Twój model zagrożeń ma na celu wyłącznie zapobieganie brutalnej sile adresu URL (na przykład linki resetowania hasła, które są natychmiast unieważniane po ich użyciu), to powinno być bezpieczne jeśli zrobisz to ostrożnie. Nie znam żadnych ataków typu side-channel, które zapewniłyby metodę uzyskania ciągu szybciej niż brute force.

* Unikanie sparametryzowanych żądań GET nie zapobiega atakom CSRF, czyli powszechne nieporozumienie, ponieważ istnieją różne sposoby podobnego nadużycia POST (fałszywe formularze itp.), ale przekazywanie sekretów w GET ułatwia CSRF.

* „[CSRF] (https://www.owasp.org/index.php/Cross-Site_Request_Forgery_ (CSRF)) staje się problemem. W rzeczywistości używanie tylko POST dla sekretów ogranicza CSRF.” * Jak wyjaśniono w połączonym OWASPartykuł, to faktycznie nie zapobiega CSRF.
Twierdzę, że w niektórych przypadkach jest to tylko trochę trudniejsze, ponieważ JavaScript może przesyłać formularze między źródłami bez żadnej interakcji z użytkownikiem.Edycja jest jednak dobra.
Tak.Jedynym sposobem na zablokowanie byłoby odrzucenie zewnętrznych odsyłaczy.
`Technicznie nie jest możliwe brutalne użycie takiej przypadkowej struny,` -> czemu nie?
@Kargari Ponieważ serwer nie powie Ci, jak blisko jesteś odgadnięcia ciągu.Jeśli podasz zły ciąg, zwróci 404 niezależnie od tego, czy jest to 1 znak, czy 50 znaków.W związku z tym musiałbyś wyczerpująco przeszukiwać wszystkie możliwe ciągi, aż uzyskasz _dokładnie_ poprawność.W każdym razie, prawdopodobnie powinienem był powiedzieć raczej „niewykonalne” niż „niemożliwe”.Edytowałem to teraz.
ataki czasowe mogą być jednak możliwe;wątpię, czy serwery WWW i systemy operacyjne używają porównań w ustalonym czasie podczas sprawdzania istnienia ścieżek!
@dn3s Nie znam żadnych praktycznych ataków typu side-channel na popularne serwery HTTP.
`serwer nie powie ci, jak blisko jesteś odgadnięcia ciągu.Jeśli podasz zły ciąg, zwróci 404 niezależnie od tego, czy jest to 1 znak, czy 50 znaków.`-> oczywiście.tam właśnie wkracza brutalna siła
@Kargari Brute force jest bardzo, bardzo powolne.W przypadku 30-znakowego ciągu alfanumerycznego (tj. A-z, A-Z i 0-9) masz 62 ^ 30 możliwych kombinacji, co jest _ daleko_ poza tym, co jest obecnie możliwe.
Być może @dn3s oznacza, że jeśli serwer porównuje znak po znaku, zatrzyma się na pierwszej różnicy, umożliwiając ataki czasowe.Ale myślę, że różnica czasu może być zbyt mała, aby ją zmierzyć.
Możesz złagodzić ten atak czasowy, przechowując skrót losowego ciągu.Zatem czas wskaże ci, ile znaków pasuje do hasha, ale nie jest to skorelowane z liczbą znaków oryginalnego dopasowania ciągu.
było to dla mnie trochę niejasne, o czym wspomniałem i nie mogłem znaleźć przykładów tego na podstawie szybkiego wyszukiwania.jestem teraz ciekawy, czy tak jest, czy nie (lub ogólnie, jakiego rodzaju informacje o systemie plików można wyodrębnić z serwera za pomocą bocznych kanałów czasowych).Być może będę musiał zadać pytanie!
To łącze OWASP jest błędnie interpretowane, odnoszą się do informacji, a skrót adresu URL nie jest „informacją”.Jest to jednak bezpieczeństwo poprzez zaciemnienie.
Jeśli chodzi o nagłówek odsyłacza, możesz uniemożliwić jego wysłanie [dodając rel = "noreferrer" `do linku] (https://stackoverflow.com/questions/5033300/stop-link-from-sending-referrer-do miejsca przeznaczenia).
Jeśli ta niejasna (nie tajna) ścieżka zostanie kiedykolwiek uzyskana za pośrednictwem protokołu http, a nie https, identyfikator URI będzie widoczny i prawdopodobnie zalogowany w każdym interweniującym systemie.Ponadto, jeśli kiedykolwiek zostanie użyty na współużytkowanym komputerze, można go odzyskać w historii przeglądarki.Zadanie tego pytania jest dobre, ale ten OP pyta przede wszystkim, jakie są problemy, sugeruje, że prawdopodobnie nie jest to dobry pomysł, w jakiejkolwiek formie OP planuje z niego korzystać.
Czy nie tak właśnie działają „magiczne linki”?
Chociaż nie ma już takiego zastosowania, myślę, że luki w zabezpieczeniach ActiveX pozwoliłyby na wyciek paska adresu, gdybyś wpisał polecenie, aby przejść do tej witryny bezpośrednio ze złośliwej witryny.
Źródło przepustki `hunter2`: http://bash.org/?244321=
Zgodnie z [OWASP REST Security Cheat Sheet] (https://www.owasp.org/index.php/REST_Security_Cheat_Sheet#Sensitive_information_in_HTTP_requests) nie należy przekazywać poufnych danych w adresach URL, ale można to zrobić w nagłówkach.
Dlaczego więc Google to używa?
@enkryptor Google tego nie robi.Wysyłanie zapytań wyszukiwania przez GET to nie to samo, co wysyłanie hasła przez GET.
@forest, kto mówi o wysyłaniu haseł?OP pyta o rodzaj tajnego linku, „tajnej strony”, powiedział.Dla mnie nie chodziło o wysłanie hasła do jego konta, ani o zdobycie uprawnień gdzie indziej.To tylko tajne łącze.
@enkryptor Więc co masz na myśli mówiąc, że Google to robi?
Udostępnianie linków przez @forest Google umożliwia zapewnienie dostępu do prywatnego dokumentu z linkiem.Samo łącze staje się „hasłem” do tego dokumentu, dopóki właściciel dokumentu na to nie zezwoli
WoJ
2018-06-19 16:49:00 UTC
view on stackexchange narkive permalink

Jest to typowe podejście do udostępniania publicznych rzeczy, które są ograniczone do osób, które znają adres URL. Przykładem są Dokumenty Google:

enter image description here

Druga opcja, „Każda osoba mająca link”, tworzy link podobny do Twojego. To samo dotyczy Google Photos, Dropbox, ...

  • Zaletą jest to, że rozpowszechnianie treści jest nieco ograniczone.
  • Wadą jest że w pewnym stopniu zależy to od tego, komu udostępniasz link, gdzie jest on opublikowany itp.

Jedną rzeczą, którą powinieneś rozważyć, jest możliwość łatwego unieważnienia go (przez zmiana / regeneracja linku do swoich danych)

Jest to również powszechny mechanizm dla linków „anuluj subskrypcję”.
Ta odpowiedź cytuje Dokumenty Google, ale (słusznie) wspomina, że Dokumenty nie tworzą linku _ dopóki właściciel nie zdecyduje się go udostępnić_.To coś innego niż zwykłe posiadanie linku od momentu utworzenia treści, jak w przypadku OP.Nie mogę brutalnie wymusić prywatnych dokumentów dowolnego użytkownika, tylko tych, do których celowo udostępnili publiczne linki.
Dodałbym również, że Google ma _vast_ wiedzę o praktycznie każdym (a przynajmniej o każdej przeglądarce; posiadanie lub brak konta Google nie ma znaczenia, każdy z przeglądarką ma wewnętrzne konto w Google) i może korzystać z niego w tlepodczas udzielania lub odmawiania dostępu do dokumentu dostępnego za pośrednictwem unikalnego łącza.Pytanie brzmi, czy PO ma do dyspozycji podobne dane i narzędzia.
@Pavel: Nie jestem pewien, czy rozumiem.Co masz na myśli, mówiąc „* każdy, kto ma przeglądarkę, ma wewnętrzne konto w Google *”?I przez * mogą wykorzystać to w tle podczas udzielania lub odmawiania dostępu do dokumentu dostępnego za pośrednictwem unikalnego linku *?
@WoJ Google aktywnie śledzi przeglądarki i ich użytkowników (analityka, menedżery tagów, interfejsy API, czcionki, reCaptcha, 8.8.8.8 itp. Są bardzo intensywnie używane w całej sieci), więc gdy Twoja przeglądarka żąda dokumentu za pośrednictwem unikalnego identyfikatora URI, Google już wie więcejniż byś chciał o sobie (oczywiście śledzenie życia unikalnego linku do Dokumentów jest częścią tej samej historii).Dzięki temu łatwo jest rzucić wyzwanie, a nawet odfiltrować nieuczciwych graczy.
@Pavel: ah tak, teraz rozumiem, co masz na myśli.To prawda, a mechanizmy wykorzystywane do odcisków palców użytkowników (nie tylko Google, ale także innych) są dość potężne.Imponujący jest sam fakt, że niektóre witryny chronione mechanizmem TOTP / HOTP (na przykład F2A używany przez Google Authenticator) mogą rozpoznać urządzenie przychodzące pomimo wyczyszczenia plików cookie.
Artelius
2018-06-19 17:37:40 UTC
view on stackexchange narkive permalink

Zły pomysł. Wiele razy widziałem „tajny” adres URL bardzo szybko otrzymujący trafienia robota wyszukiwarki, a następnie wykrywalny przez wyszukiwanie w sieci. Raz nawet widziałem, jak ktoś założył kopię renomowanej witryny w podfolderze swojej domeny, udostępnił ją jednej osobie, a wkrótce wysłano mu e-mail z ostrzeżeniem, że jego domena mogła zostać przejęta phishingiem.

Jak to się stało? W tym drugim przypadku przeglądarka internetowa miała wbudowaną funkcję antyphishingową, która wysyłała odwiedzane adresy URL do usług wykrywania oszustw. W innych przypadkach być może przeglądarka zbierała dane przeglądania i wysyłała je do wyszukiwarki w celu zebrania nawyków użytkowników.

Jeśli to zrobisz , upewnij się, że plik robots.txt ( lub nagłówki / metatagi) jest skonfigurowany tak, aby informować wyszukiwarki, aby nie indeksowały treści.

Internet to wspaniały sposób na zbliżenie świata, ale niestety daje każdemu potencjalnie stały dostęp do wszystkiego, co zdarzyło się kichnąć.

`wyszukiwarki nie indeksują zawartości .` -> nie indeksują mojej tajnej strony przez dodanie jej adresu URL do pliku robots.txt?
** Nigdy nie umieszczaj żadnych sekretów w pliku „robots.txt”! ** Najlepszym sposobem, aby upewnić się, że ** wszyscy ** dowiedzą się o Twojej tajnej stronie, jest dodanie jej do pliku „robots.txt”, ponieważ wtedy wszystko, co trzebaaby odkryć sekret, zajrzyj do pliku `robots.txt`.
@Kargari Nie ma powodu, aby umieszczać adres URL rzeczywistej * tajnej strony * w pliku robots.txt.Plik robots doskonale nadaje się do blokowania całej hierarchii katalogów.Jeśli twój sekret znajduje się w /nocrawl/page/sdghskdfjgneowsvnoiernow.htm, zostanie do niego zastosowana dyrektywa „Disallow: / nocrawl”.
ale nie mam katalogu „'/ nocrawl” w mojej ścieżce i nie chcę dodawać go do moich tras tylko po to, aby służył jako plik robtots.txt!
@MosheKatz Umieszczę to tam
Roboty nie muszą przestrzegać pliku „robots.txt”.Podejrzewam, że istnieją programy, które robią coś odwrotnego: sprawdzają tylko rzeczy, które zostały „ukryte” przez plik „robots.txt”.
@Kargari "/ nocrawl" jest przykładem, a nie receptą.Proszę [przeczytaj] (http://www.robotstxt.org/robotstxt.html) o tym, jak działają pliki robots.txt, zanim spróbujesz ich użyć.
@Pharap Przeszukiwacz nie dotrze do tego miejsca, chyba że adres URL jest widoczny w przestrzeni publicznej, w którym to momencie adres URL i tak zostaje przejęty.Ta odpowiedź sugeruje, że niektóre narzędzia, których mogą używać użytkownicy końcowi, mogą równie dobrze robić „pomocne” rzeczy, które ujawniają adres URL w miejscach publicznych lub półpublicznych.
* „przeglądarka internetowa miała wbudowaną funkcję antyphishingową, która wysyłała odwiedzane adresy URL do usług wykrywania oszustw” * ... czekaj, co?Więc ta funkcja wykrywania oszustw może zobaczyć każdy dokument Google lub cokolwiek, co kiedykolwiek udostępniłeś za pomocą linku?
Składnia iirc robots.txt umożliwia zablokowanie wszystkich ścieżek / plików, a następnie zezwolenie na użycie ścieżek i plików.
Nieco powiązane: kiedyś wysłałem komuś _sekretny_ adres URL w e-mailu, ale okazało się, że uzyskano dostęp do adresu URL, zanim otworzył e-mail.Okazuje się, że dostęp do niego uzyskano za pomocą funkcji „Podglądy linków w wiadomości e-mail” w Yahoo Mail w czasie, gdy tworzyłem wiadomość e-mail.Klient użytkownika miał adres URL „około ...”, a ta strona zalecała użycie pliku robots.txt do zablokowania tego klienta użytkownika.
Sjoerd
2018-06-19 11:55:15 UTC
view on stackexchange narkive permalink

Jeśli sekretna część ścieżki jest dość długa [...] trudno będzie ją odgadnąć lub na siłę?

Tak. Atakujący musiałby odgadnąć całość, aby to odkryć. Ponieważ istnieje wiele możliwości, zajęłoby to niewykonalną ilość czasu.

Jakie są ogólne problemy z tym podejściem?

Problem z tym polega że adresy URL nie są uważane za tajne, więc będą przechowywane w przeglądarce, w dziennikach i przez pośredniczące proxy. W ten sposób Twój „tajny” adres URL może zostać ujawniony.

Użycie GET sprawia, że ​​CSRF staje się trywialny podczas przetwarzania aktywnej zawartości.

Nie. W ataku CSRF osoba atakująca wymyśla określone żądanie. Korzystając z sekretu w adresie URL, osoba atakująca nie zna nawet prawidłowego adresu URL, do którego może sfałszować żądanie. Oznacza to, że CSRF jest niemożliwe, dopóki adres URL jest tajny.

Nie jest tajemnicą, że strona jest zaśmiecona znakiem ` '.
Ponadto, jeśli skończysz z setkami tysięcy ważnych tajnych adresów URL w tej przestrzeni nazw, zwiększyłeś szansę ataków siłowych na znalezienie CZEGOKOLWIEK o setki tysięcy ...
Thomas
2018-06-21 19:29:07 UTC
view on stackexchange narkive permalink

Jak powiedzieli inni, to nie jest dobry pomysł. Takie „tajne” linki, które są używane do rezygnacji z subskrypcji lub podobnych jednorazowych celów, są zazwyczaj stosunkowo krótkotrwałe i bezużyteczne, gdy zostały raz użyte.

Moja pierwsza myśl, kiedy przeczytałem to pytanie polegało na tym, że adres URL nie pozostawał długo w tajemnicy. Pomyślałem, że być może Chrome (lub jakakolwiek inna nowoczesna przeglądarka internetowa) użyje danych z linii adresowej do zainicjowania indeksowania. Okazuje się, że nie. Jednak naukowcy odkryli, że wtyczki mogą nadal uruchamiać indeksowanie:

Wyniki są dość proste: Googlebot nigdy nie odwiedził żadnej ze stron w teście.

Jak się okazuje out, dwie osoby w teście tak naprawdę nie wyłączyły swoich rozszerzeń, a to spowodowało wizyty z Open Site Explorer (ktoś miał zainstalowany i włączony Mozbar) i Yandex (z powodu innej osoby, chociaż nie wiem, jakie rozszerzenie zostały one zainstalowane i włączone).

Oznacza to, że użyte łącze może zostać naruszone przez rozszerzenia przeglądarki. A potem nie ma potrzeby brutalnego narzucania czegokolwiek.

Jaki jest cel tworzenia tych linków? Co ty, OP, próbujesz osiągnąć? Jestem pewien, że istnieją inne sposoby, aby się tam dostać ...

Mr. E
2018-06-19 21:24:26 UTC
view on stackexchange narkive permalink

Trudno byłoby odgadnąć / brutalnie, ale inne sposoby uzyskania ścieżek mogą być możliwe

Na przykład adres URL może być indeksowany przez usługi takie jak google, bing itp. Twój „tajny” adres URL pojawia się, gdy użytkownik przeszukuje Twoją stronę w Google. Można to rozwiązać konfigurując plik robots.txt , ale pamiętaj, że indeksatorzy mogą go zignorować

Linki w aplikacji mogą przekierowywać do ukrytej ścieżki

W Ponadto maszyny w tej samej sieci co użytkownik uzyskujący dostęp do „tajnej” strony lub serwera WWW mogą zobaczyć adres URL, a także każdy pośredniczący serwer proxy i ISP użytkownika (lub VPN, jeśli używa). adres URL może być utrwalony w pamięci podręcznej przeglądarki i / lub historii oraz w dziennikach na serwerze internetowym i serwerach proxy

** Nigdy nie umieszczaj żadnych sekretów w pliku „robots.txt”! ** Najlepszym sposobem, aby upewnić się, że ** wszyscy ** dowiedzą się o Twojej tajnej stronie, jest dodanie jej do pliku „robots.txt”, ponieważ wtedy wszystko, co trzebaaby odkryć sekret, zajrzyj do pliku `robots.txt`.
@MosheKatz Nie mówiłem nic o dodawaniu sekretu do `robots.txt`, ale skonfigurowałem go tak, aby Twoje strony nie były indeksowane.Coś w rodzaju `Disallow: /`
@MrE Możesz to wiedzieć, ale ludzie czytający Twoją odpowiedź mogą tego nie rozumieć.
Gillian
2018-06-20 21:16:03 UTC
view on stackexchange narkive permalink

Czy tajne żądania GET mogą być brutalnie wymuszone?

Tak, mogą. Tak samo jak każdy rodzaj żądania bez odpowiednich środków bezpieczeństwa.

Jeśli tajna część ścieżki jest dość długa, czy mogę założyć, że posiadanie takiej tajnej strony lub obszaru jest bezpieczne i Trudno będzie zgadnąć lub brutalnie to wymusić?

Nie, posiadanie takiej tajnej strony lub obszaru nie jest bezpieczne. Tak, trudno będzie to odgadnąć lub użyć brutalnej siły.

Jakie są ogólne problemy z tym podejściem?

W przeciwieństwie do żądań POST, żądania GET można łatwo znaleźć w historii przeglądarki internetowej.

ViDiVe
2018-06-24 23:50:51 UTC
view on stackexchange narkive permalink

Myślę, że lepiej będzie wdrożyć automatyczne lub ręczne (abyś zdecydował, kto może uzyskać dostęp do strony) Jednorazowe hasło OTP do wysłania e-mailem.

W scenariuszu ręcznym: - otrzymujesz żądanie od email@example.com
- udzielasz dostępu do email@example.com
- skrypt tworzy link z hasłem OTP
- link zostanie wysłany na email @ example.com
- kiedy użytkownik email@example.com odwiedzi stronę, OPT zostanie oflagowany i nikt inny nie może ponownie użyć tego linku

oczywiście ten system wymaga bazy danych, w której autoryzowany adres e-mail, OPT i pole flagi



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 4.0, w ramach której jest rozpowszechniana.
Loading...