import java.util.regex.Pattern;
public class Main {
private static Pattern xssAttackPattern;
private static final String XSS_ATTACK_REGULAR_EXPRESSION1
= "[A-Za-z0-9,\\(\\)\\[\\]\\{\\}\"\\:./_\\s]*-?[A-Za-z0-9,\\(\\)\\[\\]\\{\\}\"\\:./_\\s]*";
public static Pattern getXSSAttackPattern1() {
xssAttackPattern = Pattern.compile(XSS_ATTACK_REGULAR_EXPRESSION1);
return xssAttackPattern;
}
public static boolean hasXSSAttackOrSQLInjection1
(String value
) {
if (getXSSAttackPattern1().matcher(value).matches()) {
return true;
}
return false;
}
public static void main
(String arg
[]) {
System.
out.
println(" :::::: Regular Expression ::::::"); regexTest();
}
private static void regexTest() {
String str1
= "-dsfdsfddsfd2112212s"; String str2
= "--dsfdsfddsfd2112212s"; String str3
= "-dsfdsfdd-sfd2112212s"; String str4
="http://r...content-available-to-author-only...n.com/rss/edition_business.rss?id=121132511$@#$@$@#%242444+gfghgfhg";
System.
out.
println("String::" + str1
+ "::Result::" + hasXSSAttackOrSQLInjection1(str1));
System.
out.
println("String::" + str2
+ "::Result::" + hasXSSAttackOrSQLInjection1(str2));
System.
out.
println("String::" + str3
+ "::Result::" + hasXSSAttackOrSQLInjection1(str3));
System.
out.
println("String::" + str4
+ "::Result::" + hasXSSAttackOrSQLInjection1(str4));
System.
out.
println("String::" + str5
+ "::Result::" + hasXSSAttackOrSQLInjection1(str5));
System.
out.
println("String::" + str6
+ "::Result::" + hasXSSAttackOrSQLInjection1(str6));
System.
out.
println("String::" + str7
+ "::Result::" + hasXSSAttackOrSQLInjection1(str7));
}
}
aW1wb3J0IGphdmEudXRpbC5yZWdleC5QYXR0ZXJuOwoKCnB1YmxpYyBjbGFzcyBNYWluIHsKCnByaXZhdGUgc3RhdGljIFBhdHRlcm4geHNzQXR0YWNrUGF0dGVybjsKCnByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZyBYU1NfQVRUQUNLX1JFR1VMQVJfRVhQUkVTU0lPTjEgPSAiW0EtWmEtejAtOSxcXChcXClcXFtcXF1cXHtcXH1cIlxcOi4vX1xcc10qLT9bQS1aYS16MC05LFxcKFxcKVxcW1xcXVxce1xcfVwiXFw6Li9fXFxzXSoiOwoKCnB1YmxpYyBzdGF0aWMgUGF0dGVybiBnZXRYU1NBdHRhY2tQYXR0ZXJuMSgpIHsKICAgIHhzc0F0dGFja1BhdHRlcm4gPSBQYXR0ZXJuLmNvbXBpbGUoWFNTX0FUVEFDS19SRUdVTEFSX0VYUFJFU1NJT04xKTsKICAgIHJldHVybiB4c3NBdHRhY2tQYXR0ZXJuOwp9CgpwdWJsaWMgc3RhdGljIGJvb2xlYW4gaGFzWFNTQXR0YWNrT3JTUUxJbmplY3Rpb24xKFN0cmluZyB2YWx1ZSkgewoKICAgIGlmIChnZXRYU1NBdHRhY2tQYXR0ZXJuMSgpLm1hdGNoZXIodmFsdWUpLm1hdGNoZXMoKSkgewogICAgICAgIHJldHVybiB0cnVlOwogICAgfQogICAgcmV0dXJuIGZhbHNlOwp9CgoKCnB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBhcmdbXSkgewoKICAgIFN5c3RlbS5vdXQucHJpbnRsbigiIDo6Ojo6OiBSZWd1bGFyIEV4cHJlc3Npb24gOjo6Ojo6Iik7CiAgICByZWdleFRlc3QoKTsKCn0KCnByaXZhdGUgc3RhdGljIHZvaWQgcmVnZXhUZXN0KCkgewoKICAgIFN0cmluZyBzdHIxID0gIi1kc2Zkc2ZkZHNmZDIxMTIyMTJzIjsKICAgIFN0cmluZyBzdHIyID0gIi0tZHNmZHNmZGRzZmQyMTEyMjEycyI7CiAgICBTdHJpbmcgc3RyMyA9ICItZHNmZHNmZGQtc2ZkMjExMjIxMnMiOwogICAgU3RyaW5nIHN0cjQ9Imh0dHA6Ly9yLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5uLmNvbS9yc3MvZWRpdGlvbl9idXNpbmVzcy5yc3M/aWQ9MTIxMTMyNTExJEAjJEAkQCMlMjQyNDQ0K2dmZ2hnZmhnIjsKICAgIFN0cmluZyBzdHI1PSIoLjpbXXt9IjsKICAgIFN0cmluZyBzdHI2PSItLSI7CiAgICBTdHJpbmcgc3RyNz0iLSI7CgogICAgU3lzdGVtLm91dC5wcmludGxuKCJTdHJpbmc6OiIgKyBzdHIxICsgIjo6UmVzdWx0OjoiCiAgICAgICAgICAgICsgaGFzWFNTQXR0YWNrT3JTUUxJbmplY3Rpb24xKHN0cjEpKTsKICAgIFN5c3RlbS5vdXQucHJpbnRsbigiU3RyaW5nOjoiICsgc3RyMiArICI6OlJlc3VsdDo6IgogICAgICAgICAgICArIGhhc1hTU0F0dGFja09yU1FMSW5qZWN0aW9uMShzdHIyKSk7CiAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlN0cmluZzo6IiArIHN0cjMgKyAiOjpSZXN1bHQ6OiIKICAgICAgICAgICAgKyBoYXNYU1NBdHRhY2tPclNRTEluamVjdGlvbjEoc3RyMykpOwogICAgU3lzdGVtLm91dC5wcmludGxuKCJTdHJpbmc6OiIgKyBzdHI0ICsgIjo6UmVzdWx0OjoiCiAgICAgICAgICAgICsgaGFzWFNTQXR0YWNrT3JTUUxJbmplY3Rpb24xKHN0cjQpKTsKICAgIFN5c3RlbS5vdXQucHJpbnRsbigiU3RyaW5nOjoiICsgc3RyNSArICI6OlJlc3VsdDo6IgogICAgICAgICAgICArIGhhc1hTU0F0dGFja09yU1FMSW5qZWN0aW9uMShzdHI1KSk7CiAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlN0cmluZzo6IiArIHN0cjYgKyAiOjpSZXN1bHQ6OiIKICAgICAgICAgICAgKyBoYXNYU1NBdHRhY2tPclNRTEluamVjdGlvbjEoc3RyNikpOwogICAgU3lzdGVtLm91dC5wcmludGxuKCJTdHJpbmc6OiIgKyBzdHI3ICsgIjo6UmVzdWx0OjoiCiAgICAgICAgICAgICsgaGFzWFNTQXR0YWNrT3JTUUxJbmplY3Rpb24xKHN0cjcpKTsKfQp9