Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> spamery?, dziwne wpisy w księdze gości
KCG
post
Post #1





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Mam dziwne wpisy w księdze gości, właściwie jest to jeszcze wersja testowa, ale już dziś się 3 pojawiły (usunąłem ok. 70 - od kwietnia):
http://pytak.no-ip.org/~trudny/new_moto/book.php
Zrobiłem ograniczenie 1 wpis na 1h (po ip), ale tego za bardzo nie wiem, jak się pozbyć.
Może jakieś sugestie?

pzdr
Go to the top of the page
+Quote Post
5 Stron V   1 2 3 > »   
Start new topic
Odpowiedzi (1 - 92)
sniezny_wilk
post
Post #2





Grupa: Zarejestrowani
Postów: 732
Pomógł: 80
Dołączył: 25.05.2005
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Dobry CAPTCHA załatwi boota.
Go to the top of the page
+Quote Post
tiraeth
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 789
Pomógł: 41
Dołączył: 30.10.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


A po co CAPTCHA? Jest wiele innych, dobrze działających (a nawet lepiej) rozwiązań.

Poszukaj na forum, bo już milion razy było!
Go to the top of the page
+Quote Post
AxZx
post
Post #4





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

Ostrzeżenie: (0%)
-----


zrob pole w formularzy w ktore trzeba bedzie wpisac wynik dzialania matematycznego ktore bedzie wyswietlane obok.
jakies proste losowo ukladne, np 2 + 3, 3 * 1 itd

Cytat
Dobry CAPTCHA załatwi boota.


