bug80710_1.phpt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. --TEST--
  2. Bug #80710 (imap_mail_compose() header injection) - MIME Splitting Attack
  3. --EXTENSIONS--
  4. imap
  5. --FILE--
  6. <?php
  7. $envelope["from"]= "joe@example.com\n From : X-INJECTED";
  8. $envelope["to"] = "foo@example.com\nFrom: X-INJECTED";
  9. $envelope["cc"] = "bar@example.com\nFrom: X-INJECTED";
  10. $envelope["subject"] = "bar@example.com\n\n From : X-INJECTED";
  11. $envelope["x-remail"] = "bar@example.com\nFrom: X-INJECTED";
  12. $envelope["something"] = "bar@example.com\nFrom: X-INJECTED";
  13. $part1["type"] = TYPEMULTIPART;
  14. $part1["subtype"] = "mixed";
  15. $part2["type"] = TYPEAPPLICATION;
  16. $part2["encoding"] = ENCBINARY;
  17. $part2["subtype"] = "octet-stream\nContent-Type: X-INJECTED";
  18. $part2["description"] = "some file\nContent-Type: X-INJECTED";
  19. $part2["contents.data"] = "ABC\nContent-Type: X-INJECTED";
  20. $part3["type"] = TYPETEXT;
  21. $part3["subtype"] = "plain";
  22. $part3["description"] = "description3";
  23. $part3["contents.data"] = "contents.data3\n\n\n\t";
  24. $body[1] = $part1;
  25. $body[2] = $part2;
  26. $body[3] = $part3;
  27. echo imap_mail_compose($envelope, $body);
  28. ?>
  29. --EXPECTF--
  30. Warning: imap_mail_compose(): header injection attempt in from in %s on line %d