I have a report from one of my users of IntrusionDetector.Disable not working also: <br><br><br><p class="MsoNormal">I have an exception coming from the Intrusion Detection in
ESAPI, I tried disabling it with: </p>

<p class="MsoNormal">  IntrusionDetector.Disable=true</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">But that doesn’t seems to be working.  The problem is
with a cookie value that we have.  It seems to be double encoded and the
Intrusion Detection throws an exception so the loading of the page fails.</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Here’s the exception</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">2010-09-27 18:00:50,811 INFO  [STDOUT] 2010-09-27
18:00:50,810 ERROR [<a href="http://some.server.com">some.server.com</a>%2F12.34.56.78-8009-1]
Log4JLogFactory$Log4JLogger - [SECURITY FAILURE Anonymous:null@unknown -&gt; <a href="http://some.server.com:443/ExampleApplication/IntrusionException">some.server.com:443/ExampleApplication/IntrusionException</a>]
INTRUSION - Multiple (2x) encoding detected in XXXXXXXXXXXXXXXXXXXXX</p>

<p class="MsoNormal">2010-09-27 18:00:50,812 INFO  [STDOUT] 2010-09-27
18:00:50,811 ERROR [<a href="http://some.server.com.com">some.server.com.com</a>%2F12.34.56.78-8009-1] Log4JLogFactory$Log4JLogger
- [SECURITY FAILURE Anonymous:null@unknown -&gt; <a href="http://some.server.com:443/ExampleApplication/com.server.some.SecurityWrapper">some.server.com:443/ExampleApplication/com.server.some.SecurityWrapper</a>]
Error in SecurityWrapper: Input validation failure</p>

<p class="MsoNormal">org.owasp.esapi.errors.IntrusionException: Input validation
failure</p>

<p class="MsoNormal">        at
org.owasp.esapi.reference.DefaultEncoder.canonicalize(DefaultEncoder.java:169)</p>

<p class="MsoNormal">        at
org.owasp.esapi.reference.DefaultEncoder.canonicalize(DefaultEncoder.java:120)</p>

<p class="MsoNormal">        at org.owasp.esapi.reference.validation.StringValidationRule.getValid(StringValidationRule.java:290)</p>

<p class="MsoNormal">        at
org.owasp.esapi.reference.DefaultValidator.getValidInput(DefaultValidator.java:173)</p><p class="MsoNormal"><br></p><p class="MsoNormal"><br></p><p class="MsoNormal">I dug into the code and it looks like StringValidationRule.getValid( String context, String input ) calls the one-argument DefaultEncoder.canonicalize(String input) which automatically enforces strict intrusion detection regardless of the value in ESAPI.properties. <br>
</p><p class="MsoNormal"><br></p><p class="MsoNormal">-August <br></p><br><br><div class="gmail_quote">On Fri, Sep 24, 2010 at 6:59 AM, Saad Shakil <span dir="ltr">&lt;<a href="mailto:sshakil@rim.com">sshakil@rim.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">








<div link="blue" vlink="purple" lang="EN-US">

<div>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);">But intrusion detection sounds
like something I should be keeping :)</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);">Other than validation against
the regex, what else does IntrusionDetector do?</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);"> </span></p>

<div>

<div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0in 0in;">

<p class="MsoNormal"><b><span style="font-size: 10pt;">From:</span></b><span style="font-size: 10pt;"> Jim Manico
[mailto:<a href="mailto:jim.manico@owasp.org" target="_blank">jim.manico@owasp.org</a>] <br>
<b>Sent:</b> Thursday, September 23, 2010 8:36 PM<br>
<b>To:</b> Saad Shakil; <a href="mailto:Esapi-user@lists.owasp.org" target="_blank">Esapi-user@lists.owasp.org</a><br>
<b>Subject:</b> RE: [Esapi-user] disabling logging</span></p>

</div>

</div><div><div></div><div class="h5">

<p class="MsoNormal"> </p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);">Yes, just disable Intrusion
Detection and this problem should go away. To do that, please just add the
following to your copy of ESAPI.properties</span></p>

