Безопасность интернет-приложений осень 2013 лекция 9
Upcoming SlideShare
Loading in...5
×
 

Безопасность интернет-приложений осень 2013 лекция 9

on

  • 155 views

 

Statistics

Views

Total Views
155
Views on SlideShare
144
Embed Views
11

Actions

Likes
0
Downloads
4
Comments
0

1 Embed 11

https://tech-mail.ru 11

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Безопасность интернет-приложений осень 2013 лекция 9 Безопасность интернет-приложений осень 2013 лекция 9 Presentation Transcript

  • время энергопотребление ошибки 2
  • - Ciphertext-only: у нас есть только зашифрованный текст/тексты Known plaintext: есть шифротекст и соответствующий ему открытый текстё Chosen plaintext: мы можем выбирать текст для шифровки Related key: у нас есть несколько шифровок одного текста с разными ключами 3
  • web LDAP 5
  • Login: searchlogin= "(&(uid="+user+")" (userPassword={MD5}"+base64(pack("H*",md5(pass)))+"))"; GET /login?user=*)(uid=*))(|(uid=*&pass=any searchlogin="(&(uid=*)(uid=*)) (|(uid=*)(userPassword={MD5}X03MO1qnZdYdgyfeuILPmQ==))" 6
  • Blocklist & | ! = ~= >= <= * () Boolean AND Boolean OR Boolean NOT Equals Approx Greater than Lesser than Any character Grouping 7
  • <?xml version="1.0" encoding="ISO-8859-1"?> <tag1> <tag2>$var</tag2> </tag1> GET /?var=</tag2><tag3>value</tag3><tag2> 8
  • XML External Entity <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE foo [ <!ELEMENT foo ANY > <!ENTITY xxe SYSTEM "file:///path/to/file" >]> <foo>&xxe;</foo> 9
  • <html> <!--#include virtual=”header.html” --> </html> SSI directives: echo var="varname" include virtual="docname" exec cmd="command" 10
  • src data1 data2da strcpy gets sprintf ... 12
  • Stack-based void f(char* var){ char buf[10]; } void main(int argc,char** argv){ f(argv[1]); } argv buf argv var Stack frame Mem Stack argv ret address argv ... Mem ... 13
  • Heap-based void main(int argc,char** argv){ char* buf; buf = (char*)malloc(256); strcpy(buf,argv[1]); } buf data ... argv Mem argv Mem ... 14
  • 8bit: 255 +2 = 1 16bit: 65535+2=1 32bit: 4294967295+2=1 nresp = packet_get_int(); if (nresp > 0) { response = xmalloc(nresp*sizeof(char*)); for (i = 0; i < nresp; i++) response[i] = packet_get_string(NULL); } 15
  • printf sprintf snprintf ... printf("%s%s%s",v1,v2); %s string %p pointer %i integer %x hexadecimal %n write to pointer 16