Prezentare:  Web Application Integration Mihnea Simian – 313CC 14.01.2008
Webscripting Client-side: JavaScript, ActionScript (flash)‏ Interpretat de browser, pluginuri activex sau alte componente locale Server-side: PHP, CGI, ASP, Pearl Interpretat de un proces de pe serverul web care executa codul si transmite serverului web Apache outputul (x)html/xml    browserul clientului. Avantaje:  centralizarea taskurilor, accesul la resursele serverului, control absolut, portabilitate la nivel de client, protectia codului !#/bin/bash hello=“Hello World!” echo $hello !#/usr/bin/php $hello=“Hello World!”; echo $hello; <?php $hello=“Hello World!”; ?> Aici html <? echo $hello; ?> -vezi sectiunea 11.3.1.2 - Shebang
Studiu de caz: PHP Ruleaza ca proces de obicei sub userul “nobody”, grupul “nogroup” prin care realizeaza operatii (comenzi) la nivelul shellului. Exemple: functia get_cwd() (vezi cap Procese 4.1.3.1, /proc/pid/cwd),  functiile de lucru cu fisiere – copy, unlink, functii de securitate – chown, chmod. Multiple capabilitati, foarte flexibil, sintaxa similara cu C/C++, frecvent considerat limbaj de programare(?) – suport oop, declaratii si conversii tipuri de date, lucrul cu adrese, variable variables Biblioteci (extensii) diverse – ex: php_exif_data,  php_gd, php_mysql/mssql/innodb,
Mai mult! Cum? Nevoia unor operatii ample care depasesc capabilitatile scriptingului Exemple: prelucrarea sofisticata a unor fisiere multimedia (youtube, deviantart), mass-mailere personalizate, servicii de retea, servicii de comunicatie (telefonie mobila)‏ Solutia: utilizarea unor aplicatii care vor rula pe server si vor satisface cererile clientului
Apelarea aplicatiei Executie manuala Rularea ca daemon (background process)‏ Precum cronjob (scheduled task)‏ La apelul scriptului web
Functii de SO in PHP resource  proc_open  ( string $cmd , array $descriptorspec , array &$pipes [, string $cwd [, array $env [, array $other_options ]]] )‏ string  exec  ( string $command [, array &$output [, int &$return_var ]] )‏ string  system  ( string $command [, int &$return_var ] )‏ Procesul lansat are UIDul userului “nobody” Fisierul sudoers poate fi editat pentru a asigura utilizatorului nobody permisiunile necesare System si exec asteapta incheierea procesului, in timp ce proc_open ofera control absolut asupra procesului direct din script
Exemplu
Teasing Diverse comenzi (de ex. listarea fisierelor) lansate pe calculatorul  (serverul web) de acasa, printr-un script web Un GUI-shell in browser, gen Windows Explorer
Anexa: Lansare aplicatii pe client Windows HKEY_CLASSES_ROOT\ymsgr\shell\open\command cu valoarea   &quot;C:\Program[..]\YahooMessenger.exe&quot; %1 Link de tip <a href=“ymsgr:actiune”>..</a> Browserul interpreteaza protocolul linkului conform registrilor lansand cu parametru aplicatia corespunzatoare Atentie!  Practica este utilizata de situri Warez pentru a lansa malware pe sistemul clientului
Cuvinte cheie script client-side server-side php extensii proc_open system exec descriptori file pointer pipes protocol

More Related Content

PPTX
Analiza si evolutia vulnerabilitatilor web
PPT
Programare Web - Cookie-uri si sesiuni
PPT
Programare Web - Accesul la baze de date prin PHP
PPTX
3. Php MongoDB intro
PDF
WADe 2014—2015 (supliment): Dezvoltare Web via node.js
PPTX
Sisteme de Operare: Sistemul de Intrare si Iesire
PPT
Programare Web - De la CGI la servere de aplicatii
PPT
ppd
Analiza si evolutia vulnerabilitatilor web
Programare Web - Cookie-uri si sesiuni
Programare Web - Accesul la baze de date prin PHP
3. Php MongoDB intro
WADe 2014—2015 (supliment): Dezvoltare Web via node.js
Sisteme de Operare: Sistemul de Intrare si Iesire
Programare Web - De la CGI la servere de aplicatii
ppd

Viewers also liked (6)

PPT
Mobile Learning And Pd As
PPT
Eric Online Tutorial 0806
PPT
Power Sind.Asperger
PPT
ανέκδοτα
PPT
Asp Online Tutorial2
PPS
L'information Medicale
Mobile Learning And Pd As
Eric Online Tutorial 0806
Power Sind.Asperger
ανέκδοτα
Asp Online Tutorial2
L'information Medicale
Ad

Similar to Prezentare USO - Web Application Integration (20)