<p class="MsoNormal"><span style="color: rgb(31, 73, 125);"> </span></p>

<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: black;">IntrusionDetector.Disable=</span><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: rgb(42, 0, 255);">true</span><span style="color: rgb(31, 73, 125);"></span></p>


<p class="MsoNormal"><span style="color: rgb(31, 73, 125);"> </span></p>

<div>

<div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0in 0in;">

<p class="MsoNormal"><b><span style="font-size: 10pt;">From:</span></b><span style="font-size: 10pt;"> <a href="mailto:esapi-user-bounces@lists.owasp.org" target="_blank">esapi-user-bounces@lists.owasp.org</a>
[mailto:<a href="mailto:esapi-user-bounces@lists.owasp.org" target="_blank">esapi-user-bounces@lists.owasp.org</a>] <b>On Behalf Of </b>Saad Shakil<br>
<b>Sent:</b> Thursday, September 23, 2010 10:38 AM<br>
<b>To:</b> <a href="mailto:Esapi-user@lists.owasp.org" target="_blank">Esapi-user@lists.owasp.org</a><br>
<b>Subject:</b> [Esapi-user] disabling logging</span></p>

</div>

</div>

<p class="MsoNormal"> </p>

<p class="MsoNormal">I tried setting &lt;priority value =&quot;off&quot; /&gt; in
log4j.xml, but still noticed an IntrusionDetector SECURITY FAILURE on a
validation exception that I catch in my code.</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal" style="">Secondly, separate validation
and intrusion exceptions become redundant if a third intrustiondetector is
already thrown.  IntrusionDetector.class reads: </p>

<p class="MsoNormal" style="">“<span style="font-size: 10pt; font-family: &quot;Courier New&quot;; color: rgb(63, 95, 191);">This method should immediately log the
exception so that developers throwing an IntrusionException do not have to
remember to log every error.”</span></p>

<p class="MsoNormal"> I understand that the way we can catch an attack is
through validation failure, but what distinguishing a harmless error from an
actual attack?  Right now, I have it so that I violate the default
‘AccountName’ rule by trying to update the value to one that is of length 2
characters, when the min is three …{3,100}$.  I haven’t dug deep inside
ESAPI code, but this shouldn’t be treated as an exception in my case, rather
just an invalid input.  And I’d like to change the logging to reflect
that, and the event’s handling too if possible.  Any idea on how I can go
about doing this?</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Thanks.</p>

<p class="MsoNormal">-S</p>

<p class="MsoNormal"><span style="font-size: 12pt; font-family: &quot;Times New Roman&quot;,&quot;serif&quot;;">---------------------------------------------------------------------
<br>
This transmission (including any attachments) may contain confidential
information, privileged material (including material protected by the
solicitor-client or other applicable privileges), or constitute non-public
information. Any use of this information by anyone other than the intended
recipient is prohibited. If you have received this transmission in error,
please immediately reply to the sender and delete this information from your
system. Use, dissemination, distribution, or reproduction of this transmission
by unintended recipients is not authorized and may be unlawful. </span></p>

</div></div></div><div><div></div><div class="h5">

--------------------------------------------------------------------- <br>
This transmission (including any attachments) may contain confidential information, privileged material (including material protected by the solicitor-client or other applicable privileges), or constitute non-public information. Any use of this information by anyone other than the intended recipient is prohibited. If you have received this transmission in error, please immediately reply to the sender and delete this information from your system. Use, dissemination, distribution, or reproduction of this transmission by unintended recipients is not authorized and may be unlawful.
</div></div></div>


<br>_______________________________________________<br>
Esapi-user mailing list<br>
<a href="mailto:Esapi-user@lists.owasp.org">Esapi-user@lists.owasp.org</a><br>
<a href="https://lists.owasp.org/mailman/listinfo/esapi-user" target="_blank">https://lists.owasp.org/mailman/listinfo/esapi-user</a><br>
<br></blockquote></div><br>