Jump to content

Search the Community

Showing results for tags 'php'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Informatii generale
    • Anunturi importante
    • Bine ai venit
    • Proiecte RST
  • Sectiunea tehnica
    • Exploituri
    • Challenges (CTF)
    • Bug Bounty
    • Programare
    • Securitate web
    • Reverse engineering & exploit development
    • Mobile security
    • Sisteme de operare si discutii hardware
    • Electronica
    • Wireless Pentesting
    • Black SEO & monetizare
  • Tutoriale
    • Tutoriale in romana
    • Tutoriale in engleza
    • Tutoriale video
  • Programe
    • Programe hacking
    • Programe securitate
    • Programe utile
    • Free stuff
  • Discutii generale
    • RST Market
    • Off-topic
    • Discutii incepatori
    • Stiri securitate
    • Linkuri
    • Cosul de gunoi
  • Club Test's Topics
  • Clubul saraciei absolute's Topics
  • Chernobyl Hackers's Topics
  • Programming & Fun's Jokes / Funny pictures (programming related!)
  • Programming & Fun's Programming
  • Programming & Fun's Programming challenges
  • Bani pă net's Topics
  • Cumparaturi online's Topics
  • Web Development's Forum
  • 3D Print's Topics

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Yahoo


Jabber


Skype


Location


Interests


Biography


Location


Interests


