赞
踩
<dependency> <groupId>org.owasp.esapi</groupId> <artifactId>esapi</artifactId> <version>2.2.3.1</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency>
- ESAPI.printProperties=true
-
- # 这个地方是配置ESAPI的实现类,项目中用到那个就选择性配置即可
- ESAPI.Encoder=org.owasp.esapi.reference.DefaultEncoder
- ESAPI.Validator=org.owasp.esapi.reference.DefaultValidator
-
- # 以下是选择性配置,可以在官网找到对应的介绍
- ESAPI.Logger=org.owasp.esapi.logging.java.JavaLogFactory
- Encoder.AllowMultipleEncoding=false
- Encoder.AllowMixedEncoding=false
- Encoder.DefaultCodecList=HTMLEntityCodec,PercentCodec,JavaScriptCodec
- Logger.ApplicationName=ExampleApplication
- Logger.LogEncodingRequired=false
- Logger.LogApplicationName=true
- Logger.LogServerIP=true
- Logger.LogFileName=ESAPI_logging_file
- Logger.MaxLogFileSize=10000000
- Logger.UserInfo=true
- Logger.ClientInfo=true
- # The ESAPI validator does many security checks on input, such as canonicalization
- # and whitelist validation. Note that all of these validation rules are applied *after*
- # canonicalization. Double-encoded characters (even with different encodings involved,
- # are never allowed.
- #
- # To use:
- #
- # First set up a pattern below. You can choose any name you want, prefixed by the word
- # "Validation." For example:
- # Validation.Email=^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\\.[a-zA-Z]{2,4}$
- #
- # Then you can validate in your code against the pattern like this:
- # ESAPI.validator().isValidInput("User Email", input, "Email", maxLength, allowNull);
- # Where maxLength and allowNull are set for you needs, respectively.
- #
- # But note, when you use boolean variants of validation functions, you lose critical
- # canonicalization. It is preferable to use the "get" methods (which throw exceptions) and
- # and use the returned user input which is in canonical form. Consider the following:
- #
- # try {
- # someObject.setEmail(ESAPI.validator().getValidInput("User Email", input, "Email", maxLength, allowNull));
- #
- Validator.SafeString=^[.\\p{Alnum}\\p{Space}]{0,1024}$
- Validator.Email=^[A-Za-z0-9._%'-]+@[A-Za-z0-9.-]+\\.[a-zA-Z]{2,4}$
- Validator.IPAddress=^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
- Validator.URL=^(ht|f)tp(s?)\\:\\/\\/[0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*(:(0-9)*)*(\\/?)([a-zA-Z0-9\\-\\.\\?\\,\\:\\'\\/\\\\\\+=&;%\\$#_]*)?$
- Validator.CreditCard=^(\\d{4}[- ]?){3}\\d{4}$
- Validator.SSN=^(?!000)([0-6]\\d{2}|7([0-6]\\d|7[012]))([ -]?)(?!00)\\d\\d\\3(?!0000)\\d{4}$
- handlers= java.util.logging.ConsoleHandler.level= INFO
- java.util.logging.ConsoleHandler.level = INFO
- java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
- java.util.logging.SimpleFormatter.format=[%1$tF %1$tT] [%3$-7s] %5$s %n
- public static void main(String[] args) {
- System.out.println("======="+ESAPI.encoder().encodeForHTML("<a href='sdfs'></a> < script > alert(); </ script >"));
- }
OWASP Enterprise Security API (ESAPI) | OWASP Foundation
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。