po co chcesz zalatwiac program rozruchowy?
Go to the top of the page
+Quote Post
Pilsener
post
Post #5





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Po co na boty jakieś kapcie? Zobacz, jak zabezpieczam formularz dodawania komentarza na brydz.ugu.pl - to tak zwane pasywne zabezpieczenia anty-spamowe, eliminują 99,5% bociszy. Gdy to nie pomaga (bot dedydykowany) wycofujesz się na drugą linię obrony - statystyczny filtr antyspamowy. Ja np. używam Sblam, ale możesz używać nawet kilku naraz. Na moim blogu tego używam i jeszcze żaden bocisz się nie przemknął (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Shili
post
Post #6





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

Ostrzeżenie: (0%)
-----


Dokładnie, capcha to najgorsze rozwiązanie z możliwych. W tym przypadku wystarczy ograniczyć liczbę linków (na przykład jeśli więcej niż dwa razy pojawi się fraza http:// i https:// wpis nie jest akceptowany - jest to dość prosta metoda, a z tego co wiem mało który prawdziwy użytkownik wstawia więcej niż jeden, maksymalnie dwa adresy stron.
Go to the top of the page
+Quote Post
em1X
post
Post #7





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


Ktoś mądrze napisał, że zamiast sprawdzać czy piszący jest człowiekiem, lepiej sprawdzać czy jest botem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

I ciekawym rozwiązaniem jest umieszczenie niewidocznego pola tekstowego, które jeżeli jest wypełnione oznacza to, że piszący jest botem! (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
sniezny_wilk
post
Post #8





Grupa: Zarejestrowani
Postów: 732
Pomógł: 80
Dołączył: 25.05.2005
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Cytat(em1X @ 20.05.2008, 09:50:02 ) *
Ktoś mądrze napisał, że zamiast sprawdzać czy piszący jest człowiekiem, lepiej sprawdzać czy jest botem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

I ciekawym rozwiązaniem jest umieszczenie niewidocznego pola tekstowego, które jeżeli jest wypełnione oznacza to, że piszący jest botem! (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


Są sprytnie, niektóre się nie nabiorą, lepiej zrobić widoczne i napisać, żeby go nie wypełniać.
Go to the top of the page
+Quote Post
Shili
post
Post #9





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

Ostrzeżenie: (0%)
-----


Są takie, które rozpoznają nawet frazy (co prawda głównie w języku angielskim, ale potrafią sobie przyporządkować i zostawić puste, tam gdzie jest empty w opisie); są takie, które uzupełniają domyślne pola, nie wszystkie, ale te wymagane w większości serwisów - też mogą pole pozostawić puste. Wydaje mi się jednak, że takie pola to dobry pomysł, o ile następuje po nich jeszcze filtrowanie wyników.
Go to the top of the page
+Quote Post
KCG
post
Post #10





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Cytat(Pilsener @ 20.05.2008, 08:26:43 ) *
Po co na boty jakieś kapcie? Zobacz, jak zabezpieczam formularz dodawania komentarza na brydz.ugu.pl - to tak zwane pasywne zabezpieczenia anty-spamowe, eliminują 99,5% bociszy. Gdy to nie pomaga (bot dedydykowany) wycofujesz się na drugą linię obrony - statystyczny filtr antyspamowy. Ja np. używam Sblam, ale możesz używać nawet kilku naraz. Na moim blogu tego używam i jeszcze żaden bocisz się nie przemknął (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

No dodałem komentarz i tak za bardzo nie rozumiem, jakie to jest zabezpieczenie, możesz mi nieco rozjaśnić?
Co do obrazków, to też sądzę, że za dużo zamieszania na prostą księgę gości.
Zostaje działanie lub puste pole, może na razie tak spróbuję (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

pzdr i dzięki za odpowiedzi
Go to the top of the page
+Quote Post
Pilsener
post
Post #11





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Cytat
i tak za bardzo nie rozumiem, jakie to jest zabezpieczenie
- bo trzeba by być botem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

W kodzie masz takie kwiatki:
  1. <!-- <input type="hidden" name="wnyk" /> -->
  2. <!-- <input type="hidden" name="wnyk2" value="1" /> -->
  3. <input type="hidden" name="wnyk3" />
  4. <input type="hidden" name="token" value="1211289751" />
- to wszystko to kilka sprawdzonych rodzajów pułapek na boty. Zbyt długo by szczegółowo wszystko opisywać, ale w sieci jest parę artykułów na ten temat. No i możesz też ruszyć głową i wysilić wyobraźnię (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
.radex
post
Post #12





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


http://sblam.com/

Sblam! i po kłopocie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #13





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Dzięki, na razie sprawdzę to: http://blog.koloda.pl/spam-w-formularzach-...iag-dalszy.html (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Sprawdziłem - nic, zainstalowałem sblam i zobaczcie http://pytak.no-ip.org/~trudny/new_moto/book.php wpis 'of Ultram'. Co ciekawe to jakby w ogóle nie przeszlo przez mój skrypt dodawania, gdyż był normalny link (wyedytowałem już), jakby funkcja htmlspecialchars() nie zadziałała. Co to może być?;/ (sblam na razie niby żadnego spamu nie wyłapał, a tego wpisu nie ma nawet w tych 'dobrych')
Go to the top of the page
+Quote Post
.radex
post
Post #14





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Jesteś pewien, że dobrze to robisz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ?
Go to the top of the page
+Quote Post
KCG
post
Post #15





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Normalnie działa, a test spamu też okej, więc chyba jest dobrze?
Go to the top of the page
+Quote Post
.radex
post
Post #16





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Dziwne... Mi jeszcze Sblam niczego nie przepuścił (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #17





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


No to dam kod, co mi zależy w sumie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
  1. <?php
  2. if (isset($_POST['cegla1']) || (!isset($_POST['cegla2']) || $_POST['cegla2'] !== '')) exit;
  3. if (!isset($_POST['sub1']) || $_POST['sub1'] != 'Dodaj') exit;
  4. $kolejnosc = implode('.',array_keys($_POST));
  5. if (!(strpos($kolejnosc,'book_autor.book_body.mode.sub1') === 0 ||
  6. (!array_key_exists('book_autor',$_POST) && strpos($kolejnosc,'book_body.mode.sub1') === 0 ))) exit;
  7. include_once('class/sblam/sblamtest.php');
  8. $rezultat = sblamtestpost(array('book_body','book_autor',NULL,NULL),'klucz');
  9. if ($rezultat > 0) {
  10. $title = 'Błąd!';
  11. require_once('head.php');
  12. echo '<br /><br />';
  13. echo '<p class="red">Przepraszamy - Twój post został uznany za spam!</p>';
  14. echo '<p><a href="book.php?mode=add">Spróbuj się wpisać jeszcze raz.</a></p>';
  15. require_once('foot.php');
  16. }
  17. ?>

wcześniej jakieś inne sposoby, ze stronki, co wcześniej pisałem.

A i zapisuje sobie IP ze zmiennej $_SERVER['REMOTE_ADDR'], a te wpisy to pole maja puste.

Ten post edytował KCG 22.05.2008, 23:04:52
Go to the top of the page
+Quote Post
Black-Berry
post
Post #18





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


http://xkcd.com/233/
Go to the top of the page
+Quote Post
KCG
post
Post #19





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Black-Berry ?
Już nie wiem, zrobiłem te pasywne zabezpieczenia, sblam, ograniczyłem linki do 2, a znów się pojawiły 2 spamy/wpisy ;/ Poza tym to ip się nie wpisuje, to taki spryciarz, czy jest możliwość, że to bezpośrednio do bazy wpada?

Ten post edytował KCG 23.05.2008, 23:17:03
Go to the top of the page
+Quote Post
szagi3891
post
Post #20





Grupa: Zarejestrowani
Postów: 109
Pomógł: 9
Dołączył: 12.03.2007
Skąd: kraków/tarnobrzeg/baranów/suchorzów

Ostrzeżenie: (0%)
-----


Czy ktoś może przytoczyć sposoby tworzenia pułapek na boty ? Ewentualnie czy ktoś posiada jakieś ciekawe linki prowadzące do stron o tej tematyce ?
Go to the top of the page
+Quote Post
grzemach
post
Post #21





Grupa: Zarejestrowani
Postów: 121
Pomógł: 4
Dołączył: 9.06.2007
Skąd: Kielce

Ostrzeżenie: (0%)
-----


przyłączam się do prośby jakiś artykuł ktoś może podać?
Go to the top of the page
+Quote Post
Athlan
post
Post #22





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Pisałem o tym kiedyś dość obszeny materiał:
http://athlan.pl/obrona-przed-spamem/

Sblam odradzam, jest fantastyczny, ale czasem dodanie komentarza zamula kilkadzisiąt sekund, kilka razmy mialem nawet timeouta.

Dobry przykład (czyli o robieniu botów w bambuko (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ):
http://athlan.pl/code/html-antispam
Go to the top of the page
+Quote Post
szagi3891
post
Post #23





Grupa: Zarejestrowani
Postów: 109
Pomógł: 9
Dołączył: 12.03.2007
Skąd: kraków/tarnobrzeg/baranów/suchorzów

Ostrzeżenie: (0%)
-----


Jedyne w Twoim zabezpieczeniu nie podoba mi się to że używać javascript. Mimo wszystko nie wszyscy muszą mieć włączoną obsługę javascript.

Osobiście używam innego zabezpieczenia. Dodaje dodatkowe pole ukryte które dla żartu nazwałem "temida". To pole zawiera zaszyfrowaną datę oraz godzinę wygenerowania formularza co do sekund. Nikt tego nie odczyta gdyż klucz znajduje się na serwerze i tylko skrypty mają do niego dostęp.

Skrypt odbierający dane z tego formularza sprawdza jaki jest czas kiedy nastąpiło kliknięcie na dodanie komentarza. Jeśli to było szybkie dodanie, czas od wygenerowania do kliknięcia dodania jest mniejszy niż 10 sekund, komentarza jest odrzucany. Jeśli od wygenerowania formularza minęła godzina to komentarz również jest odrzucany. Wbrew swojej prostocie to zabezpieczenie sprawdza się bardzo dobrze. Większość robotów zaraz po pobraniu strony próbuje dodać swój wpis bądź pobiera stronę i na podstawie tej zapisanej strony nawet po dwóch miesiącach od wygenerowania próbuje dodać jakieś wpisy.

Dodałem jeszcze regułę odrzucającą komentarz ze słowem viagra i nic praktycznie nie przeszło do tej pory (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
.radex
post
Post #24





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Ja ostatnio wymyśliłem (no, ba. Widziałem też to w innych miejscach (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ) taki prosty sposób: podanie w formie tekstu różnych prostych matematycznych zadań, np:

dwa plus cztery
sześć razy dwa

itd.
Go to the top of the page
+Quote Post
Black-Berry
post
Post #25





Grupa: Zarejestrowani
Postów: 663
Pomógł: 6
Dołączył: 3.06.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


@szagi3891 Podoba mi się Twój spób ale co jeśli ktoś napisze bota tak aby wysyłał komentarz po 20 sekundach (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
Pilsener
post
Post #26





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

Ostrzeżenie: (0%)
-----


Cytat
ale co jeśli ktoś napisze bota tak aby wysyłał komentarz po 20 sekundach
- taki bot byłby całkiem nieopłacalny, poza tym z reguły boty wysyłają same nagłówki, więc nie są w stanie wygenerować prawidłowego tokena (czyli czasu) - a nawet jeśli wypełnią token, to podają liczby lub jakieś losowe dane - łatwo się przed tym zabezpieczyć, odrzucając formularze starsze niż np. 15 minut. Poza tym to tylko jeden rodzaj zabezpieczeń, warto połączyć kilka, tak jak ja to zrobiłem kilka postów wyżej - razem to prawie 100% skuteczności.

Cytat
Sblam odradzam, jest fantastyczny, ale czasem dodanie komentarza zamula kilkadzisiąt sekund
- dlatego ja zalecam, aby był, ale jako opcja - czyli w ostateczności (kiedy pasywne blokady sobie nie radzą) SBLAM ON. Pasywne blokady mogą sobie ni radzić tylko wtedy, kiedy ktoś napisze bota dedykowanego specjalnie pod nasz skrypt.

Próbowałem i temu zaradzić, generując losowo inputy i ich name'y, plus opisy jako imgi (też oczywiście dynamicznie tworzone i o losowej nazwie), jednak kilka osób stwierdziło, że zmieniająca się kolejność inputów doprowadzi userów do szału. W każdym bądź razie pomysł jakiś jest, może ktoś to rozwinie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
szagi3891
post
Post #27





Grupa: Zarejestrowani
Postów: 109
Pomógł: 9
Dołączył: 12.03.2007
Skąd: kraków/tarnobrzeg/baranów/suchorzów

Ostrzeżenie: (0%)
-----


@Black-Berry - nie twierdzę że jest to zabezpieczenie które definitywnie upora się ze spamem. Przedstawiam tą metodę tylko jako przykład że można ją wstępnie zastosować do pierwszego przefiltrowania wiadomości.

Greylisting pocztowy działa w podobny sposób. Poczta najpierw jest odrzucana przez serwer i dopiero przy następnej próbie dostarczenia jest przyjmowana przez serwer odbiorcy.
Go to the top of the page
+Quote Post
Athlan
post
Post #28





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Widzę, że Waszym motto nie jest na pewno: "Prostota jest piękna".

Ja bym zastosował sposób z dodawaniem liczb (plus ewentualna lokalizacja na inne języki w aplikacjach wielojęzycznych, ponieważ wyrażenie matematyczne ładnie opisać słowami) + zmiana action za pomocą Javascript. Co do % osób nie używających JS, z tego co się orientuję jest ich 1,2%, z czego 90% to boty, co daje 0,12% użytkowników Internetu.

*poprawione z 0.03 na 0.12%, pomylilem sie.
Go to the top of the page
+Quote Post
bim2
post
Post #29





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

Ostrzeżenie: (0%)
-----


Rozwiązanie Athlana oraz zakomentowaniem inputa z pustymi wartosciami wydaje mi się idealne. Ja bym się nie przejmował już ludźmi bez JS, bo jak komuś będzie zależało na poprawnym działaniu strony, to sobie to włączy (mówimy o 0,03% użytkowników z wyłączoną obsługą JS).
Go to the top of the page
+Quote Post
szagi3891
post
Post #30





Grupa: Zarejestrowani
Postów: 109
Pomógł: 9
Dołączył: 12.03.2007
Skąd: kraków/tarnobrzeg/baranów/suchorzów

Ostrzeżenie: (0%)
-----


@Athlan - coś mi się nie podoba Twoja matematyka (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)

Przy założeniu że 90% z klientów bez włączonego js to roboty. -> wynika z tego że 10 % to ludzie którzy mają wyłączoną javę script.

Jeśli zakładasz że 1,2% to procent wszystkich klientów bez js to całkowita liczba "ludzi właściwych" nie posiadających włączonej javyscript wynosi 1,2% * 10% = 0,12% a nie jak piszesz wyżej 0,03% (IMG:http://forum.php.pl/style_emoticons/default/laugh.gif)

Odnośnie prostoty. To jest prostota dla Ciebie czy dla Twoich użytkowników ? Moim zdaniem bardziej nieprofesjonalnie wygląda strona na której oprócz pól do dodania nowego postu/komentarza/czegokolwiek znajduje się jeszcze dodatkowe pytanie z polem gdzie pisze "podaj wynik równania 2 + 2" lub wprowadź kod z obrazka (który jest często podobny do któregoś ze znakomitych dzieł picassa). Wybacz ale to wygląda jak by się webmasterowi zupełnie nic nie chciało i zrobił prostą łatę która ograniczy problem ze spamem. Jest to przerzucanie wykonywania dodatkowych czynności na użytkownika. Powinno dążyć się w przeciwnym kierunku, użytkownik powinien się martwić niczym innym oprócz wprowadzenia właściwej treści a to czy strona pada ofiarą botów czy nie to użytkownika tak naprawdę nie obchodzi.
Go to the top of the page
+Quote Post
KCG
post
Post #31





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Wydaję mi się, że wiele zrobiłem, jednak dalej ten spam się przedostaje;/ Jeszcze jedno pytanie: to zależy też od serwera?
Co do tego kodu:
  1. <form action="http://example.com/" method="post" id="form">
  2. <legend>Dodaj swój komentarz</legend>
  3. <!--pola(...) -->
  4. <div style="display: none;">
  5. <label for="form_mail">Tego pola nie wypełniaj:</label>
  6. <input type="text" name="mail" id="form_mail" value="" />
  7. </div>
  8.  
  9. <input type="submit" value="Dodaj komentarz" />
  10.  
  11. </form>
  12.  
  13. <script type="text/javascript">
  14. function AntispamComment(sId, sAction)
  15. {
  16. document.getElementById(sId).action = sAction;
  17. }
  18.  
  19. AntispamComment('form', 'http://athlan.vgroup.pl/')

To rozumiem, że action zostawiam dosłownie: 'http://example.com/'? I nie bardzo rozumiem, jak ten formularz ma być wysyłany? Jeśli umieszczę skrypt js w tym samym pliku to funkcja się wykona po kliknięciu dodaj komentarz?

dzięki wszystkim za odpowiedzi (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował KCG 26.05.2008, 15:04:08
Go to the top of the page
+Quote Post
.radex
post
Post #32





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Raczej skorzystałbym z .setAttribute - choć na JS'ie się słabo znam, może tak też działa.

Po za tym ja bym nie bawił się JS'em w tych celach.

szagi3891 - może nieprofesjonalnie na stronie firmowej tak (choć znam ludzi, którzy nawet tam dają rzeczy typu 4+6=?), ale na stronie domowej czemu nie?

Ten post edytował radex_p 26.05.2008, 18:02:16
Go to the top of the page
+Quote Post
KCG
post
Post #33





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Też bym js nie dawał, ale ten spam jakoś sie nie poddaje.
Go to the top of the page
+Quote Post
.radex
post
Post #34





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Może moderacja komentarzy po IP? Pierwszy raz trzeba sprawdzić, jeśli będzie ok, będzie dalej przyjmowało bez pytania.

JS mnie jakoś nie przekonuje.
Go to the top of the page
+Quote Post
KCG
post
Post #35





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Przez zmienna $_SERVER['REMOTED_ADDR']? I co masz na myśli pisząc 'moderacja'? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
.radex
post
Post #36





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Mówiąc 'moderacja' miałem na myśli sprawdzenie pierwszego wysłanego komentarza/czegośtam innego z danego IP. Jeśli post będzie ok - zostanie zaakceptowany, kolejne posty będą przychodzić bez sprawdzania przez moderatora.

Oczywiście nie jest to odporne na zmienne ip, ale wraz z sblam wychodzi nieźle.
Go to the top of the page
+Quote Post
KCG
post
Post #37





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Tak, tylko pole ip przy wpisach od botów w bazie mam puste...
Go to the top of the page
+Quote Post
.radex
post
Post #38





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Może źle je pobierasz?

http://php.org.pl/artykuly/3/22
Go to the top of the page
+Quote Post
Lejto
post
Post #39





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 48
Dołączył: 23.05.2007

Ostrzeżenie: (0%)
-----


a if'a można do tego napisać a tablicą array(); botów?
Go to the top of the page
+Quote Post
KCG
post
Post #40





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Pobrieram ip tą funkcją i dalej nie zapisuje.

Zrobiłem nawet ten myk z js i już mi się jakiś spam wje... :/
Powtórzę pytanie: czy to może zależeć też od serwera?
Go to the top of the page
+Quote Post
Firez
post
Post #41





Grupa: Zarejestrowani
Postów: 17
Pomógł: 4
Dołączył: 6.03.2008

Ostrzeżenie: (0%)
-----


Wprawdzie captcha utrudnia nieco userowi korzystanie z serwisu oprócz zatrzymywania spamu przydaje się także do zwiększania poziomu komentarzy.
Sam spam doskonale można powstrzymać przez sblam [około 90-99% spamu] - ale imho warto czasem dać userowi pole formularza nad którym się będzie musial nieco zastanowić. Po wstawieniu captcha na mojej stronie zauważylem znaczne [nie prowadziłem dokładnych statystych] zmniejszenie się ilości bezsensownych komentarzy typu 'aaaaeee', 'd*pa' czy 'xD'. I moderator ma mniej roboty...

Ten post edytował Firez 29.05.2008, 17:05:10
Go to the top of the page
+Quote Post
KCG
post
Post #42





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Tylko ja stosuję sporo zabezpieczeń pasywnych i sblam, a efekt taki:
http://pytak.no-ip.org/~trudny/new_moto/book.php
Naprawdę już tylko captcha? Czy może coś źle robię? (ew. co mogę źle robić, skoro pozornie wszystko jest ok)
Go to the top of the page
+Quote Post
pest
post
Post #43





Grupa: Zarejestrowani
Postów: 78
Pomógł: 15
Dołączył: 10.12.2007
Skąd: Lublin

Ostrzeżenie: (0%)
-----


A potrzebne ci w ogóle możliwość podania linku we wpisie?
Ja w księdze gości na stronie ośrodka wczasowego wstawiłem regułę, że wszystko co ma link trafia do moderatora lub jest od razu wyrzucane. Ludzie się wpisują, spamu nie ma i nikt nie marudził jeszcze, że nie mógł podać linka.
Go to the top of the page
+Quote Post
KCG
post
Post #44





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


no nawet, jak bym nie dał linka to będzie spam, tylko w formie tekstowej
Go to the top of the page
+Quote Post
wlamywacz
post
Post #45





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


pest

LOL


Jeśli dobrze pamiętam jeśli w form nie ma action to zapytanie robie do strony na której się znajduje i zobacz to u siebie:
Adres:
http://pytak.no-ip.org/~trudny/new_moto/book.php?mode=add
I "antyspam":
  1. <script type="text/javascript">
  2. function AntispamComment(sId, sAction)
  3. {
  4. document.getElementById(sId).action = sAction;
  5. }
  6.  
  7. AntispamComment('book_formadd', 'book.php')


Wysyłaj dane do innego pliku i zobacz czy podziała ;]

Btw. BBC i znacznik b i url sie [zmoderowane] ;/

wlamywacz, ja wszystko rozumiem, ale proszę bez wulgaryzmów w wypowiedziach publicznych /kszychu/

Ten post edytował kszychu 30.05.2008, 10:20:54
Go to the top of the page
+Quote Post
pest
post
Post #46





Grupa: Zarejestrowani
Postów: 78
Pomógł: 15
Dołączył: 10.12.2007
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(wlamywacz @ 30.05.2008, 10:51:58 ) *
pest

LOL



To chyba znaczy, że nie uważasz tego za dobre rozwiązanie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .
W sume ja też, ale tam się wpisują ludzie, którzy rzadko wiedzą jak się formatuje tekst i nie ma tam obsługi bbcode, więc jak ktoś na siłę wali "[url=" albo coś podobnego, to jest to dość podejrzane.
Go to the top of the page
+Quote Post
wlamywacz
post
Post #47





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


O te BBC chodziło mi o form.php.pl ^^ a nie o Twoją stronę i zastosuj się do moich porad (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #48





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Czyli lepiej dać przekierowanie do innego pliku, bo bot pomija http://example.com/?

Jakoś już nie mam siły do tego. Możecie mi polecić jakąś klasę captcha? Może tak się uda.
Go to the top of the page
+Quote Post
Athlan
post
Post #49





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

Ostrzeżenie: (0%)
-----


Ostatnio na http://email.vgroup.pl zastosowałem dość proste rozwiązanie:

Zaznacz dowolne X checkboxsy, gdzie X to liczba od 2-4. UWAGA! Takie nowinki nie są skuteczne, ponieważ bardzo prosto pod nie napisać dedykowanego bota. No ale chyba wszystkie poza nimi odpadają (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ewentualnie liczbę można dać w obrazku no w logo... zaznacz tyle checkboxów, ile widzisz gwiazdek na obrazku, tutaj kolejne nooby odpadają (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
marcio
post
Post #50





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Ja mysle ze wysylanie cookie + token wystarczaja (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

P.S myslalem ze juz problem zostal rozwiazany 2 miechy temu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

P.S2
http://pytak.no-ip.org/~trudny/new_moto/bo...dro...%3C/h1%3E

EDIT:
http://blog.koloda.pl/prosty-sposob-na-spa...rmularzach.html
http://blog.koloda.pl/spam-w-formularzach-...iag-dalszy.html

A te tricki probowales dosyc fajne metody (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował marcio 14.06.2008, 18:48:04
Go to the top of the page
+Quote Post
KCG
post
Post #51





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Ja wiem, że to jest niewygodne itd. ale mi po prostu już nic nie pomaga.
Athlan to na razie odpuszczę, bo myślę, że jednak już obrazek lepiej wygląda.
marcio, co do ps2 to nie skumałem? a co do linków to próbowałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Bo chyba jest jakaś gotowa klasa do captcha? Jakoś nic nie mogę znaleźć, poza tym, jeśli coś ktoś używał, to zawsze lepsze sprawdzone (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
marcio
post
Post #52





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Captcha chcesz moge dac ci moj kod generujacy obrazek tu mozesz zobaczyc jak wyglada
http://www.marcio.szu.pl/token.php

Co do P.S2 to masz XSS na stronie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
.radex
post
Post #53





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


KCG, ja rozumiem, że nie możesz już sobie dać z tym rady, ale nie korzystaj z CAPTCHA-y!

Lekturka: http://pornel.net/captcha
Go to the top of the page
+Quote Post
KCG
post
Post #54





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


radex, czytałem 2 razy wcześniej, zanim pisałem tutaj (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tylko, jak nic nie pomaga, to co mam zrobić? Np. rapid korzysta i jakoś tam daje radę;)

marcio, skąd do tego doszedłeś?
Go to the top of the page
+Quote Post
marcio
post
Post #55





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Doszedlem do czego??

Wejdz na linki przezemnie podany i zjedz na sam dol gdzie masz stronnicowanie widzisz co sie dzieje zamykam ci tag wpisujac "> + <!--- lub bez i dziala html

Ten post edytował marcio 14.06.2008, 21:34:27
Go to the top of the page
+Quote Post
KCG
post
Post #56





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Tak, tylko chyba sam to wpisałeś? I nie widzę, aby działo się coś złego (<h1> tekstu nie powiększyło).

PS Doszedłeś do tego adresu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #57





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Te boty na Twojej stronie walą prawie samymi URL'ami. Napisz prostą funkcję, która będzie sprawdzała ile jest tekstu we wpisie, który nie jest odnośnikiem w stosunku do to tekstu, który jest odnośnikiem. Jeśli będzie to np. >80% odnośników to traktuj jako spam.
Go to the top of the page
+Quote Post
marcio
post
Post #58





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat
Tak, tylko chyba sam to wpisałeś? I nie widzę, aby działo się coś złego (<h1> tekstu nie powiększyło).

No a jak inaczej nie widzisz ze rozwala strone jak bym troche posiedzial przy tym to moze nawet bym ci strone rozjechal (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) lepiej popraw
Go to the top of the page
+Quote Post
KCG
post
Post #59





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Ogólnie, jak ktoś wpisuje sobie coś w adresie, żeby stronę rozwalić, to niech będzie dumny z siebie - reszcie to nie szkodzi; ale dzięki za info (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
LonelnyKnight w sumie dobrze mówisz, pokombinuję w tym kierunku.
Go to the top of the page
+Quote Post
marcio
post
Post #60





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat
reszcie to nie szkodzi;

ALe jak bedzie mozliwosc kardziezy cookie mysle ze zaszkodzi

Zreszta to twoja sprawa i sadzi to o tobie jak sie przejmujesz o dzialanie skryptu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) tez sie z tego smialem ale mialem ta samo sytuacje i byl XSS na cookie naszczescie juz wszystko zalatane (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #61





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Stwierdzam, że nie szkodzi, co nie zmienia faktu, że warto poprawić, chociażby dla własnej satysfakcji (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Szczerze to myślałem, że łatwiej się tego pozbyć. Możesz coś podpowiedzieć? Pobieram aktualny adres z wszystkimi zmiennymi i stąd to się bierze.
Go to the top of the page
+Quote Post
marcio
post
Post #62





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Filtruj <, > i " za pomoca str_replace() zamieniaj na puste znaki albo htmlspecialchars() ale nie zawsze to drugie sie sprawdza (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #63





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Zmieniłem, te znaki na '', ale efekt jest widoczny dalej:
http://pytak.no-ip.org/~trudny/new_moto/bo...dro...%3C/h1%3E
Z tym, że teraz nie można nic wykonać?
Go to the top of the page
+Quote Post
marcio
post
Post #64





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Sorki ale nie bylo mnie wiec nie moglem odpisac ogolnie teraz nie bede zagladal do mojego kodu ale co pamietam blad polega na tym ze tak gdzie tworzysz linki do nastepnych stron nie filtrujsze zmiennych z get'a

Wejdz tu:
http://pytak.no-ip.org/~trudny/new_moto/bo...dro...%3C/h1%3E
POtem kliknij na nastepna strone i masz taki link: http://pytak.no-ip.org/~trudny/new_moto/bo...6;/h1&str=1 widzisz link u gory zamyka znaczniki wstrzykuje html i masz to w get'cie wiec musisz filtorwac zmienne ktore podajsz do linku

Np robisz tak:
  1. <?php
  2. $zmienna = $_GET['zmienna'];
  3. $zmienna = str_replace(array("<", ">", "\"", "'", "\", "%"), array("", "", "", "", "", ""), $zmienna);
  4. ?>

Teraz powinno byc good jak nie to pokaz jak generujesz linki pokarze ci jak

Ok teraz napewno nic nie bedzie

EDIT:
WIesz ze jest pelno wyszukiwarek z bugiem XSS wystarczy sobie zrobic funkcje z kodu poodanego wyzej i filtorwac wszystkie get'y z wyszukiwarki i juz bedzie bezpieczna wiem bo testowalem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował marcio 15.06.2008, 16:32:01
Go to the top of the page
+Quote Post
KCG
post
Post #65





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


no ja tak nie mam bezpośrednio tych zmiennych pobieranych:
  1. <?php
  2. $return = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
  3. $return = urldecode($return);
  4. $return = str_replace('<','',$return);
  5. $return = str_replace('>','',$return);
  6. $return = str_replace('"','',$return);
  7. $return = str_replace('!','',$return);
  8. ?>

to tak w skróconej formie, bo funkcja jest bardziej rozbudowana (jeśli dodaję zmienną str, to ona usuwa ją z adresu)
Go to the top of the page
+Quote Post
marcio
post
Post #66





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


ALe jesli dalej dziala ten "trick" to znaczy ze robisz cos zle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) chyba ze juz nie dziala

Ten post edytował marcio 15.06.2008, 18:00:13
Go to the top of the page
+Quote Post
KCG
post
Post #67





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


No dalej działa, dlatego kod pokazałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
marcio
post
Post #68





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Pokaz jak tworzysz linki do podstron a jak nie wyszukuj wszystko co sie znajduje za ? i sprawdzaj za pomoca strstr() czy sa nie dozwolone znaki jesli sa otwierasz jakas strone 404.html i tyle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #69





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Ehh durne XSS a postów że hej.... Strony numerujesz chyba liczbami? Całkowitymi? To weź zrzutuj na integer'a i już. Nie wiem nad czym tu sie rozwodzić, jakieś str_replace i podobne zabawy.

Kod
$intSiteID = (int)$_GET['siteID'];


Ten post edytował LonelyKnight 15.06.2008, 20:25:53
Go to the top of the page
+Quote Post
marcio
post
Post #70





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


@up jakby to bylo takie chop siup to bysmy tyle postow nie pisali (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) bo to nie koniecznie nie musi byc wina zmiennej od stronnicowania niech pokaze kod (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) tyle to ja tez wiem ze jest rzutowanie typow
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #71





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Większość akcji na stronach rozpoznawanych jest po ID - wtedy rzutujemy. Jak chcesz umożliwić wpisywanie np. komentarzy i zawęzić dostępne znaczniki HTML to strip_tags i drugi parametr tej funkcji. Jeśli potrzebna bardziej zaawansowana i skuteczna obrona to LINK. I tyle... nie wiem nad czym tu się rozwodzić (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Ten post edytował LonelyKnight 15.06.2008, 21:41:30
Go to the top of the page
+Quote Post
.radex
post
Post #72





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Cytat
Większość akcji na stronach rozpoznawanych jest ID


No, nie zgodzę się. Wchodzimy w erę NiceURL's, gdzie wszystko powinno być czytelne.

Coraz rzadziej się stosuje:

strona.pl/blog.php?id=562

na rzecz:

strona.pl/blog/moj-nowy-wpis
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #73





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Fakt ale wtedy proste strip_tags wystarczy a nie jakieś zabawy w stylu:

  1. <?php
  2. $zmienna = $_GET['zmienna'];
  3. $zmienna = str_replace(array("<", ">", "\"", "'", "\", "%"), array("", "", "", "", "", ""), $zmienna);
  4. ?>


Poza tym, przynajmniej ja, robię w ten sposób, że nawet jak używam rewrite, to w taki sposób aby mieć linki w takiej postaci:

Kod
strona.pl/blog/321,moj-nowy-wpis


...i wtedy dalej wczytuję dane sprawdzając ID a tego co jest po ID nawet nie przekazuję do aplikacji - to jest dla botów wyszukiwarek i userów.
Go to the top of the page
+Quote Post
marcio
post
Post #74





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat(LonelyKnight @ 15.06.2008, 21:59:05 ) *
Większość akcji na stronach rozpoznawanych jest po ID - wtedy rzutujemy. Jak chcesz umożliwić wpisywanie np. komentarzy i zawęzić dostępne znaczniki HTML to strip_tags i drugi parametr tej funkcji. Jeśli potrzebna bardziej zaawansowana i skuteczna obrona to LINK. I tyle... nie wiem nad czym tu się rozwodzić (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Jak to by bylo takie latwe jak tobie sie wydaje to by bylo 60% mniej owned'ow w sieci widac ze chyba tym sie nie bawiles
Go to the top of the page
+Quote Post
.radex
post
Post #75





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Cytat(LonelyKnight @ 15.06.2008, 22:46:35 ) *
Poza tym, przynajmniej ja, robię w ten sposób, że nawet jak używam rewrite, to w taki sposób aby mieć linki w takiej postaci:

Kod
strona.pl/blog/321,moj-nowy-wpis


...i wtedy dalej wczytuję dane sprawdzając ID a tego co jest po ID nawet nie przekazuję do aplikacji - to jest dla botów wyszukiwarek i userów.


Nie lubię takich pół-rozwiązań. Albo ID, albo tekst - nie ma sensu pakować dwóch rzeczy, skoro można użyć tylko jednej.
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #76





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(marcio @ 15.06.2008, 22:48:13 ) *
Jak to by bylo takie latwe jak tobie sie wydaje to by bylo 60% mniej owned'ow w sieci widac ze chyba tym sie nie bawiles


Byłoby mnie "owned'ow" gdyby ludzie piszący te strony mieli jakiekolwiek pojęcie o PHP a nie korzystali ze sklejki popularnych skryptów by xxxx i działających tylko dlatego, że 100x pytali na forum jak je połączyć.

Jak podasz mi jeden przykład XSS który przejdzie przez HTMLpurifier to odejdę ze spuszczoną głową ;-) bo argument "widać, że się tym nie bawiłeś" to średnio trafiony.

-- edit

Cytat
Nie lubię takich pół-rozwiązań. Albo ID, albo tekst - nie ma sensu pakować dwóch rzeczy, skoro można użyć tylko jednej.


Hymm... niby można ale np. wyszukiwanie newsów po tytule w bazie nie będzie tak wydajne jak wyszukiwanie po ID, nie mówiąc o tym, że musisz zapewnić unikalność klucza, co w przypadku tytułów może być problemem... Znowu stosowanie samego ID nie jest user friendly i Google friendly ;-)

Ten post edytował LonelyKnight 15.06.2008, 22:01:08
Go to the top of the page
+Quote Post
marcio
post
Post #77





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Nie wiem co to za narzedzie nie uzywam go ani o nim nigdy nie slyszalem wole wlasne rozwiazania to raz a dwa sa ataki XSS(html injection) gdzie mozna wstrzyknac kod css bez uzuwania <scrtipt> ani html'owych tagow takich jak < czy > nie wiem jak sie to robi ale mialem taki blad w moim cms'ie kolega mi pokazal i zalatalem ale nie pamietam jak...

Ten post edytował marcio 15.06.2008, 22:03:49
Go to the top of the page
+Quote Post
pyro
post
Post #78





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(LonelyKnight @ 15.06.2008, 22:56:32 ) *
Byłoby mnie "owned'ow" gdyby ludzie piszący te strony mieli jakiekolwiek pojęcie o PHP a nie korzystali ze sklejki popularnych skryptów by xxxx i działających tylko dlatego, że 100x pytali na forum jak je połączyć.

Jak podasz mi jeden przykład XSS które przejdzie przez HTMLpurifier to odejdę ze spuszczoną głową ;-) bo argument "widać, że się tym nie bawiłeś" to średnio trafiony.


Cytat
A security vulnerability was found in versions of HTML Purifier earlier
than 3.1.0 and 2.1.4. Affected versions include but are not
limited to 3.0.0, 3.1.0rc1 and 2.1.3.
Although no exploit was found in the wild for this vulnerability, please
update as quickly as possible.


Taaa.... po co wtedy XSS...
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #79





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


I co z tego wynika? Był bug jak chyba w każdej realnej aplikacji ale moim zdaniem ta klasa to najskuteczniejsze obecnie narzędzie przeciw XSS. Jeśli znasz lepszą chętnie zobaczę.
Go to the top of the page
+Quote Post
pyro
post
Post #80





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(LonelyKnight @ 15.06.2008, 23:08:34 ) *
I co z tego wynika? Był bug jak chyba w każdej realnej aplikacji


Był... i może jeszcze jakiś jest...

Cytat(LonelyKnight @ 15.06.2008, 23:08:34 ) *
ale moim zdaniem ta klasa to najskuteczniejsze obecnie narzędzie przeciw XSS. Jeśli znasz lepszą chętnie zobaczę.


jasne... popatrz sobie, strip_tags();" title="Zobacz w manualu PHP" target="_manual, htmlentities" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
marcio
post
Post #81





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat(LonelyKnight @ 15.06.2008, 23:08:34 ) *
I co z tego wynika? Był bug jak chyba w każdej realnej aplikacji ale moim zdaniem ta klasa to najskuteczniejsze obecnie narzędzie przeciw XSS. Jeśli znasz lepszą chętnie zobaczę.



Cytat(pyro @ 15.06.2008, 23:12:44 ) *
Był... i może jeszcze jakiś jest...



jasne... popatrz sobie, [manual\]strip_tags();\[/manual\], [manual\]htmlentities\[/manual\]

@pyro racja wole sobie sam cos napisac z bugiem niz uzyc gotowca i nie wiedziec nawet dlaczego szlo obejsc aplikacje nie rozumiem ludzi ktorzy uzywaja gotowe klasy mowia ze maja racje a jak im sie ktos wlamie placze ludzie sie ucza na wlasnych bledach nie na cudzych

P.S @LonelyKnight nie sugeruje ze sie lepiej od ciebie znam.....
Go to the top of the page
+Quote Post
pyro
post
Post #82





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(marcio @ 15.06.2008, 23:17:22 ) *
@pyro racja wole sobie sam cos napisac z bugiem niz uzyc gotowca i nie wiedziec nawet dlaczego szlo obejsc aplikacje nie rozumiem ludzi ktorzy uzywaja gotowe klasy mowia ze maja racje a jak im sie ktos wlamie placze ludzie sie ucza na wlasnych bledach nie na cudzych


po co pisać z bugiem? Pisz tak aby ich nie było... wiele programistów z lenistwa po napisaniu kodu nie sprawdza go pod kątem bezpieczeństwa... to jest główny powód powstawania security bugów

Lonely, które z tych przykladow na tej stronce co podałeś omija strip_tags?

// EDIT

@LonelyKnight chyba sam sobie odpowiedział i usunął posta (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Ten post edytował pyro 15.06.2008, 22:23:39
Go to the top of the page
+Quote Post
marcio
post
Post #83





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat
po co pisać z bugiem? Pisz tak aby ich nie było... wiele programistów z lenistwa po napisaniu kodu nie sprawdza go pod kątem bezpieczeństwa... to jest główny powód powstawania security bugów

Fakt zawsze sprawdzam ale w niektorych sprawach nie jestes az tak kompetentny zeby wylapac bug (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) staram sie jak moge

Cytat
@LonelyKnight chyba sam sobie odpowiedział i usunął posta

No faktycznie
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #84





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(pyro @ 15.06.2008, 23:12:44 ) *


Cytat(pyro)
po co pisać z bugiem? Pisz tak aby ich nie było... wiele programistów z lenistwa po napisaniu kodu nie sprawdza go pod kątem bezpieczeństwa... to jest główny powód powstawania security bugów


... i widzisz pyro w tym momencie zaryzykuję stwierdzenie, że Twoje aplikacje są dziurawe. Jest tyle ataków XSS, że strip_tags nie jest najlepszym rozwiązaniem, wręcz jednym z gorszych. Jeśli stosujesz wyłącznie takie zabezpieczenia to w momencie kiedy komuś będzie zależało, żeby Ci namieszać to zrobi to. Nawet w manualu na który tu się powołujesz piszą...

Cytat
Because strip_tags() does not actually validate the HTML, partial, or broken tags can result in the removal of more text/data than expected.


...a to znaczy również to, że czasami usuwa za dużo ale czasami również za mało.

-- edit

Usunąłem posta żeby dopisać odpowiedź na Twojego (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Teraz masz całość

--- edit 2

Sprawdź LINK i poczytaj komentarze w manualu pod strip_tags. Dla mnie koniec tematu - nie mam zamiaru więcej Cię uświadamiać ;-)

Ten post edytował LonelyKnight 15.06.2008, 22:30:28
Go to the top of the page
+Quote Post
pyro
post
Post #85





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat("LonelyKnight")
... i widzisz pyro w tym momencie zaryzykuję stwierdzenie, że Twoje aplikacje są dziurawe.


... i widzisz @LonelyKnight nigdy (chyba) nie widziałeś żadnej z mojej aplikacji, używam własnych funkcji zabezpieczających i dotąd nikomu nie udało się ich obejść, oczywiście nie mówie ze w moich skryptach na 100% nie ma luk... zawsze istnieej jakaś szansa, że tkwi bug, ale jak dotychczas nikomu to sie nie udało

// ADD

Lonely, które z tych przykladow na tej stronce co podałeś omija strip_tags? Nie mówię tego ironicznie, chętnie poczytam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował pyro 15.06.2008, 22:31:42
Go to the top of the page
+Quote Post
marcio
post
Post #86





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Cytat
Jeśli stosujesz wyłącznie takie zabezpieczenia to w momencie kiedy komuś będzie zależało, żeby Ci namieszać to zrobi to. Nawet w manualu na który tu się powołujesz piszą..

W sumie lepszym rozwiazaniem to juz jest htmlspecialchars() (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #87





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Użyłem strip_tags(), wcale to lepiej nie wygląda, ale chyba pod względem funkcjonalności będzie ok.
Go to the top of the page
+Quote Post
LonelyKnight
post
Post #88





Grupa: Zarejestrowani
Postów: 240
Pomógł: 13
Dołączył: 1.06.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(pyro @ 15.06.2008, 23:30:11 ) *
... i widzisz @LonelyKnight nigdy (chyba) nie widziałeś żadnej z mojej aplikacji, używam własnych funkcji zabezpieczających i dotąd nikomu nie udało się ich obejść, oczywiście nie mówie ze w moich skryptach na 100% nie ma luk... zawsze istnieej jakaś szansa, że tkwi bug, ale jak dotychczas nikomu to sie nie udało

// ADD

Lonely, które z tych przykladow na tej stronce co podałeś omija strip_tags? Nie mówię tego ironicznie, chętnie poczytam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


To nasze zdania na ten temat są bardzo różne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) bo uważam, że pisanie własnych funkcji zabezpieczających jest ryzykowne. Nie można być specjalistą we wszystkim a bezpieczeństwo aplikacji to temat rzeka. Żeby być w tym dobrym to trzeba się temu poświecić i mieć dostęp do informacji, które nie są publicznie dostępne. Tak samo jak np. pisanie własnych funkcji kryptograficznych jest już całkowitym bezsensem i jest bezpieczne chyba tylko z punktu widzenia autora, tak i tutaj lepiej skorzystać ze sprawdzonych rozwiązań, które będą bezpieczniejsze niż nasze wypociny, choć nie wątpi, że jesteś dobrym programistą.

A co do przykładu omijającego strip_tags to masz notkę, w linku który podałem w poprzednim poscie - na stronie HTMLPurifier.
Go to the top of the page
+Quote Post
pyro
post
Post #89





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(LonelyKnight @ 15.06.2008, 23:41:40 ) *
To nasze zdania na ten temat są bardzo różne (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) bo uważam, że pisanie własnych funkcji zabezpieczających jest ryzykowne. Nie można być specjalistą we wszystkim a bezpieczeństwo aplikacji to temat rzeka. Żeby być w tym dobrym to trzeba się temu poświecić i mieć dostęp do informacji, które nie są publicznie dostępne. Tak samo jak np. pisanie własnych funkcji kryptograficznych jest już całkowitym bezsensem i jest bezpieczne chyba tylko z punktu widzenia autora, tak i tutaj lepiej skorzystać ze sprawdzonych rozwiązań, które będą bezpieczniejsze niż nasze wypociny, choć nie wątpi, że jesteś dobrym programistą.

A co do przykładu omijającego strip_tags to masz notkę, w linku który podałem w poprzednim poscie - na stronie HTMLPurifier.


Nie... źle mnie zrozumiałeś... nie pisze własnych funkcji zabezpieczających w sensie regexów czy czegoś podobnego, pisze funkcje zabezpieczające korzystające z istniejących funkcji, np.

  1. <?php
  2. function safe_string($str)
  3. {
  4. $str = strip_tags($str);
  5. $str = htmlspecialchars($str);
  6. {
  7. $str = addslashes($str); // mysql_real_escape_string...
  8. }
  9. return $str;
  10. }
  11. ?>
Go to the top of the page
+Quote Post
KCG
post
Post #90





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Wracając do tematu:
  1. <?php
  2. $liczba1 = mt_rand(1,9);
  3. $liczba2 = mt_rand(1,9);
  4. echo '<input type="hidden" name="liczba1" value="'.$liczba1.'" />';
  5. echo '<input type="hidden" name="liczba2" value="'.$liczba2.'" />';
  6. echo '<dt><label for="liczby">'.$liczba1.' + '.$liczba2.' =</label></dt>';
  7. echo '<dd><input type="text" name="liczby" id="liczby" maxlength="2" /></dd>';
  8. ?>

Później sprawdzam, czy liczba1 + liczba2 = liczby i działa, tylko nawet boty to obliczają.
Go to the top of the page
+Quote Post
pyro
post
Post #91





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(KCG @ 18.06.2008, 15:17:36 ) *
Wracając do tematu:
  1. <?php
  2. $liczba1 = mt_rand(1,9);
  3. $liczba2 = mt_rand(1,9);
  4. echo '';
  5. echo '';
  6. echo ''.$liczba1.' + '.$liczba2.' =';
  7. echo '';
  8. ?>

Później sprawdzam, czy liczba1 + liczba2 = liczby i działa, tylko nawet boty to obliczają.


Każdy kto by chciał by ominął te imitację zabezpieczenia, to tak naprawde żadne zabezpieczenie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
KCG
post
Post #92





Grupa: Zarejestrowani
Postów: 449
Pomógł: 4
Dołączył: 1.12.2006

Ostrzeżenie: (0%)
-----


Zmienić symbole na słowa, czy coś innego?
Go to the top of the page
+Quote Post
simperium
post
Post #93





Grupa: Zarejestrowani
Postów: 157
Pomógł: 5
Dołączył: 3.03.2004

Ostrzeżenie: (0%)
-----


ja u siebie zrobiłem tak ( zadziałało w 100%):
1. zmieniłem adres tak, by nie występowało w nim słowo guestbook , a więc księga gości jest na www.serwer.cośtam/ksiega.php
(ten ruch, nie wiedzieć czemu, odrzucił mi prawie cały spam, ale nie pytajcie czemu, bo nie wiem... po prostu: działa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )

2. zablokowałem możliwość dodawania wpisów z adresu 127.0.0.1
Nie wiem czemu, ale spam bardzo często wchodził mi z tego adresu, nie wiem, czy to nie kwestia jakieś zabawki analogicznej do TORa (proxy) ?

3. Zadałem proste pytanie w stylu: co jest stolicą Polski, czy jakoś tak.

4. A na koniec użyłem zamiany słów viagra na wigor, czy środek-na-przeczyszczenie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) , xxx na coś tam, że generalnie nazwy linków stały się zabawne, no a co najważniejsze, wcale nie odnosiły do owych stron (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

U mnie to wystarczyło, ale dodam na koniec (co pewnie jest całkiem istotne) strona jest rzadko odwiedzana (średnio 10-20wizyt dziennie).

Pozdr!
Go to the top of the page
+Quote Post

5 Stron V   1 2 3 > » 
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 23:43