rzientek
Reputacja
4,352
Głosów ogółem

- 360

- 32
- Prawdziwe imię
- Rafał
- Członek od
- 2 lata, 5 miesięcy
- Ostatnio widziany
- 6 miesięcy, 3 tygodnie temu
- Witryna
- http://getsimpl...
- Miejscowość
- Radzionków
- Wiek
- 26
O mnie
pracuję jako grafik/webdesigner, jestem również programistą jak i interesuje się tematyką SEO i SEM. Prywatnie lubię dobry film, książkę i muzykę. Żonaty.
Pytania: 65
-
2011-02-27 23:26:18
Django + bazy danych SQLite i MySQL
Od jakiegoś czasu uczę się Django, jego zasad działania, samego działania oraz możliwości. Wiadomo, że bez bazy danych a
-
2010-02-09 13:05:08
Kodowanie LZW i kompresja danych
Jako iż interesuje się również grafiką często używam kompresji plików tif LZW. Otóż czytając różne źródła natrafiłem, że
-
2010-02-03 10:50:41
rootowanie Androida?
Jestem posiadaczem HTC Magic'a z Androidem 1.5. W sieci krąży wiele wersji update systemu, ale rootowanie w/g moich info
-
2010-02-11 15:21:31
Sztuczna Inteligencja w C++ i algorytmy
Chciałem poruszyć dość rozległy temat wiążący się z moim problemem sztucznej inteligencji. Mianowicie przygotowuję proje
-
2009-12-30 16:27:35
Kompilator kodu online
Znacie może jakieś inne kompilatory kodu online prócz Ideone ?
-
2010-01-16 16:13:52
Test jQuery Highlighter
Czy ktoś miał okazję przetestować jQuery Highlighter'a?? Bo mam pomysł jak go wykorzystać na stronie www ale nie wiem cz
-
2010-02-04 17:04:56
Największe bezpieczeństwo aplikacji firmowej
Mam w zamiarze posklejać do kupy, wszystko co tyczy się danych, haseł ftp, haseł do e-maili i w ogóle poważnych informac
-
2010-02-13 21:04:39
C++ - statystyka, programowanie gier
W związku z moim dużym zainteresowaniem tematyką SI i chęcią stworzenia programu/gry symulatora/managera sportowego w C+
-
2009-12-28 10:25:17
Co powiecie o stosowaniu CMS?
Czy macie jakieś doświadczenia w stosowaniu cms'ów? Czy waszym zdaniem strony oparte o cms są wynikiem lenistwa i obniże
-
2010-03-01 16:36:00
HTML 5 a zwykli użytkownicy
Mam dla was pytanie dość trudne, jak na ten czas ze względu na jeszcze małą popularność HTML 5 ale jak sądzicie, w jaki
Odpowiedzi: 193
-
2010-02-21 19:18:44 Zabezpieczanie aplikacji internetowych
Tak w skrócie najbardziej jak się da możemy sobie podzielić typy ataków na:
- Code Injection polega na wstrzykiwaniu złośliwego kodu do niezabezpieczonej strony, osoba atakująca może np. modyfikować bazę i w tym wypadku mamy do czynienia z SQL Injection. Można się zabezpieczyć poprzez stosowanie w php
strip_tags- usuwa znaczniki PHP i HTML z danego ciągu,addslashes- dodaje znak \ przed znaki takie jak: ”, ’,\ i NULL, które mogą być użyte w niecnych celach,preg_matchsprawdza zadany łańcuch pod względem zgodności z podanym wyrażeniem regularnym,htmlspecialchars- konwertuje znaki specjalne na znaczniki HTML np. & na &. Do tego typu ataków należą również ASP Injection, PHP Injection, Shell Injection, HTML/Script Injection. - XSS (Cross-site scripting) opisane przez przedmówcę - zabezpieczenie poprzez filtrowanie treści i przekazywanych zmiennych np za pomocą wyżej wymienionej funkcji strip_tags, stosowanie sesji do uwierzytelnienia użytkownika zamiast plików cookie i kilka innych ważnych spraw, o których można poczytać w internecie bo jest tego dość dużo.
- Path Traversal jest to atak polegający na dostaniu się do pliku lub katalogu na serwerze teoretycznie niedostępnego. Wszystkie udostępniane pliki powinny znaleźć się poniżej katalogu ze stroną (przeważnie jest to katalog
public_htmllubwww). Od strony kodu wprowadzić kontrolę nad wprowadzaną treścią tak jak w przypadku Code Injection np. poprzez funkcję preg_match. Jeszcze do tego przydatny artykuł nawet z przykładami stron podatnych na ten atak. - CSRF (Cross-Site Request Forgery) - nieświadome zmuszeniu użytkownika do wykonania jakieś określonej akcji w trakcie trwania uwierzytelnionej sesji. Obronnie można stosować systemy dodatkowej autoryzacji, można również dodać do formularza ukryte dodatkowe pole, zawierającego indywidualny identyfikator wykonywanej operacji.
- SQL Injection z punktu 1 jest tak szeroko opisywany, że zbędny jest tutaj komentarz. Najpopularniejszą metodą jest używanie funkcji
mysql_real_escape_stringa resztę można doczytać w internecie. Więcej też w manualu z php. - Session Poisoning i Session Hijacking czyli przechwytywanie sesji, na 9fingers już o tym było. Obronnie nie należy przesyłać identyfikatora sesji jako URL, warto stosować własne mechanizmy obsługi sesji i ogólnie do wszystkich trzymać się zasad bezpiecznego programowania i myśleć o zabezpieczeniu serwisu w trakcie jego budowy.
W PHP do filtrowania danych służą funkcje, których opis można znaleźć w manualu.
Oczywiście dodam, że stosowanie trudnych haseł dostępu do strony, ftp itd. powinny być standardową procedurą. Dodatkowe zabezpieczenia typu SSL też się przydadzą.
To chyba najpopularniejsze typy ataków jakie mi przychodzą do głowy.
- Code Injection polega na wstrzykiwaniu złośliwego kodu do niezabezpieczonej strony, osoba atakująca może np. modyfikować bazę i w tym wypadku mamy do czynienia z SQL Injection. Można się zabezpieczyć poprzez stosowanie w php
-
2010-02-23 15:50:23 DIV na środek. [zamknięte]
na środek strony to ustawiasz
#main { margin: auto; } -
2010-02-26 18:37:11 Import kodu w Java Script. [zamknięte]
W/g standardu XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="pisz.js" /></script> <title>Pisz</title> </head> <body> <script type="text/javascript"> pisz(); </script> </body> </html> -
2010-01-07 15:32:49 Źródło darmowych tekstur\dźwięków do umieszczenia w projekcie. [zamknięte]
Ja ściągam z tej strony. Dźwięki są na licencji Royalty Free i można je legalnie wykorzystać do swoich multimedialnych projektów. Na tej samej licencji są tekstury na www.textureking.com i www.texturespot.com.
-
2010-01-08 12:41:07 Przycisk submit jako obrazek
albo w css np:
#button { background-image: url(background.jpg); height: 30px; width: 150px; border: 0; } <input type="submit" name="button" id="button" value="Submit" /> -
2010-02-10 18:04:54 [FLASH] Wstawianie obrazka do animacji
Mam na to dość prosty sposób flash+AS3+XML (robione pod flashem CS4). Tworzysz sobie dokument przykładowo herby.as z kodem:
package { // ładujemy biblioteki import flash.net.*; import flash.display.*; import flash.events.*; import flash.text.TextField; public class herby extends Sprite {public var loader:URLLoader; public function herby() { // tworzymy odwołanie do pliku xml var link:URLRequest = new URLRequest("herby.xml"); loader = new URLLoader(); loader.addEventListener(Event.COMPLETE, loading); loader.load(link); } function loading(evt:Event):void { var XMLherby:XML = new XML(); XMLherby = XML(loader.data); trace(XMLherby); // tablica pobierająca pliki graficzne i ustawienie ich na scenie // [10,100] to odległości od lewej krawędzi i górnej var tablica:Array = [[10,100],[10,300]]; var i:int = 0; for each (var herb in XMLherby.children()) { var req:URLRequest = new URLRequest(herb.@lokalizacja); var img:Loader = new Loader(); img.load(req); img.x = tablica[i][1]; img.y = tablica[i][0]; addChild(img); var txt:TextField = new TextField(); // uporządkowanie i wyświetlanie tekstu pod plikami graficznymi txt.text = herb.@opis; addChild(txt); txt.x = tablica[i][2]+5; txt.y = tablica[i][0]+150; i+=1; } } } }Następnie tworzymy nasz plik herby.xml
<herby> <herb lokalizacja="img/herb1.png" opis="9fingers TEAM"/> <herb lokalizacja="img/herb2.png" opis="Wiki TEAM"/> </herby>Tworzymy dokument herby.fla (np 480x200px, 24fps) w panelu Properties(Właściwości) -> Document Class(Klasa Dokumentu) wpisujemy nazwę naszego pliku herby.as ale bez rozszerzenia czyli herby:

Oczywiście w głównym katalogu musi być też folder img z dwoma obrazkami herb1.png i herb2.png taka ścieżka jak w pliku xml. W efekcie uzyskamy taki efekt jak poniżej:

Jeśli chodzi o php to możesz za pomocą DomDocument stworzyć plik xml z linkami. Jest dużo o tym w sieci, więc nie będę się rozpisywał na ten temat bo to już od indywidualnych zapotrzebowań trzeba dostosować.
Pliki źródłowe z projektu możesz pobrać tutaj. (have fun:)
-
2010-02-21 20:36:50 SQL injection - bezpieczeństwo
Przede wszystkim filtrowanie danych wejściowych i stosowanie
mysql_real_escape_string. Również wspomniane przez @kilas88 mechanizmy prekompilowanych zapytań z podstawianymi zmiennymi- prepared statements (predefiniowane zapytania, MySQL, MS-SQL, PostgreSQL) więcej informacji
- bind variables (zmienne bindowane, Oracle) więcej informacji
- stored procedures czyli funkcje definiowane wewnątrz bazy SQL
Te zabezpieczenia pozwalają na dokładną deklarację typu zmiennej podawanej do zapytania. Dodatkowo prepared statements daje znacznie większą wydajność wykonywania zapytań w większości systemów bazodanowych.
W ograniczonym stopniu można stosować również
settype()do podstawiania zmiennych do SQL'a czyli coś takiego:settype($offset, 'integer'); $query = "SELECT id, nazwa FROM produkty ORDER BY nazwa LIMIT 10 OFFSET $offset;";Dodatkowym zabezpieczeniem może być
mod_rewritepoprzez ukrycie oryginalnego adresu URL i zastąpienie go innym, czyli zwykłe (zaczerpnięte gdzieś z internetu):RewriteEngine On RewriteBase / RewriteRule ^produkty,([0-9]+),([0-9]+)\.html$ produkty.php?kategoria=$1&produkt=$2 [L]Tak jak już ktoś napisał walidować dane wprowadzane przez użytkowników, aby nie można było wpisywać apostrofa i słów które są składnią języka SQL (
select,deleteitd).Można też użyć
strip_tags- wycina wszystkie tagi html z tekstu.Takie rzeczy jak sprawdzanie siły hasła wprowadzonego przez użytkownika do waszego serwisu oraz nadawanie użytkownikom minimalnych praw w korzystaniu z serwisu i kilka innych dobrych praktyk na pewno zniweluje podatność na ataki SQL Injection. Warto też być na bieżąco z nowymi atakami typu SQL Injection i szybko wprowadzać modyfikacje do swoich serwisów.
-
2010-02-25 16:34:50 Domena na localhost, czy to możliwe?
W/g podpowiedzi @nilphilusa działa lokalnie na jednym komputerze ale może się to komuś przyda. Można też zrobić ewentualnie Virtual Host w httpd.conf. Ja mam WAMP'a na przykład ale przy innych np. XAMP'ie jest podobnie.
Utworzyć folder np.
c:\vhostPrzejść do
C:\WINDOWS\system32\drivers\etc\hostsedytować plik hosts w notatniku dodając np.127.0.0.2 domena.plOdkomentować w pliku httpd.conf ścieżkę:
# Virtual hosts Include conf/extra/httpd-vhosts.confOtwieramy plik
httpd-vhosts.confu mnie znajduje się w ścieżceC:\wamp\bin\apache\Apache2.2.11\conf\extrai dodajemy w pierwszą wolną przerwę kod:<Directory C:/vhosts> Order Deny,Allow Allow from all </Directory>pod spodem:
<VirtualHost 127.0.0.2> DocumentRoot c:/vhosts/domena.pl ServerName domena.pl </VirtualHost>Resetujemy usługi w moim przypadku wamp'a i już domena.pl działa na lokalu. Oczywiście w katalogu
c:/vhostsutworzyłem testowy katalogdomena.pli wrzuciłem jakiśindex.html. -
2009-12-28 19:12:13 MySQL wyrażenia regularne
Wyrażenie w MySQL tworzy się przy pomocy polecenia REGEXP:
SELECT * FROM `baza-mail` WHERE email REGEXP '([abc])';zapytanie pobiera wszystkie rekordy z pola email, w których występują litery z zakresu a-c czyli a,b,c.
SELECT * FROM `baza-mail` WHERE email REGEXP '([a-z0-9])';dla przykładu ten zapis spowoduje wyświetlenie wszystkich rekordów które zawierają litery i liczby z zakresu od a do z i od 0 do 9
SELECT * FROM `baza-mail` WHERE email NOT REGEXP '@';powyższy zapis mianowicie jest zaprzeczeniem regexp czyli w tym wypadku przeszukamy wszystkie rekordy, w których nie ma znaku @
W twoim problemie można przypuszczalnie wykluczyć znaki - i _ ale jeszcze muszę pomyśleć jak całe wyrażenie musiało by wyglądać:)
SELECT * FROM `baza-mail` WHERE email NOT REGEXP '(-|_)'; -
2009-12-28 22:23:31 Kodowanie strony www - jakie najlepsze? [zamknięte]
Zdecydowanie utf-8 najbardziej uniwersalny i zawierający znaki z innych języków. Strony pisane głównie w języku polskim spokojnie można kodować iso-8859-2. Nie polecam natomiast kodowania WIN1250 bo.. nie polecam :). Moim zdaniem najlepszy jest utf-8.



















5
5
856