PPT
Programare Web - PHP (o prezentare generala)
PDF
WADe 2017-2018 Tutorial (1/3): Web Application Development with Node.js – An ...
PDF
Node.js: aspecte esențiale
PDF
Web 2016 (04/13) Programare Web – Dezvoltarea aplicațiilor Web în PHP
PDF
Aplicații Firefox OS cu HTML5
PDF
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
PDF
Cu codul în "nori"
PDF
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
PDF
HTML5? HTML5!
PDF
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #10): Ingineria dezvo...
PDF
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
PPTX
09 server mgmt_ii_ro
PPTX
04 web server_deployment_ro
PDF
Web 2016 (09/13) Procesarea datelor XML & HTML. Simple API for XML. Procesări...
PDF
CLIW 2017-2018 (8/12) Ingineria dezvoltării aplicaţiilor JavaScript
PDF
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
PDF
Curs gratuitarduino lectia12-conexiunewifi-googledocs
PDF
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
PDF
Web 2016 (05/13) Programare Web – Dezvoltarea aplicațiilor Web via Node.js
PDF
Limbajul PHP_Ghid_Eugeniu Gârlă2024g.pdf
Programare Web - PHP (o prezentare generala)
WADe 2017-2018 Tutorial (1/3): Web Application Development with Node.js – An ...
Node.js: aspecte esențiale
Web 2016 (04/13) Programare Web – Dezvoltarea aplicațiilor Web în PHP
Aplicații Firefox OS cu HTML5
Web 2020 04/12: Programare Web – Dezvoltarea aplicaţiilor Web în PHP
Cu codul în "nori"
Web 2020 07/12: Procesarea datelor XML & HTML – Simple API for XML. Procesări...
HTML5? HTML5!
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #10): Ingineria dezvo...
Dezvoltarea aplicaţiilor Web la nivel de client (cursul #12): Programare Web....
09 server mgmt_ii_ro
04 web server_deployment_ro
Web 2016 (09/13) Procesarea datelor XML & HTML. Simple API for XML. Procesări...
CLIW 2017-2018 (8/12) Ingineria dezvoltării aplicaţiilor JavaScript
CLIW 2014—2015 (11/12): Programare Web. API-uri JavaScript în contextul HTML5
Curs gratuitarduino lectia12-conexiunewifi-googledocs
CLIW 2015-2016 (11/13) Programare Web. API-uri JavaScript în contextul HTML5
Web 2016 (05/13) Programare Web – Dezvoltarea aplicațiilor Web via Node.js
Limbajul PHP_Ghid_Eugeniu Gârlă2024g.pdf
Ad

Prezentare USO - Web Application Integration

  • 1. Prezentare: Web Application Integration Mihnea Simian – 313CC 14.01.2008
  • 2. Webscripting Client-side: JavaScript, ActionScript (flash)‏ Interpretat de browser, pluginuri activex sau alte componente locale Server-side: PHP, CGI, ASP, Pearl Interpretat de un proces de pe serverul web care executa codul si transmite serverului web Apache outputul (x)html/xml  browserul clientului. Avantaje: centralizarea taskurilor, accesul la resursele serverului, control absolut, portabilitate la nivel de client, protectia codului !#/bin/bash hello=“Hello World!” echo $hello !#/usr/bin/php $hello=“Hello World!”; echo $hello; <?php $hello=“Hello World!”; ?> Aici html <? echo $hello; ?> -vezi sectiunea 11.3.1.2 - Shebang
  • 3. Studiu de caz: PHP Ruleaza ca proces de obicei sub userul “nobody”, grupul “nogroup” prin care realizeaza operatii (comenzi) la nivelul shellului. Exemple: functia get_cwd() (vezi cap Procese 4.1.3.1, /proc/pid/cwd), functiile de lucru cu fisiere – copy, unlink, functii de securitate – chown, chmod. Multiple capabilitati, foarte flexibil, sintaxa similara cu C/C++, frecvent considerat limbaj de programare(?) – suport oop, declaratii si conversii tipuri de date, lucrul cu adrese, variable variables Biblioteci (extensii) diverse – ex: php_exif_data, php_gd, php_mysql/mssql/innodb,
  • 4. Mai mult! Cum? Nevoia unor operatii ample care depasesc capabilitatile scriptingului Exemple: prelucrarea sofisticata a unor fisiere multimedia (youtube, deviantart), mass-mailere personalizate, servicii de retea, servicii de comunicatie (telefonie mobila)‏ Solutia: utilizarea unor aplicatii care vor rula pe server si vor satisface cererile clientului
  • 5. Apelarea aplicatiei Executie manuala Rularea ca daemon (background process)‏ Precum cronjob (scheduled task)‏ La apelul scriptului web
  • 6. Functii de SO in PHP resource proc_open ( string $cmd , array $descriptorspec , array &$pipes [, string $cwd [, array $env [, array $other_options ]]] )‏ string exec ( string $command [, array &$output [, int &$return_var ]] )‏ string system ( string $command [, int &$return_var ] )‏ Procesul lansat are UIDul userului “nobody” Fisierul sudoers poate fi editat pentru a asigura utilizatorului nobody permisiunile necesare System si exec asteapta incheierea procesului, in timp ce proc_open ofera control absolut asupra procesului direct din script
  • 8. Teasing Diverse comenzi (de ex. listarea fisierelor) lansate pe calculatorul (serverul web) de acasa, printr-un script web Un GUI-shell in browser, gen Windows Explorer
  • 9. Anexa: Lansare aplicatii pe client Windows HKEY_CLASSES_ROOT\ymsgr\shell\open\command cu valoarea &quot;C:\Program[..]\YahooMessenger.exe&quot; %1 Link de tip <a href=“ymsgr:actiune”>..</a> Browserul interpreteaza protocolul linkului conform registrilor lansand cu parametru aplicatia corespunzatoare Atentie! Practica este utilizata de situri Warez pentru a lansa malware pe sistemul clientului
  • 10. Cuvinte cheie script client-side server-side php extensii proc_open system exec descriptori file pointer pipes protocol