Occupation

  1. Greenbytes

    html/css

    Salut, Ma intreb, in afara de HTML si CSS ce este indicat sa mai stii ca sa poti face ceva mai ok ? Browser Scripting - JavaScript si jQuery / AJAX ? Server Scripting - PHP ? Multumesc, Greenbytes
  2. Acest tutorial este adresat celor care doresc sa isi configureze un server cu Debian. O sa acopar in in el urmatoarele aspecte: 1. Instalare kernel cu grsec. 2. Instalare si configurare apache. 3. Instalare si configurare php. 4. Instalare si module php (extensii). 5. Configurare suhosin. 6. Instalare MySQL Server. 7. Modificari diverse permisiuni pentru un nivel mai bun de securitate 8. Instalare nginx si folosirea lui ca frontend pentru apache (dual strat web server) ---------------- 1. Instalare kernel cu grsec. Daca nu stiti inca ce este grsec/grsecurity, un bun punct de plecare este Grsecurity. Pentru linux, grsecurity este un fel de "sfantul graal" in materie de securitate. In plus, va scapa de o problema ce o are linux si care pe mine ma irita: ps aux dupa user, arata toate procesele. root@tex:~# echo "deb http://debian.cr0.org/repo/ kernel-security/" >> /etc/apt/sources.list root@tex:~# wget http://kernelsec.cr0.org/kernel-security.asc root@tex:~# apt-key add kernel-security.asc OK root@tex:~# apt-get update root@tex:~# apt-cache search grsec linux-source-2.6.32.15-1-grsec - Linux kernel source for version 2.6.32.15-1-grsec linux-source-2.6.25.10-1-grsec - Linux kernel source for version 2.6.25.10-1-grsec linux-image-2.6.32.15-1-grsec - Linux kernel binary image for version 2.6.32.15-1-grsec linux-headers-2.6.32.15-1-grsec - Header files related to Linux kernel, specifically, linux-source-2.6.27.29-4-grsec - Linux kernel source for version 2.6.27.29-4-grsec root@tex:~# apt-get install linux-image-2.6.32.15-1-grsec linux-headers-2.6.32.15-1-grsec root@tex:~# init 6 # aici dam reboot pentru a boota noul kernel. // Dupa reboot root@tex:~# uname -a Linux tex 2.6.32.15-1-grsec #2 SMP Mon Jun 28 09:05:30 CEST 2010 x86_64 GNU/Linux root@tex:~# su - tex tex@tex:~$ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND tex 2103 0.6 0.1 36908 1276 pts/0 S 00:58 0:00 su - tex tex 2104 13.0 0.6 23380 6200 pts/0 S 00:58 0:00 -su tex 2129 0.0 0.1 16332 1176 pts/0 R+ 00:58 0:00 ps aux Din cate observati, vad doar procesele mele dupa user. 2. Instalare si configurare apache. root@tex:~# apt-get install apache2-mpm-prefork apache2.2-common apache2.2-bin root@tex:~# rm /etc/apache2/sites-available/default root@tex:~# cat >> /etc/apache2/sites-available/default << EOF > NameVirtualHost * > > <Directory "/var/www"> > AllowOverride AuthConfig FileInfo Options Indexes Limit > Options FollowSymLinks > Options -Indexes > </Directory> > > <VirtualHost *> > DocumentRoot /var/www > ServerName 10.0.0.220 > CustomLog /var/log/apache2/access_log combined > ErrorLog /var/log/apache2/error_log > </VirtualHost> > EOF root@tex:~# Apache o sa-l listam pe 127.0.0.1 port 81 si o sa fie backend. root@tex:~# echo "Listen 127.0.0.1:81" > /etc/apache2/ports.conf root@tex:~# /etc/init.d/apache2 start 3. Instalare si configurare php (plus libapache2-mod-php5, necesar la apache (mod php)) PHP-ul o sa-l instalez de la dotdeb. root@tex:~# echo "deb http://packages.dotdeb.org stable all" >> /etc/apt/sources.list root@tex:~# echo "deb-src http://packages.dotdeb.org stable all" >> /etc/apt/sources.list root@tex:~# wget http://www.dotdeb.org/dotdeb.gpg root@tex:~# cat dotdeb.gpg |apt-key add - && rm dotdeb.gpg OK root@tex:~# apt-get update root@tex:~# apt-get install php5 php5-cli libapache2-mod-php5 php5-common php5-suhosin Inlocuiesc "expose_php = On" cu "expose_php = Off" / "short_open_tag = Off" cu "short_open_tag = On" si "session.name = PHPSESSID" cu "session.name = SERVLET" in php.ini pentru apache2. root@tex:~# perl -pi -e 's/expose_php = On/expose_php = Off/' /etc/php5/apache2/php.ini root@tex:~# perl -pi -e 's/short_open_tag = Off/short_open_tag = On/' /etc/php5/apache2/php.ini root@tex:~# perl -pi -e 's/PHPSESSID/SERVLET/' /etc/php5/apache2/php.ini 4. Instalare si configurare module php (extensii). O sa instalez urmatoarele extensii php: curl, gd, mcrypt, mysql. root@tex:~# apt-get install php5-curl php5-gd php5-mcrypt php5-mysql 5. Configurare suhosin. Din motive de securitate, o sa adaug in blacklisted utilizand suhosin urmatoarele functii: exec,shell_exec,passthru,show_source,dl,leak,ini_alter,ini_restore,proc_open,proc_nice,proc_terminate,proc_close,proc_get_status,symlink,system,popen,pcntl_getpriority,pcntl_wait,diskfreespace,disk_free_space,disk_total_space,get_current_user,stream_socket_accept,stream_socket_client,stream_socket_get_name,stream_socket_recvfrom,stream_socket_sendto,stream_socket_server,stream_socket_shutdown root@tex:~# cat >> /etc/php5/conf.d/suhosin.ini << EOF > > suhosin.executor.func.blacklist = "exec,shell_exec,passthru,show_source,dl,leak,ini_alter,ini_restore,proc_open,proc_nice,proc_terminate,proc_close,proc_get_status,symlink,system,popen,pcntl_getpriority,pcntl_wait,diskfreespace,disk_free_space,disk_total_space,get_current_user,stream_socket_accept,stream_socket_client,stream_socket_get_name,stream_socket_recvfrom,stream_socket_sendto,stream_socket_server,stream_socket_shutdown" > suhosin.cookie.max_array_depth = 256 > suhosin.cookie.max_array_index_length = 256 > suhosin.cookie.max_name_length = 256 > suhosin.cookie.max_totalname_length = 512 > suhosin.cookie.max_value_length = 20000 > suhosin.cookie.max_vars = 200 > suhosin.get.max_array_depth = 200 > suhosin.get.max_totalname_length = 1024 > suhosin.get.max_value_length = 1024 > suhosin.get.max_vars = 1024 > > > suhosin.post.max_array_depth = 1024 > suhosin.post.max_array_index_length = 1024 > suhosin.post.max_name_length = 1024 > suhosin.post.max_totalname_length = 1024 > suhosin.post.max_value_length = 95000 > suhosin.post.max_vars = 1024 > > suhosin.request.max_vars = 512 > suhosin.request.max_value_length = 90000 > suhosin.request.max_totalname_length = 1024 > suhosin.upload.max_uploads = 400 > > suhosin.executor.include.max_traversal = 2 > > EOF root@tex:~# Cam asa arata php in cli: root@tex:~# php -v PHP 5.3.8-1~dotdeb.2 with Suhosin-Patch (cli) (built: Aug 25 2011 13:30:46) Copyright (c) 1997-2011 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH root@tex:~# 6. Instalare MySQL Server si MySQL Client root@tex:~# apt-get install mysql-client-5.5 mysql-server-5.5 7. Modificari diverse permisiuni pentru un nivel mai bun de securitate Mountam tmpfs in /tmp cu flag-urile "noexec,nosuid,nodev" din motive de securitate. root@tex:~# echo "tmpfs /tmp tmpfs noexec,nosuid,nodev 2 2" >> /etc/fstab root@tex:~# mount /tmp root@tex:~# mount |grep "/tmp" tmpfs on /tmp type tmpfs (rw,noexec,nosuid,nodev) Stergem "/var/tmp" si il facem simlink catre tmp. root@tex:~# rm -rf /var/tmp/ && ln -s /tmp /var/tmp Dam chmod 640 la "/dev/shm" din motive de securitate. root@tex:~# chmod 640 /dev/shm 8. Instalare nginx si folosirea lui ca frontend pentru apache (dual strat web server) O sa listam port 80 cu nginx si o sa-l folosim ca frontend pentru apache, care se listeaza pe 127.0.0.1 port 81. (reverse proxy) root@tex:~# apt-get install nginx root@tex:~# rm /etc/nginx/sites-enabled/default root@tex:~# pico /etc/nginx/sites-enabled/default # fisier configuratie server { listen 0.0.0.0:80 default; server_name _; access_log off; error_log /dev/null; location / { proxy_pass http://127.0.0.1:81; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } Pornim nginx-ul. root@tex:~# /etc/init.d/nginx start Starting nginx: nginx. root@tex:~# [URL="http://i42.tinypic.com/121zmtx.png"]O sa pun un phpinfo in "/var/www/"[/URL] pentru a vedea daca este totul in ordine si o sa sterg index.html (default) root@tex:~# echo "<?php phpinfo(); ?>" >> /var/www/index.php root@tex:~# rm /var/www/index.html // restart la apache. root@tex:~# /etc/init.d/apache2 restart --------- Note: - Daca aveti intrebari legate de acest tutorial, va raspund cu cea mai mare placere. - Imi cer scuze pentru eventualele greseli legate de exprimare (am cam tras chiulul de la somn) - Nu am specificat sursa acestui tutorial pentru ca este facut de mine.
  3. Mai întâi de toate vom folosi func?ia symlink pentru a face o comand? rapid? pentru orice fi?ier sau folder vrem de aceea aceast? func?ie v? va fi foarte util? pentru citirea oric?rui folder sau fi?ier (Pentru mai multe detalii Utiliza?i Google). Aici am folosit Shell Named "C99" pentru a executa micul cod php (Eval Code) pe serverul de shared hosting. Exploit-ul este folosit pentru a desc?rca baza de date a victimei dac? ?i numai dac? victima este într-un host comun Desc?rca?i Shell-ul "C99 Shell" ?i urma?i pa?i. Ob?ine?i Oricare Shell C99 /Pasul 1 $ Incarc? php i.e Shell_R-H.php Shell root path (cale). Care este /home/hackerz/public_html . /Pasul 2 $ Deschide?i fi?ierul înc?rcat. http://www.yoursitename.com/shell_R-H.php /Pasul 3 $ Urm?torul pas este s? citi?i cu aten?ie mai jos php Eval Code. Este vorba despre 10 linii php code !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! $filepath='/home/xx/public_html/xx.xx'; $sitepath='/home/xx/public_html/'; $writeblefilepath='myfile.txt';$flib=$sitepath.$wr iteblefilepath; @unlink($flib); symlink($filepath, $flib); echo readlink($flib) . "\n"; echo "<textarea cols=30 rows=10>".file_get_contents("http://" . $_SERVER['HTTP_HOST'] . "/" . $writeblefilepath)."</tex" . "tarea>"; @unlink($flib); !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /Pasul 4 Înlocuirea (xx) pe urma (xx.xx) - (fi?ier-ul ?int?, utilizat de obicei pentru a citi fi?ierele bazei de date de configurare unde g?sim informa?ii de conectare.) EX: - "/home/fbi/public_html/configuration.php" $writeblefilepath, acceseaz? în toate c?ile de scriere asupra site-ului. ?i, de asemenea, este utilizat pentru a face procesul - leg?tura.. scriere ?i ie?ire. Pentru @unlink îl pute?i c?uta pe php.net Este cam vechi in arhiva mea dar merge
  4. Ofer: - Servicii de dezvoltare web in urmatoarele medii: PHP, HTML, CSS, Javascript si MySQL. - Bot scripting (crawlere, automatizari operatiuni, interactiuni cu diferite sisteme) Va pot garanta calitate si profesionalism, la preturi accesibile. Daca sunteti interesat, lasati un PM cu datele de contact.
  5. Salut! Cum se face un formular cu mai multe variante? De exemplu daca ai o intrebare cu 3 optinui de raspuns care sunt butoane radio.. cand dai click pe un buton radio sa-ti apara restul de formular (fara refresh, fara submit) *pentru fiecare optiune (buton radio) trebuie sa apara alt formular. Multumesc!
  6. Vreau sa imi fac un site de traffic exchange, nu ma intereseaza scripturi gata facute de sute de dolari. O sa il scriu eu. Concepul: Fiecare user va avea un link si va da click pe alte linkuri de la altii useri. Cand da click primeste 1 punct. Cand altul da click pe linkul lui i se scade un punct. Problema e ca nu stiu unde sa retin toate astea (clickurile). (Nu vreau sa poata da click la un interval mai mic de 24 de ore pe un anumit link). Sa fac un tabel separat in care sa retin toate astea? Adica: "Userul 32 a dat click pe 543 la timestampul" "Userul 432 a dat click pe 54 la timestampul" Sau fac cate un tabel pentru fiecare user unde sa retin pe ce a dat click+timestamp?
  7. Felicit?ri pentru înving?tori: hari ? [11.08.2010 03:24 PM] Primul Challenge publicat de mine pe RST l-am numit ca fiind unul pu?in mai neobi?nuit, deoarece nu am v?zut ca cineva s? foloseasc? sau s? descrie acea metod?. Tot din acela?i motiv, voi publica un nou Challenge, care (sper din tot sufletul) v? va înfierbânta pu?in creiera?ii. Deci, avem un administrator de Blog, care, pentru o func?ionare corect? a micului site, folose?te urm?torul cod PHP: <?php define ( 'BASE_PATH', dirname ( __FILE__ ) ); $bad_Symbols = array( '<', '>', '\\', '"', "'", '/', '\0', '$' ); //lista simbolurilor ce reprezint? un pericol pentru securitatea Blog-ului class Process { /* Folosim aceast? func?ie pentru a saluta vizitatorul, afi?ând un mesaj implicit */ public function Welcome() { $Msg = 'Welcome to my Personal Blog!'; return $Msg; } /* Aceast? func?ie, o folosim pentru a extrage con?inutul unei pagini (salvat într-un fi?ier local). Pentru a proteja blogul de un include, din numele fi?ierului elimin?m caracterele periculoase. */ public function Open_Page( $page ) { global $bad_Symbols; $page_File = @str_replace( $bad_Symbols, '', $page ); $show_Page = BASE_PATH . "/{$page_File}.php"; if ( @file_exists( $show_Page ) ) { return @file_get_contents( $show_Page ); } return "Error 404! Page <b>{$page_File}.php</b> not found..."; } /* Cu ajutorul acestei func?ii, din comentariul l?sat de utilizator ?tergem orice caracter periculos ?i l?sam doar textul ”curat” */ public function HTML_Clean( $html_Data ) { global $bad_Symbols; $bb_Data = @preg_replace( '#(<[a-z]+.*?>)(.*?)(</[a-z]+>)#isem', '\\2', $html_Data ); $bb_Data = @str_replace( $bad_Symbols, '', $bb_Data ); return $bb_Data; } } $init = new Process(); if ( isset( $_GET['page'] ) ) { $_Template = $init->Open_Page( $_GET['page'] ); } elseif ( isset( $_POST['comment'] ) ) { $_Template = $init->HTML_Clean( $_POST['comment'] ); } else { $_Template = $init->Welcome(); } echo $_Template; ?> Cred c? explica?iile asupra acestui cod sunt de prisos. Iar voi, dup? cum v? da?i bine seama, trebuie s? g?si?i ?i s? exploata?i vulnerabilitatea din acest PHP-cod. Succes! p.s. A?tept cu ner?bdare PM-urile înving?torilor.
  8. Alex, 26 de ani, web developer si system administrator ... sunt deschis tot timpul la incercari si idei noi si inevitabil, tot timpul ocupat cu ceva :)Bine v-am gasit
  9. Salutare , Ma numesc Alin , am 14 ani , stiu HTML, PHP si incerc sa invat Pascal
  10. Salut, sunt nou pe RST si intr-ale programarii! Invat php si am ceva probleme la if-uri! This is the html: <html> <head> <title>Piese auto</title> </head> <body> <h1>Piese auto</h1> <h2>Introduceti comanda</h2> <form action="processorder.php" method=post> <table border="0"> <tr bgcolor=#cccccc> <td width="150">Piesa</td> <td>Pret</td> <td width="15">Cantitate</td> </tr> <tr> <td>Anvelope</td> <td><center>$100</center></td> <td align="center"><input type="text" name="tireqty" size="3" maxlength="3" />bucati</td> </tr> <tr> <td>Sticle de ulei</td> <td><center>$10</center></td> <td align="center"><input type="text" name="oilqty" size="3" maxlength="3" />bucati</td> </tr> <tr> <td>Bujii</td> <td><center>$4</center></td> <td align="center"><input type="text" name="sparkqty" size="3" maxlength="3" />bucati</td> </tr> <tr> <td colspan="2" align="center"><input type="submit" value="Introdu comanda" /></td> </tr> </table> </form> <h3>Valoare TVA: 19%</h3> </body> </html> And this...php file: <html> <head> <title>Piese auto - Comanda introdusa</title> </head> <body> <h1>Piese auto</h1> <h2>Comanda introdusa</h2> <?php echo'<p>Comanda procesata la '; echo date('H:i, jS F'); echo '<p>'; $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $totalqty = 0; $totalqty = $tireqty + $oilqty + $sparkqty; if($totalqty == 0) { echo 'Nu ai comandat nimic<br/>'; } elseif(is_numeric($tireqty) && is_numeric($oilqty) && is_numeric($sparkqty) && is_int($tireqty) && is_int($oilqty) && is_int($sparkqty)) { echo '<p>Ai comandat urmatoarele:</p>'; if($tireqty > 0) { echo $tireqty. ' anvelope<br />'; } else { echo 'Nu ai comandat anvelope!<br />'; } if($oilqty > 0) { echo $oilqty. ' sticle de ulei<br />'; } else { echo 'Nu ai comandat ulei!<br />'; } if($oilqty > 0) { echo $sparkqty. ' bujii<br />'; } else { echo 'Nu ai comandat bujii!<br />'; } } else { echo 'Trebuie sa introduci <u>doar numere intregi</u>(ex.: 3, 6, 14)<br />'; } /* echo 'Total piese: ' .$totalqty.'<br />'; echo '<br />'; echo '<p>Obiecte comandate: </p>'; echo $tireqty. ' anvelope;<br />'; echo $oilqty. ' sticle de ulei;<br />'; echo $sparkqty. ' bujii;<br />';*/ $totalamount = 0.00; define('TIREPRICE', 100); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: $' .number_format($totalamount, 2). '<br />'; echo '<br />'; $taxrate = 0.19; $totalamount = $totalamount * (1 + $taxrate); echo 'Total(TVA inclus): $' .number_format($totalamount, 2); ?> </body> </html> Tocmai ce am scapat de o eroare strasanta(Parse error: syntax error, unexpected T_ELSE in....), acum am rezolvat, dar indiferent de ce as scrie in campurile din fisierul html, scriptul php imi sare peste elseif-ul care ar trebui sa verifice is_int, is_numeric si $totalqty > 0, $oilqty > 0...., deci sare peste el si trece direct la else, in concluzie, imi afiseaza(indiferent ce as completa in forumular) "Trebuie sa introduci doar numere intregi (ex.: 3, 6, 14) si cu totalul si subtotalul... Nu stiu cum sa-l fac sa intre in bucla de la elseif(sau care e problema) ca sa verifice conditiile alea...si apoi pe cele din if-urile incluse in bucla lui elseif! Scuzele mele daca m-am explicat ambiguu! Multumesc!
×
×
  • Create New...