On 12/4/16 8:17 AM, Wietse Venema wrote:
@ lbutlr:
On 12/3/16 2:57 PM, Wietse Venema wrote:
Proof of concept:

  MAIL FROM<"<script type='text/javascript'>alert('xss');</script>"@example.com>

That result in "501 5.5.4 Syntax: MAIL FROM:<address>"

OK, so insert a the missing ':'

MAIL FROM:"<script type='text/javascript'>alert('xss');</script>"@example.com>
250 2.1.0 Ok

Fair enough. But the script strips out < and > (and [] and ,), so I'm still not seeing an issue.

bzgrep "$MATCHPAT" $LOGF | grep -i reject | egrep 'from=<[^>]+>' | grep -v "Protocol error" | grep -v "$EXCLUDE" | sort -u | sed 's/from=<//' | tr -d '>,[]:' | grep -v rejected

I guess the sed only strips the enclosing <, so spurious opening brakcets could be left behind, but the tr -d will take out all the closing >'s. I've added '<' to the tr list just in case, so no <> from the log file will remain.

Reply via email to