ZAP Scanning Report

Summary of Alerts

Risk LevelNumber of Alerts
High1
Medium4
Low10
Informational4

Alert Detail

High (Medium)Remote OS Command Injection
Description

Attack technique used for unauthorized execution of operating system commands. This attack is possible when an application accepts untrusted input to build operating system commands in an insecure manner involving improper data sanitization, and/or improper calling of external programs.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/duallistbox/?C=D%3BO%3DD%3Bsleep+15%3B
MethodGET
ParameterC
AttackD;O=D;sleep 15;
Instances1
Solution

If at all possible, use library calls rather than external processes to recreate the desired functionality.

Run your code in a "jail" or similar sandbox environment that enforces strict boundaries between the process and the operating system. This may effectively restrict which files can be accessed in a particular directory or which commands can be executed by your software.

OS-level examples include the Unix chroot jail, AppArmor, and SELinux. In general, managed code may provide some protection. For example, java.io.FilePermission in the Java SecurityManager allows you to specify restrictions on file operations.

This may not be a feasible solution, and it only limits the impact to the operating system; the rest of your application may still be subject to compromise.

For any data that will be used to generate a command to be executed, keep as much of that data out of external control as possible. For example, in web applications, this may require storing the command locally in the session's state instead of sending it out to the client in a hidden form field.

Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.

For example, consider using the ESAPI Encoding control or a similar tool, library, or framework. These will help the programmer encode outputs in a manner less prone to error.

If you need to use dynamically-generated query strings or commands in spite of the risk, properly quote arguments and escape any special characters within those arguments. The most conservative approach is to escape or filter all characters that do not pass an extremely strict whitelist (such as everything that is not alphanumeric or white space). If some special characters are still needed, such as white space, wrap each argument in quotes after the escaping/filtering step. Be careful of argument injection.

If the program to be executed allows arguments to be specified within an input file or from standard input, then consider using that mode to pass arguments instead of the command line.

If available, use structured mechanisms that automatically enforce the separation between data and code. These mechanisms may be able to provide the relevant quoting, encoding, and validation automatically, instead of relying on the developer to provide this capability at every point where output is generated.

Some languages offer multiple functions that can be used to invoke commands. Where possible, identify any function that invokes a command shell using a single string, and replace it with a function that requires individual arguments. These functions typically perform appropriate quoting and filtering of arguments. For example, in C, the system() function accepts a string that contains the entire command to be executed, whereas execl(), execve(), and others require an array of strings, one for each argument. In Windows, CreateProcess() only accepts one command at a time. In Perl, if system() is provided with an array of arguments, then it will quote each of the arguments.

Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a whitelist of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does. Do not rely exclusively on looking for malicious or malformed inputs (i.e., do not rely on a blacklist). However, blacklists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.

When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, "boat" may be syntactically valid because it only contains alphanumeric characters, but it is not valid if you are expecting colors such as "red" or "blue."

When constructing OS command strings, use stringent whitelists that limit the character set based on the expected value of the parameter in the request. This will indirectly limit the scope of an attack, but this technique is less important than proper output encoding and escaping.

Note that proper output encoding, escaping, and quoting is the most effective solution for preventing OS command injection, although input validation may provide some defense-in-depth. This is because it effectively limits what will appear in output. Input validation will not always prevent OS command injection, especially if you are required to support free-form text fields that could contain arbitrary characters. For example, when invoking a mail program, you might need to allow the subject field to contain otherwise-dangerous inputs like ";" and ">" characters, which would need to be escaped or otherwise handled. In this case, stripping the character might reduce the risk of OS command injection, but it would produce incorrect behavior because the subject field would not be recorded as the user intended. This might seem to be a minor inconvenience, but it could be more important when the program relies on well-structured subject lines in order to pass messages to other components.

Even if you make a mistake in your validation (such as forgetting one out of 100 input fields), appropriate encoding is still likely to protect you from injection-based attacks. As long as it is not done in isolation, input validation is still a useful technique, since it may significantly reduce your attack surface, allow you to detect some attacks, and provide other security benefits that proper encoding does not address.

Reference

http://cwe.mitre.org/data/definitions/78.html

https://www.owasp.org/index.php/Command_Injection

CWE Id78
WASC Id31
Source ID1
Medium (Medium)X-Frame-Options Header Not Set
Description

X-Frame-Options header is not included in the HTTP response to protect against 'ClickJacking' attacks.

URLhttp://space-dev.sbm.itb.ac.id
MethodGET
ParameterX-Frame-Options
Instances1
Solution

Most modern Web browsers support the X-Frame-Options HTTP header. Ensure it's set on all web pages returned by your site (if you expect the page to be framed only by pages on your server (e.g. it's part of a FRAMESET) then you'll want to use SAMEORIGIN, otherwise if you never expect the page to be framed, you should use DENY. ALLOW-FROM allows specific websites to frame the web page in supported web browsers).

Reference

http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx

CWE Id16
WASC Id15
Source ID3
Medium (Medium)X-Frame-Options Header Not Set
Description

X-Frame-Options header is not included in the HTTP response to protect against 'ClickJacking' attacks.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/easypiechart/?C=S;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/knob/?C=N;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/uiTree/?C=M;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/easypiechart/?C=S;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/angular/?C=S;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/nouslider/?C=N;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sieve/index.html
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/css/?C=N;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/touchspin/
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/footable/fonts/?C=M;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/switchery/
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/controller/program/?C=M;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/?C=N;O=D
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/footable/fonts/?C=M;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/validate/
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/angular-translate/
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/patterns/?C=M;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nouslider/
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/css/?C=N;O=A
MethodGET
ParameterX-Frame-Options
URLhttps://space-dev.sbm.itb.ac.id/js/controller/program/?C=M;O=D
MethodGET
ParameterX-Frame-Options
Instances2033
Solution

Most modern Web browsers support the X-Frame-Options HTTP header. Ensure it's set on all web pages returned by your site (if you expect the page to be framed only by pages on your server (e.g. it's part of a FRAMESET) then you'll want to use SAMEORIGIN, otherwise if you never expect the page to be framed, you should use DENY. ALLOW-FROM allows specific websites to frame the web page in supported web browsers).

Reference

http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx

CWE Id16
WASC Id15
Source ID3
Medium (Medium)Application Error Disclosure
Description

This page contains an error/warning message that may disclose sensitive information like the location of the file that produced the unhandled exception. This information can be used to launch further attacks against the web application. The alert could be a false positive if the error message is found inside a documentation page.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/sparkline/?C=M;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/bootstrap/?C=D;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/blueimp/img/
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/staps/?C=S;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/fixedcolumns/?C=M;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/controller/facilities/?C=N;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/diff_match_patch/?C=M;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/?C=M;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/angular-idle/?C=S;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/staps/?C=S;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/angular-diff-match-patch/
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/clipboard/?C=S;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/sparkline/?C=M;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/touchspin/?C=D;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-rtl/?C=D;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/test/?C=N;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/clipboard/?C=S;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/?C=D;O=D
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/jszip/?C=N;O=A
MethodGET
EvidenceParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/fixedcolumns/?C=M;O=D
MethodGET
EvidenceParent Directory
Instances1848
Solution

Review the source code of this page. Implement custom error pages. Consider implementing a mechanism to provide a unique error reference/identifier to the client (browser) while logging the details on the server side and not exposing them to the user.

Reference

CWE Id200
WASC Id13
Source ID3
Medium (Medium)Directory Browsing
Description

It is possible to view the directory listing. Directory listing may reveal hidden scripts, include files, backup source files, etc. which can be accessed to read sensitive information.

URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-tour/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/ngImgCrop/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/jszip/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/src/directives/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/bootstrap-markdown/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/jquery-scroll/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/social-buttons/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/slick/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/fullcalendar/lang/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/ionRangeSlider/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/columnfilter/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/lib/bootstrap/img/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/scroller/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-markdown/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/staps/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/ui-codemirror/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/peity/
MethodGET
AttackParent Directory
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/buttons/
MethodGET
AttackParent Directory
Instances211
Solution

Disable directory browsing. If this is required, make sure the listed files does not induce risks.

Reference

http://httpd.apache.org/docs/mod/core.html#options

http://alamo.satlug.org/pipermail/satlug/2002-February/000053.html

CWE Id548
WASC Id48
Source ID1
Low (Medium)Cross-Domain JavaScript Source File Inclusion
Description

The page includes one or more script files from a third-party domain.

URLhttp://space-dev.sbm.itb.ac.id
MethodGET
Parameter//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js
Evidence<script src="//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js"></script>
URLhttp://space-dev.sbm.itb.ac.id
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
Instances2
Solution

Ensure JavaScript source files are loaded from only trusted sources, and the sources can't be controlled by end users of the application.

Reference

CWE Id829
WASC Id15
Source ID3
Low (Medium)X-Content-Type-Options Header Missing
Description

The Anti-MIME-Sniffing header X-Content-Type-Options was not set to 'nosniff'. This allows older versions of Internet Explorer and Chrome to perform MIME-sniffing on the response body, potentially causing the response body to be interpreted and displayed as a content type other than the declared content type. Current (early 2014) and legacy versions of Firefox will use the declared content type (if one is set), rather than performing MIME-sniffing.

URLhttp://space-dev.sbm.itb.ac.id
MethodGET
ParameterX-Content-Type-Options
Instances1
Solution

Ensure that the application/web server sets the Content-Type header appropriately, and that it sets the X-Content-Type-Options header to 'nosniff' for all web pages.

If possible, ensure that the end user uses a standards-compliant and modern web browser that does not perform MIME-sniffing at all, or that can be directed by the web application/web server to not perform MIME-sniffing.

Other information

This issue still applies to error type pages (401, 403, 500, etc.) as those pages are often still affected by injection issues, in which case there is still concern for browsers sniffing pages away from their actual content type.

At "High" threshold this scanner will not alert on client or server error responses.

Reference

http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx

https://www.owasp.org/index.php/List_of_useful_HTTP_headers

CWE Id16
WASC Id15
Source ID3
Low (Medium)Web Browser XSS Protection Not Enabled
Description

Web Browser XSS Protection is not enabled, or is disabled by the configuration of the 'X-XSS-Protection' HTTP response header on the web server

URLhttp://space-dev.sbm.itb.ac.id
MethodGET
ParameterX-XSS-Protection
Instances1
Solution

Ensure that the web browser's XSS filter is enabled, by setting the X-XSS-Protection HTTP response header to '1'.

Other information

The X-XSS-Protection HTTP response header allows the web server to enable or disable the web browser's XSS protection mechanism. The following values would attempt to enable it:

X-XSS-Protection: 1; mode=block

X-XSS-Protection: 1; report=http://www.example.com/xss

The following values would disable it:

X-XSS-Protection: 0

The X-XSS-Protection HTTP response header is currently supported on Internet Explorer, Chrome and Safari (WebKit).

Note that this alert is only raised if the response body could potentially contain an XSS payload (with a text-based content type, with a non-zero length).

Reference

https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet

https://www.veracode.com/blog/2014/03/guidelines-for-setting-security-headers/

CWE Id933
WASC Id14
Source ID3
Low (Medium)X-Content-Type-Options Header Missing
Description

The Anti-MIME-Sniffing header X-Content-Type-Options was not set to 'nosniff'. This allows older versions of Internet Explorer and Chrome to perform MIME-sniffing on the response body, potentially causing the response body to be interpreted and displayed as a content type other than the declared content type. Current (early 2014) and legacy versions of Firefox will use the declared content type (if one is set), rather than performing MIME-sniffing.

URLhttps://space-dev.sbm.itb.ac.id/js/angular/i18n/?C=S;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/src/templates/?C=D;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/uimaps/?C=S;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/staps/?C=M;O=A
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/sweetalert/sweetalert.min.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/clipboard/?C=M;O=A
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/angular-idle/?C=M;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/buttons/
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/staps/?C=M;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/angular/i18n/angular-locale_ca-fr.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/switchery/ng-switchery.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/angular-idle/?C=M;O=A
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/src/templates/?C=D;O=A
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/jquery/jquery-ui-1.10.4.min.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/dist/?C=S;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/controller/program/schedulingTermsCtrl2.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/controller/fsfq/?C=N;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/jquery-ui/i18n/jquery.ui.datepicker-ro.min.js
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/clipboard/?C=M;O=D
MethodGET
ParameterX-Content-Type-Options
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/dist/?C=S;O=A
MethodGET
ParameterX-Content-Type-Options
Instances4099
Solution

Ensure that the application/web server sets the Content-Type header appropriately, and that it sets the X-Content-Type-Options header to 'nosniff' for all web pages.

If possible, ensure that the end user uses a standards-compliant and modern web browser that does not perform MIME-sniffing at all, or that can be directed by the web application/web server to not perform MIME-sniffing.

Other information

This issue still applies to error type pages (401, 403, 500, etc.) as those pages are often still affected by injection issues, in which case there is still concern for browsers sniffing pages away from their actual content type.

At "High" threshold this scanner will not alert on client or server error responses.

Reference

http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx

https://www.owasp.org/index.php/List_of_useful_HTTP_headers

CWE Id16
WASC Id15
Source ID3
Low (Medium)Web Browser XSS Protection Not Enabled
Description

Web Browser XSS Protection is not enabled, or is disabled by the configuration of the 'X-XSS-Protection' HTTP response header on the web server

URLhttps://space-dev.sbm.itb.ac.id/js/controller/review/?C=S;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/controller/dupak/?C=M;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/haxe/index.html
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/rst/index.html
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/ladda/
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sql/index.html?mime=text/x-mariadb
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/examples/complexExample/bower_components/angular-ui-router/release/angular-ui-router.js
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/css/?C=N;O=A
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/css/patterns/?C=M;O=A
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/flot/?C=D;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/controller/newAol/?C=D;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/controller/dupak/?C=M;O=A
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/uimaps/?C=N;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/angular/i18n/?C=N;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/controller/newAol/?C=D;O=A
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/controller/rfidLog/?C=D;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/?C=N;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/validate/?C=M;O=D
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/ngImgCrop/?C=D;O=A
MethodGET
ParameterX-XSS-Protection
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/easypiechart/?C=S;O=A
MethodGET
ParameterX-XSS-Protection
Instances2091
Solution

Ensure that the web browser's XSS filter is enabled, by setting the X-XSS-Protection HTTP response header to '1'.

Other information

The X-XSS-Protection HTTP response header allows the web server to enable or disable the web browser's XSS protection mechanism. The following values would attempt to enable it:

X-XSS-Protection: 1; mode=block

X-XSS-Protection: 1; report=http://www.example.com/xss

The following values would disable it:

X-XSS-Protection: 0

The X-XSS-Protection HTTP response header is currently supported on Internet Explorer, Chrome and Safari (WebKit).

Note that this alert is only raised if the response body could potentially contain an XSS payload (with a text-based content type, with a non-zero length).

Reference

https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet

https://www.veracode.com/blog/2014/03/guidelines-for-setting-security-headers/

CWE Id933
WASC Id14
Source ID3
Low (Medium)Incomplete or No Cache-control and Pragma HTTP Header Set
Description

The cache-control and pragma HTTP header have not been set properly or are missing allowing the browser and proxies to cache content.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/component.json
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/chartJs/?C=M;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/colvis/?C=S;O=D
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-tour/?C=M;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/tabletools/?C=M;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/summernote/
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/summernote/?C=N;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/controller/courses/?C=D;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-tour/?C=M;O=D
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/toml/index.html
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/chartist/
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-rtl/bootstrap-rtl.css
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/lib/bootstrap/css/?C=D;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/plugins/colvis/?C=S;O=A
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/codemirror/?C=S;O=D
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/vbscript/index.html
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/custom-bg0.css
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/js/controller/dupak/
MethodGET
ParameterCache-Control
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/dropzone/?C=N;O=D
MethodGET
ParameterCache-Control
Instances2168
Solution

Whenever possible ensure the cache-control HTTP header is set with no-cache, no-store, must-revalidate; and that the pragma HTTP header is set with no-cache.

Reference

https://www.owasp.org/index.php/Session_Management_Cheat_Sheet#Web_Content_Caching

CWE Id525
WASC Id13
Source ID3
Low (Medium)Absence of Anti-CSRF Tokens
Description

No Anti-CSRF tokens were found in a HTML submission form.

A cross-site request forgery is an attack that involves forcing a victim to send an HTTP request to a target destination without their knowledge or intent in order to perform an action as the victim. The underlying cause is application functionality using predictable URL/form actions in a repeatable way. The nature of the attack is that CSRF exploits the trust that a web site has for a user. By contrast, cross-site scripting (XSS) exploits the trust that a user has for a web site. Like XSS, CSRF attacks are not necessarily cross-site, but they can be. Cross-site request forgery is also known as CSRF, XSRF, one-click attack, session riding, confused deputy, and sea surf.

CSRF attacks are effective in a number of situations, including:

* The victim has an active session on the target site.

* The victim is authenticated via HTTP auth on the target site.

* The victim is on the same local network as the target site.

CSRF has primarily been used to perform an action against a target site using the victim's privileges, but recent techniques have been discovered to disclose information by gaining access to the response. The risk of information disclosure is dramatically increased when the target site is vulnerable to XSS, because XSS can be used as a platform for CSRF, allowing the attack to operate within the bounds of the same-origin policy.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/gas/index.html?code=%0A.syntax+unified%0A.global+main%0A%0A%2F*+%0A+*++A%0A+*++multi-line%0A+*++comment.%0A+*%2F%0A%0A%40+A+single+line+comment.%0A%0Amain%3A%0A++++++++push++++%7Bsp%2C+lr%7D%0A++++++++ldr+++++r0%2C+%3Dmessage%0A++++++++bl++++++puts%0A++++++++mov+++++r0%2C+%230%0A++++++++pop+++++%7Bsp%2C+pc%7D%0A%0Amessage%3A%0A++++++++.asciz+%22Hello+world%21%3Cbr+%2F%3E%22%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/tcl/index.html
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular.js
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/tornado/index.html?code=%0A%3C%21doctype+html%3E%0A%3Chtml%3E%0A++++%3Chead%3E%0A++++++++%3Ctitle%3EMy+Tornado+web+application%3C%2Ftitle%3E%0A++++%3C%2Fhead%3E%0A++++%3Cbody%3E%0A++++++++%3Ch1%3E%0A++++++++++++%7B%7B+title+%7D%7D%0A++++++++%3C%2Fh1%3E%0A++++++++%3Cul+class%3D%22my-list%22%3E%0A++++++++++++%7B%25+for+item+in+items+%25%7D%0A++++++++++++++++%3Cli%3E%7B%25+item.name+%25%7D%3C%2Fli%3E%0A++++++++++++%7B%25+empty+%25%7D%0A++++++++++++++++%3Cli%3EYou+have+no+items+in+your+list.%3C%2Fli%3E%0A++++++++++++%7B%25+end+%25%7D%0A++++++++%3C%2Ful%3E%0A++++%3C%2Fbody%3E%0A%3C%2Fhtml%3E%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sql/index.html?code=--+SQL+Mode+for+CodeMirror%0ASELECT+SQL_NO_CACHE+DISTINCT%0A%09%09%40var1+AS+%60val1%60%2C+%40%27val2%27%2C+%40global.%27sql_mode%27%2C%0A%09%091.1+AS+%60float_val%60%2C+.14+AS+%60another_float%60%2C+0.09e3+AS+%60int_with_esp%60%2C%0A%09%090xFA5+AS+%60hex%60%2C+x%27fa5%27+AS+%60hex2%60%2C+0b101+AS+%60bin%60%2C+b%27101%27+AS+%60bin2%60%2C%0A%09%09DATE+%271994-01-01%27+AS+%60sql_date%60%2C+%7B+T+%221994-01-01%22+%7D+AS+%60odbc_date%60%2C%0A%09%09%27my+string%27%2C+_utf8%27your+string%27%2C+N%27her+string%27%2C%0A++++++++TRUE%2C+FALSE%2C+UNKNOWN%0A%09FROM+DUAL%0A%09--+space+needed+after+%27--%27%0A%09%23+1+line+comment%0A%09%2F*+multiline%0A%09comment%21+*%2F%0A%09LIMIT+1+OFFSET+0%3B%0A&mime=text/x-mariadb
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/cypher/index.html?mime=application/x-cypher-query
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/test/lib/angular/angular-scenario.js
MethodGET
Evidence<form name="myForm" ng-controller="Ctrl">
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/htmlmixed/index.html?code=%0A%3Chtml+style%3D%22color%3A+green%22%3E%0A++%3C%21--+this+is+a+comment+--%3E%0A++%3Chead%3E%0A++++%3Ctitle%3EMixed+HTML+Example%3C%2Ftitle%3E%0A++++%3Cstyle+type%3D%22text%2Fcss%22%3E%0A++++++h1+%7Bfont-family%3A+comic+sans%3B+color%3A+%23f0f%3B%7D%0A++++++div+%7Bbackground%3A+yellow+%21important%3B%7D%0A++++++body+%7B%0A++++++++max-width%3A+50em%3B%0A++++++++margin%3A+1em+2em+1em+5em%3B%0A++++++%7D%0A++++%3C%2Fstyle%3E%0A++%3C%2Fhead%3E%0A++%3Cbody%3E%0A++++%3Ch1%3EMixed+HTML+Example%3C%2Fh1%3E%0A++++%3Cscript%3E%0A++++++function+jsFunc%28arg1%2C+arg2%29+%7B%0A++++++++if+%28arg1+%26%26+arg2%29+document.body.innerHTML+%3D+%22achoo%22%3B%0A++++++%7D%0A++++%3C%2Fscript%3E%0A++%3C%2Fbody%3E%0A%3C%2Fhtml%3E%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/lib/angular.js
MethodGET
Evidence<form ng-submit="submit()" ng-controller="Ctrl">
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular.js
MethodGET
Evidence<form name="testForm" ng-controller="ExampleController">
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/test/lib/angular/angular-scenario.js
MethodGET
Evidence<form ng-submit="submit()" ng-controller="Ctrl">
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/haskell/index.html
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular.js
MethodGET
Evidence<form name="userForm">
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sql/index.html?mime=text/x-mysql
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/jinja2/index.html?code=%0A%7B%23+this+is+a+comment+%23%7D%0A%7B%25-+for+item+in+li+-%25%7D%0A++%3Cli%3E%7B%7B+item.label+%7D%7D%3C%2Fli%3E%0A%7B%25+endfor+-%25%7D%0A%7B%7B+item.sand+%3D%3D+true+and+item.keyword+%3D%3D+false+%3F+1+%3A+0+%7D%7D%0A%7B%7B+app.get%2855%2C+1.2%2C+true%29+%7D%7D%0A%7B%25+if+app.get%28%27_route%27%29+%3D%3D+%28%27_home%27%29+%25%7Dhome%7B%25+endif+%25%7D%0A%7B%25+if+app.session.flashbag.has%28%27message%27%29+%25%7D%0A++%7B%25+for+message+in+app.session.flashbag.get%28%27message%27%29+%25%7D%0A++++%7B%7B+message.content+%7D%7D%0A++%7B%25+endfor+%25%7D%0A%7B%25+endif+%25%7D%0A%7B%7B+path%28%27_home%27%2C+%7B%27section%27%3A+app.request.get%28%27section%27%29%7D%29+%7D%7D%0A%7B%7B+path%28%27_home%27%2C+%7B%0A++++%27section%27%3A+app.request.get%28%27section%27%29%2C%0A++++%27boolean%27%3A+true%2C%0A++++%27number%27%3A+55.33%0A++%7D%29%0A%7D%7D%0A%7B%25+include+%28%27test.incl.html.twig%27%29+%25%7D%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/smarty/index.html?code=%0A%7Bextends+file%3D%22parent.tpl%22%7D%0A%7Binclude+file%3D%22template.tpl%22%7D%0A%0A%7B*+some+example+Smarty+content+*%7D%0A%7Bif+isset%28%24name%29+%26%26+%24name+%3D%3D+%27Blog%27%7D%0A++This+is+a+%7B%24var%7D.%0A++%7B%24integer+%3D+451%7D%2C+%7B%24array%5B%5D+%3D+%22a%22%7D%2C+%7B%24stringvar+%3D+%22string%22%7D%0A++%7Bassign+var%3D%27bob%27+value%3D%24var.prop%7D%0A%7Belseif+%24name+%3D%3D+%24foo%7D%0A++%7Bfunction+name%3Dmenu+level%3D0%7D%0A++++%7Bforeach+%24data+as+%24entry%7D%0A++++++%7Bif+is_array%28%24entry%29%7D%0A++++++++-+%7B%24entry%40key%7D%0A++++++++%7Bmenu+data%3D%24entry+level%3D%24level%2B1%7D%0A++++++%7Belse%7D%0A++++++++%7B%24entry%7D%0A++++++%7B%2Fif%7D%0A++++%7B%2Fforeach%7D%0A++%7B%2Ffunction%7D%0A%7B%2Fif%7D
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/smalltalk/index.html?code=%0A%22+%0A++++This+is+a+test+of+the+Smalltalk+code%0A%22%0ASeaside.WAComponent+subclass%3A+%23MyCounter+%5B%0A++++%7C+count+%7C%0A++++MyCounter+class+%3E%3E+canBeRoot+%5B+%5Etrue+%5D%0A%0A++++initialize+%5B%0A++++++++super+initialize.%0A++++++++count+%3A%3D+0.%0A++++%5D%0A++++states+%5B+%5E%7B+self+%7D+%5D%0A++++renderContentOn%3A+html+%5B%0A++++++++html+heading%3A+count.%0A++++++++html+anchor+callback%3A+%5B+count+%3A%3D+count+%2B+1+%5D%3B+with%3A+%27%2B%2B%27.%0A++++++++html+space.%0A++++++++html+anchor+callback%3A+%5B+count+%3A%3D+count+-+1+%5D%3B+with%3A+%27--%27.%0A++++%5D%0A%5D%0A%0AMyCounter+registerAsApplication%3A+%27mycounter%27%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular-scenario.js
MethodGET
Evidence<form ng-submit="submit()" ng-controller="ExampleController">
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/xml/index.html?code=%0A%3Chtml+style%3D%22color%3A+green%22%3E%0A++%3C%21--+this+is+a+comment+--%3E%0A++%3Chead%3E%0A++++%3Ctitle%3EHTML+Example%3C%2Ftitle%3E%0A++%3C%2Fhead%3E%0A++%3Cbody%3E%0A++++The+indentation+tries+to+be+%3Cem%3Esomewhat+%26quot%3Bdo+what%0A++++I+mean%26quot%3B%3C%2Fem%3E...+but+might+not+match+your+style.%0A++%3C%2Fbody%3E%0A%3C%2Fhtml%3E%0A
MethodGET
Evidence<form>
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular-scenario.js
MethodGET
Evidence<form ng-controller="ExampleController">
Instances236
Solution

Phase: Architecture and Design

Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.

For example, use anti-CSRF packages such as the OWASP CSRFGuard.

Phase: Implementation

Ensure that your application is free of cross-site scripting issues, because most CSRF defenses can be bypassed using attacker-controlled script.

Phase: Architecture and Design

Generate a unique nonce for each form, place the nonce into the form, and verify the nonce upon receipt of the form. Be sure that the nonce is not predictable (CWE-330).

Note that this can be bypassed using XSS.

Identify especially dangerous operations. When the user performs a dangerous operation, send a separate confirmation request to ensure that the user intended to perform that operation.

Note that this can be bypassed using XSS.

Use the ESAPI Session Management control.

This control includes a component for CSRF.

Do not use the GET method for any request that triggers a state change.

Phase: Implementation

Check the HTTP Referer header to see if the request originated from an expected page. This could break legitimate functionality, because users or proxies may have disabled sending the Referer for privacy reasons.

Other information

No known Anti-CSRF token [anticsrf, CSRFToken, __RequestVerificationToken, csrfmiddlewaretoken, authenticity_token, OWASP_CSRFTOKEN, anoncsrf, csrf_token, _csrf, _csrfSecret] was found in the following HTML form: [Form 1: ].

Reference

http://projects.webappsec.org/Cross-Site-Request-Forgery

http://cwe.mitre.org/data/definitions/352.html

CWE Id352
WASC Id9
Source ID3
Low (Medium)Cross-Domain JavaScript Source File Inclusion
Description

The page includes one or more script files from a third-party domain.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html
MethodGET
Parameterhttps://code.jquery.com/ui/1.11.0/jquery-ui.min.js
Evidence<script src="https://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/
MethodGET
Parameter//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js
Evidence<script src="//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html?code=%0Abody%0A++table%0A++++-+for+user+in+users%0A++++++td+id%3D%22user_%23%7Buser.id%7D%22+class%3Duser.role%0A++++++++a+href%3Duser_action%28user%2C+%3Aedit%29+Edit+%23%7Buser.name%7D%0A++++++++a+href%3D%28path_to_user+user%29+%3D+user.name%0Abody%0A++h1%28id%3D%22logo%22%29+%3D+page_logo%0A++h2%5Bid%3D%22tagline%22+class%3D%22small+tagline%22%5D+%3D+page_tagline%0A%0Ah2%5Bid%3D%22tagline%22%0A+++class%3D%22small+tagline%22%5D+%3D+page_tagline%0A%0Ah1+id+%3D+%22logo%22+%3D+page_logo%0Ah2+%5B+id+%3D+%22tagline%22+%5D+%3D+page_tagline%0A%0A%2F+comment%0A++second+line%0A%2F%21+html+comment%0A+++second+line%0A%3C%21--+html+comment+--%3E%0A%3Ca+href%3D%22%23%7B%27hello%27+if+set%7D%22%3Elink%3C%2Fa%3E%0Aa.slim+href%3D%22work%22+disabled%3Dfalse+running%3D%3D%3Aatom+Text+%3Cb%3Ebold%3C%2Fb%3E%0A.clazz+data-id%3D%22test%22+%3D%3D+%27hello%27+unless+quark%0A+%7C+Text+mode+%23%7B12%7D%0A+++Second+line%0A%3D+x+%7C%7C%3D+%3Aruby_atom%0A%23menu.left%0A++-+%40env.each+do+%7Cx%7C%0A++++li%3A+a+%3D+x%0A*%40dyntag+attr%3D%22val%22%0A.first+*%7B%3Aclass+%3D%3E+%5B%3Asecond%2C+%3Athird%5D%7D+Text%0A.second+class%3D%5B%22text%22%2C%22more%22%5D%0A.third+class%3D%3Atext%2C%3Asymbol%0A%0A++
MethodGET
Parameterhttps://code.jquery.com/jquery-1.11.1.min.js
Evidence<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id
MethodGET
Parameter//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js
Evidence<script src="//unpkg.com/angular-ui-router@0.4.2/release/angular-ui-router.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/examples/complexExample/
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js
Evidence<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/examples/simpleExample/
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angularjs/1.3.7/angular.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.7/angular.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html?code=%250Abody%250A++table%250A++++-+for+user+in+users%250A++++++td+id%253D%2522user_%2523%257Buser.id%257D%2522+class%253Duser.role%250A++++++++a+href%253Duser_action%2528user%252C+%253Aedit%2529+Edit+%2523%257Buser.name%257D%250A++++++++a+href%253D%2528path_to_user+user%2529+%253D+user.name%250Abody%250A++h1%2528id%253D%2522logo%2522%2529+%253D+page_logo%250A++h2%255Bid%253D%2522tagline%2522+class%253D%2522small+tagline%2522%255D+%253D+page_tagline%250A%250Ah2%255Bid%253D%2522tagline%2522%250A+++class%253D%2522small+tagline%2522%255D+%253D+page_tagline%250A%250Ah1+id+%253D+%2522logo%2522+%253D+page_logo%250Ah2+%255B+id+%253D+%2522tagline%2522+%255D+%253D+page_tagline%250A%250A%252F+comment%250A++second+line%250A%252F%2521+html+comment%250A+++second+line%250A%253C%2521--+html+comment+--%253E%250A%253Ca+href%253D%2522%2523%257B%2527hello%2527+if+set%257D%2522%253Elink%253C%252Fa%253E%250Aa.slim+href%253D%2522work%2522+disabled%253Dfalse+running%253D%253D%253Aatom+Text+%253Cb%253Ebold%253C%252Fb%253E%250A.clazz+data-id%253D%2522test%2522+%253D%253D+%2527hello%2527+unless+quark%250A+%257C+Text+mode+%2523%257B12%257D%250A+++Second+line%250A%253D+x+%257C%257C%253D+%253Aruby_atom%250A%2523menu.left%250A++-+%2540env.each+do+%257Cx%257C%250A++++li%253A+a+%253D+x%250A*%2540dyntag+attr%253D%2522val%2522%250A.first+*%257B%253Aclass+%253D%253E+%255B%253Asecond%252C+%253Athird%255D%257D+Text%250A.second+class%253D%255B%2522text%2522%252C%2522more%2522%255D%250A.third+class%253D%253Atext%252C%253Asymbol%250A%250A++%23%7B'hello'%20if%20set%7D
MethodGET
Parameterhttps://code.jquery.com/ui/1.11.0/jquery-ui.min.js
Evidence<script src="https://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/plugins/playground.html
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/examples/simpleExample/
MethodGET
Parameterhttps://code.jquery.com/jquery-1.11.2.js
Evidence<script src="https://code.jquery.com/jquery-1.11.2.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html
MethodGET
Parameterhttps://code.jquery.com/jquery-1.11.1.min.js
Evidence<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/chosen/index.proto.html
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/prototype/1.7.0.0/prototype.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/prototype/1.7.0.0/prototype.js" type="text/javascript"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/oclazyload/examples/complexExample/
MethodGET
Parameter//code.jquery.com/jquery-1.11.1.min.js
Evidence<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/chosen/
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html?code=%250Abody%250A++table%250A++++-+for+user+in+users%250A++++++td+id%253D%2522user_%2523%257Buser.id%257D%2522+class%253Duser.role%250A++++++++a+href%253Duser_action%2528user%252C+%253Aedit%2529+Edit+%2523%257Buser.name%257D%250A++++++++a+href%253D%2528path_to_user+user%2529+%253D+user.name%250Abody%250A++h1%2528id%253D%2522logo%2522%2529+%253D+page_logo%250A++h2%255Bid%253D%2522tagline%2522+class%253D%2522small+tagline%2522%255D+%253D+page_tagline%250A%250Ah2%255Bid%253D%2522tagline%2522%250A+++class%253D%2522small+tagline%2522%255D+%253D+page_tagline%250A%250Ah1+id+%253D+%2522logo%2522+%253D+page_logo%250Ah2+%255B+id+%253D+%2522tagline%2522+%255D+%253D+page_tagline%250A%250A%252F+comment%250A++second+line%250A%252F%2521+html+comment%250A+++second+line%250A%253C%2521--+html+comment+--%253E%250A%253Ca+href%253D%2522%2523%257B%2527hello%2527+if+set%257D%2522%253Elink%253C%252Fa%253E%250Aa.slim+href%253D%2522work%2522+disabled%253Dfalse+running%253D%253D%253Aatom+Text+%253Cb%253Ebold%253C%252Fb%253E%250A.clazz+data-id%253D%2522test%2522+%253D%253D+%2527hello%2527+unless+quark%250A+%257C+Text+mode+%2523%257B12%257D%250A+++Second+line%250A%253D+x+%257C%257C%253D+%253Aruby_atom%250A%2523menu.left%250A++-+%2540env.each+do+%257Cx%257C%250A++++li%253A+a+%253D+x%250A*%2540dyntag+attr%253D%2522val%2522%250A.first+*%257B%253Aclass+%253D%253E+%255B%253Asecond%252C+%253Athird%255D%257D+Text%250A.second+class%253D%255B%2522text%2522%252C%2522more%2522%255D%250A.third+class%253D%253Atext%252C%253Asymbol%250A%250A++%23%7B'hello'%20if%20set%7D
MethodGET
Parameterhttps://code.jquery.com/jquery-1.11.1.min.js
Evidence<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/chosen/index.html
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/slim/index.html?code=%0Abody%0A++table%0A++++-+for+user+in+users%0A++++++td+id%3D%22user_%23%7Buser.id%7D%22+class%3Duser.role%0A++++++++a+href%3Duser_action%28user%2C+%3Aedit%29+Edit+%23%7Buser.name%7D%0A++++++++a+href%3D%28path_to_user+user%29+%3D+user.name%0Abody%0A++h1%28id%3D%22logo%22%29+%3D+page_logo%0A++h2%5Bid%3D%22tagline%22+class%3D%22small+tagline%22%5D+%3D+page_tagline%0A%0Ah2%5Bid%3D%22tagline%22%0A+++class%3D%22small+tagline%22%5D+%3D+page_tagline%0A%0Ah1+id+%3D+%22logo%22+%3D+page_logo%0Ah2+%5B+id+%3D+%22tagline%22+%5D+%3D+page_tagline%0A%0A%2F+comment%0A++second+line%0A%2F%21+html+comment%0A+++second+line%0A%3C%21--+html+comment+--%3E%0A%3Ca+href%3D%22%23%7B%27hello%27+if+set%7D%22%3Elink%3C%2Fa%3E%0Aa.slim+href%3D%22work%22+disabled%3Dfalse+running%3D%3D%3Aatom+Text+%3Cb%3Ebold%3C%2Fb%3E%0A.clazz+data-id%3D%22test%22+%3D%3D+%27hello%27+unless+quark%0A+%7C+Text+mode+%23%7B12%7D%0A+++Second+line%0A%3D+x+%7C%7C%3D+%3Aruby_atom%0A%23menu.left%0A++-+%40env.each+do+%7Cx%7C%0A++++li%3A+a+%3D+x%0A*%40dyntag+attr%3D%22val%22%0A.first+*%7B%3Aclass+%3D%3E+%5B%3Asecond%2C+%3Athird%5D%7D+Text%0A.second+class%3D%5B%22text%22%2C%22more%22%5D%0A.third+class%3D%3Atext%2C%3Asymbol%0A%0A++
MethodGET
Parameterhttps://code.jquery.com/ui/1.11.0/jquery-ui.min.js
Evidence<script src="https://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script>
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/plugins/playground.html
MethodGET
Parameterhttps://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js
Evidence<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
Instances19
Solution

Ensure JavaScript source files are loaded from only trusted sources, and the sources can't be controlled by end users of the application.

Reference

CWE Id829
WASC Id15
Source ID3
Low (Medium)Content-Type Header Missing
Description

The Content-Type header was either missing or empty.

URLhttps://space-dev.sbm.itb.ac.id/font-awesome/scss/_mixins.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/less/mixins.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/_core.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/scss/_rotated-flipped.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/less/rotated-flipped.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/less/animated.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/scss/_animated.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/less/stacked.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/less/rotated-flipped.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/less/fixed-width.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/_bordered-pulled.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/_list.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/font-awesome.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/scss/_screen-reader.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/less/list.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/less/font-awesome.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/scss/_fixed-width.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/_animated.scss
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/less/animated.less
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/font-awesome%204.2/scss/_mixins.scss
MethodGET
Instances43
Solution

Ensure each page is setting the specific and appropriate content-type value for the content being delivered.

Reference

http://msdn.microsoft.com/en-us/library/ie/gg622941%28v=vs.85%29.aspx

CWE Id345
WASC Id12
Source ID3
Low (Medium)Private IP Disclosure
Description

A private IP (such as 10.x.x.x, 172.x.x.x, 192.168.x.x) or an Amazon EC2 private hostname (for example, ip-10-0-56-78) has been found in the HTTP response body. This information might be helpful for further attacks targeting internal systems.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/toml/index.html
MethodGET
Evidence192.168.1.1
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/toml/index.html?code=%0A%23+This+is+a+TOML+document.+Boom.%0A%0Atitle+%3D+%22TOML+Example%22%0A%0A%5Bowner%5D%0Aname+%3D+%22Tom+Preston-Werner%22%0Aorganization+%3D+%22GitHub%22%0Abio+%3D+%22GitHub+Cofounder+%26+CEO%5CnLikes+tater+tots+and+beer.%22%0Adob+%3D+1979-05-27T07%3A32%3A00Z+%23+First+class+dates%3F+Why+not%3F%0A%0A%5Bdatabase%5D%0Aserver+%3D+%22192.168.1.1%22%0Aports+%3D+%5B+8001%2C+8001%2C+8002+%5D%0Aconnection_max+%3D+5000%0Aenabled+%3D+true%0A%0A%5Bservers%5D%0A%0A++%23+You+can+indent+as+you+please.+Tabs+or+spaces.+TOML+don%27t+care.%0A++%5Bservers.alpha%5D%0A++ip+%3D+%2210.0.0.1%22%0A++dc+%3D+%22eqdc10%22%0A++%0A++%5Bservers.beta%5D%0A++ip+%3D+%2210.0.0.2%22%0A++dc+%3D+%22eqdc10%22%0A++%0A%5Bclients%5D%0Adata+%3D+%5B+%5B%22gamma%22%2C+%22delta%22%5D%2C+%5B1%2C+2%5D+%5D%0A%0A%23+Line+breaks+are+OK+when+inside+arrays%0Ahosts+%3D+%5B%0A++%22alpha%22%2C%0A++%22omega%22%0A%5D%0A
MethodGET
Evidence192.168.1.1
Instances2
Solution

Remove the private IP address from the HTTP response body. For comments, use JSP/ASP/PHP comment instead of HTML/JavaScript comment which can be seen by client browsers.

Other information

192.168.1.1

10.0.0.1

10.0.0.2

Reference

https://tools.ietf.org/html/rfc1918

CWE Id200
WASC Id13
Source ID3
Informational (Medium)Information Disclosure - Suspicious Comments
Description

The response appears to contain suspicious comments which may help an attacker.

URLhttp://space-dev.sbm.itb.ac.id
MethodGET
Instances1
Solution

Remove all comments that return information that may help an attacker and fix any underlying problems they refer to.

Other information

<!--

* INSPINIA - Responsive Admin Theme

* Version 2.5

*

-->

Reference

CWE Id200
WASC Id13
Source ID3
Informational (Medium)Information Disclosure - Suspicious Comments
Description

The response appears to contain suspicious comments which may help an attacker.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/fullcalendar/lang/es.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/tiddlywiki/tiddlywiki.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/dupak/facultyDupakAggregationCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/review/reviewCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/src/navigation.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/plugins/ng-grid-csv-export.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/fsfq/fsfqManageJournalsCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/summernote/summernote.min.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/plugins/ng-grid-reorderable.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/nggrid/lib/bootstrap/js/bootstrap.min.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/easypiechart/angular.easypiechart.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sparql/index.html
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/people/addRoleUserCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/people/facultyManagementCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/syllabus/syllabusReferencesCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/reviewApproval/approvalCtrl.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/lua/lua.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/v0.6/origin/datatables.lightcolumnfilter.min.js
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/moment/moment.min.js?v=1562
MethodGET
URLhttps://space-dev.sbm.itb.ac.id/js/controller/people/facultyCtrl.js
MethodGET
Instances382
Solution

Remove all comments that return information that may help an attacker and fix any underlying problems they refer to.

Other information

(function(e){"function"==typeof define&&define.amd?define(["jquery","moment"],e):e(jQuery,moment)})(function(e,t){var n="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),i="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_");(t.defineLocale||t.lang).call(t,"es",{months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort:function(e,t){return/-MMM-/.test(t)?i[e.month()]:n[e.month()]},weekdays:"domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),weekdaysShort:"dom._lun._mar._mié._jue._vie._sáb.".split("_"),weekdaysMin:"Do_Lu_Ma_Mi_Ju_Vi_Sá".split("_"),longDateFormat:{LT:"H:mm",L:"DD/MM/YYYY",LL:"D [de] MMMM [del] YYYY",LLL:"D [de] MMMM [del] YYYY LT",LLLL:"dddd, D [de] MMMM [del] YYYY LT"},calendar:{sameDay:function(){return"[hoy a la"+(1!==this.hours()?"s":"")+"] LT"},nextDay:function(){return"[mañana a la"+(1!==this.hours()?"s":"")+"] LT"},nextWeek:function(){return"dddd [a la"+(1!==this.hours()?"s":"")+"] LT"},lastDay:function(){return"[ayer a la"+(1!==this.hours()?"s":"")+"] LT"},lastWeek:function(){return"[el] dddd [pasado a la"+(1!==this.hours()?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un día",dd:"%d días",M:"un mes",MM:"%d meses",y:"un año",yy:"%d años"},ordinal:"%dº",week:{dow:1,doy:4}}),e.fullCalendar.datepickerLang("es","es",{closeText:"Cerrar",prevText:"&#x3C;Ant",nextText:"Sig&#x3E;",currentText:"Hoy",monthNames:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],monthNamesShort:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],dayNames:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],dayNamesShort:["dom","lun","mar","mié","jue","vie","sáb"],dayNamesMin:["D","L","M","X","J","V","S"],weekHeader:"Sm",dateFormat:"dd/mm/yy",firstDay:1,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""}),e.fullCalendar.lang("es",{defaultButtonText:{month:"Mes",week:"Semana",day:"Día",list:"Agenda"},allDayHtml:"Todo<br/>el día",eventLimitText:"más"})});

Reference

CWE Id200
WASC Id13
Source ID3
Informational (Medium)Information Disclosure - Sensitive Information in URL
Description

The request appeared to contain sensitive information leaked in the URL. This can violate PCI and most organizational compliance policies. You can configure the list of strings for this check to add or remove values specific to your environment.

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/sieve/index.html?code=%0A%23%0A%23+Example+Sieve+Filter%0A%23+Declare+any+optional+features+or+extension+used+by+the+script%0A%23%0A%0Arequire+%5B%22fileinto%22%2C+%22reject%22%5D%3B%0A%0A%23%0A%23+Reject+any+large+messages+%28note+that+the+four+leading+dots+get%0A%23+%22stuffed%22+to+three%29%0A%23%0Aif+size+%3Aover+1M%0A%7B%0A++reject+text%3A%0APlease+do+not+send+me+large+attachments.%0APut+your+file+on+a+server+and+send+me+the+URL.%0AThank+you.%0A....+Fred%0A.%0A%3B%0A++stop%3B%0A%7D%0A%0A%23%0A%23+Handle+messages+from+known+mailing+lists%0A%23+Move+messages+from+IETF+filter+discussion+list+to+filter+folder%0A%23%0Aif+header+%3Ais+%22Sender%22+%22owner-ietf-mta-filters%40imc.org%22%0A%7B%0A++fileinto+%22filter%22%3B++%23+move+to+%22filter%22+folder%0A%7D%0A%23%0A%23+Keep+all+messages+to+or+from+people+in+my+company%0A%23%0Aelsif+address+%3Adomain+%3Ais+%5B%22From%22%2C+%22To%22%5D+%22example.com%22%0A%7B%0A++keep%3B+++++++++++++++%23+keep+in+%22In%22+folder%0A%7D%0A%0A%23%0A%23+Try+and+catch+unsolicited+email.++If+a+message+is+not+to+me%2C%0A%23+or+it+contains+a+subject+known+to+be+spam%2C+file+it+away.%0A%23%0Aelsif+anyof+%28not+address+%3Aall+%3Acontains%0A+++++++++++++++%5B%22To%22%2C+%22Cc%22%2C+%22Bcc%22%5D+%22me%40example.com%22%2C%0A+++++++++++++header+%3Amatches+%22subject%22%0A+++++++++++++++%5B%22*make*money*fast*%22%2C+%22*university*dipl*mas*%22%5D%29%0A%7B%0A++%23+If+message+header+does+not+contain+my+address%2C%0A++%23+it%27s+from+a+list.%0A++fileinto+%22spam%22%3B+++%23+move+to+%22spam%22+folder%0A%7D%0Aelse%0A%7B%0A++%23+Move+all+other+%28non-company%29+mail+to+%22personal%22%0A++%23+folder.%0A++fileinto+%22personal%22%3B%0A%7D%0A
MethodGET
Parametercode
Evidence # # Example Sieve Filter # Declare any optional features or extension used by the script # require ["fileinto", "reject"]; # # Reject any large messages (note that the four leading dots get # "stuffed" to three) # if size :over 1M { reject text: Please do not send me large attachments. Put your file on a server and send me the URL. Thank you. .... Fred . ; stop; } # # Handle messages from known mailing lists # Move messages from IETF filter discussion list to filter folder # if header :is "Sender" "owner-ietf-mta-filters@imc.org" { fileinto "filter"; # move to "filter" folder } # # Keep all messages to or from people in my company # elsif address :domain :is ["From", "To"] "example.com" { keep; # keep in "In" folder } # # Try and catch unsolicited email. If a message is not to me, # or it contains a subject known to be spam, file it away. # elsif anyof (not address :all :contains ["To", "Cc", "Bcc"] "me@example.com", header :matches "subject" ["*make*money*fast*", "*university*dipl*mas*"]) { # If message header does not contain my address, # it's from a list. fileinto "spam"; # move to "spam" folder } else { # Move all other (non-company) mail to "personal" # folder. fileinto "personal"; }
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/erlang/index.html?code=%0A%25%25+-*-+mode%3A+erlang%3B+erlang-indent-level%3A+2+-*-%0A%25%25%25+Created+%3A++7+May+2012+by+mats+cronqvist+%3Cmasse%40klarna.com%3E%0A%0A%25%25+%40doc%0A%25%25+Demonstrates+how+to+print+a+record.%0A%25%25+%40end%0A%0A-module%28%27ex%27%29.%0A-author%28%27mats+cronqvist%27%29.%0A-export%28%5Bdemo%2F0%2C%0A+++++++++rec_info%2F1%5D%29.%0A%0A-record%28demo%2C%7Ba%3D%22One%22%2Cb%3D%22Two%22%2Cc%3D%22Three%22%2Cd%3D%22Four%22%7D%29.%0A%0Arec_info%28demo%29+-%3E+record_info%28fields%2Cdemo%29.%0A%0Ademo%28%29+-%3E+expand_recs%28%3FMODULE%2C%23demo%7Ba%3D%22A%22%2Cb%3D%22BB%22%7D%29.%0A%0Aexpand_recs%28M%2CList%29+when+is_list%28List%29+-%3E%0A++%5Bexpand_recs%28M%2CL%29%7C%7CL%3C-List%5D%3B%0Aexpand_recs%28M%2CTup%29+when+is_tuple%28Tup%29+-%3E%0A++case+tuple_size%28Tup%29+of%0A++++L+when+L+%3C+1+-%3E+Tup%3B%0A++++L+-%3E%0A++++++try%0A++++++++Fields+%3D+M%3Arec_info%28element%281%2CTup%29%29%2C%0A++++++++L+%3D+length%28Fields%29%2B1%2C%0A++++++++lists%3Azip%28Fields%2Cexpand_recs%28M%2Ctl%28tuple_to_list%28Tup%29%29%29%29%0A++++++catch%0A++++++++_%3A_+-%3E+list_to_tuple%28expand_recs%28M%2Ctuple_to_list%28Tup%29%29%29%0A++++++end%0A++end%3B%0Aexpand_recs%28_%2CTerm%29+-%3E%0A++Term.%0A
MethodGET
Parametercode
Evidence %% -*- mode: erlang; erlang-indent-level: 2 -*- %%% Created : 7 May 2012 by mats cronqvist <masse@klarna.com> %% @doc %% Demonstrates how to print a record. %% @end -module('ex'). -author('mats cronqvist'). -export([demo/0, rec_info/1]). -record(demo,{a="One",b="Two",c="Three",d="Four"}). rec_info(demo) -> record_info(fields,demo). demo() -> expand_recs(?MODULE,#demo{a="A",b="BB"}). expand_recs(M,List) when is_list(List) -> [expand_recs(M,L)||L<-List]; expand_recs(M,Tup) when is_tuple(Tup) -> case tuple_size(Tup) of L when L < 1 -> Tup; L -> try Fields = M:rec_info(element(1,Tup)), L = length(Fields)+1, lists:zip(Fields,expand_recs(M,tl(tuple_to_list(Tup)))) catch _:_ -> list_to_tuple(expand_recs(M,tuple_to_list(Tup))) end end; expand_recs(_,Term) -> Term.
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/codemirror/mode/asterisk/index.html?code=%0A%3B+extensions.conf+-+the+Asterisk+dial+plan%0A%3B%0A%0A%5Bgeneral%5D%0A%3B%0A%3B+If+static+is+set+to+no%2C+or+omitted%2C+then+the+pbx_config+will+rewrite%0A%3B+this+file+when+extensions+are+modified.++Remember+that+all+comments%0A%3B+made+in+the+file+will+be+lost+when+that+happens.%0Astatic%3Dyes%0A%0A%23include+%22%2Fetc%2Fasterisk%2Fadditional_general.conf%0A%0A%5Biaxprovider%5D%0Aswitch+%3D%3E+IAX2%2Fuser%3A%5Bkey%5D%40myserver%2Fmycontext%0A%0A%5Bdynamic%5D%0A%23exec+%2Fusr%2Fbin%2Fdynamic-peers.pl%0A%0A%5Btrunkint%5D%0A%3B%0A%3B+International+long+distance+through+trunk%0A%3B%0Aexten+%3D%3E+_9011.%2C1%2CMacro%28dundi-e164%2C%24%7BEXTEN%3A4%7D%29%0Aexten+%3D%3E+_9011.%2Cn%2CDial%28%24%7BGLOBAL%28TRUNK%29%7D%2F%24%7BFILTER%280-9%2C%24%7BEXTEN%3A%24%7BGLOBAL%28TRUNKMSD%29%7D%7D%29%7D%29%0A%0A%5Blocal%5D%0A%3B%0A%3B+Master+context+for+local%2C+toll-free%2C+and+iaxtel+calls+only%0A%3B%0Aignorepat+%3D%3E+9%0Ainclude+%3D%3E+default%0A%0A%5Bdemo%5D%0Ainclude+%3D%3E+stdexten%0A%3B%0A%3B+We+start+with+what+to+do+when+a+call+first+comes+in.%0A%3B%0Aexten+%3D%3E+s%2C1%2CWait%281%29%09%09%09%3B+Wait+a+second%2C+just+for+fun%0Asame++%3D%3E+n%2CAnswer%09%09%09%3B+Answer+the+line%0Asame++%3D%3E+n%2CSet%28TIMEOUT%28digit%29%3D5%29%09%3B+Set+Digit+Timeout+to+5+seconds%0Asame++%3D%3E+n%2CSet%28TIMEOUT%28response%29%3D10%29%09%3B+Set+Response+Timeout+to+10+seconds%0Asame++%3D%3E+n%28restart%29%2CBackGround%28demo-congrats%29%09%3B+Play+a+congratulatory+message%0Asame++%3D%3E+n%28instruct%29%2CBackGround%28demo-instruct%29%09%3B+Play+some+instructions%0Asame++%3D%3E+n%2CWaitExten%09%09%09%3B+Wait+for+an+extension+to+be+dialed.%0A%0Aexten+%3D%3E+2%2C1%2CBackGround%28demo-moreinfo%29%09%3B+Give+some+more+information.%0Aexten+%3D%3E+2%2Cn%2CGoto%28s%2Cinstruct%29%0A%0Aexten+%3D%3E+3%2C1%2CSet%28LANGUAGE%28%29%3Dfr%29%09%09%3B+Set+language+to+french%0Aexten+%3D%3E+3%2Cn%2CGoto%28s%2Crestart%29%09%09%3B+Start+with+the+congratulations%0A%0Aexten+%3D%3E+1000%2C1%2CGoto%28default%2Cs%2C1%29%0A%3B%0A%3B+We+also+create+an+example+user%2C+1234%2C+who+is+on+the+console+and+has%0A%3B+voicemail%2C+etc.%0A%3B%0Aexten+%3D%3E+1234%2C1%2CPlayback%28transfer%2Cskip%29%09%09%3B+%22Please+hold+while...%22%0A%09%09%09%09%09%3B+%28but+skip+if+channel+is+not+up%29%0Aexten+%3D%3E+1234%2Cn%2CGosub%28%24%7BEXTEN%7D%2Cstdexten%28%24%7BGLOBAL%28CONSOLE%29%7D%29%29%0Aexten+%3D%3E+1234%2Cn%2CGoto%28default%2Cs%2C1%29%09%09%3B+exited+Voicemail%0A%0Aexten+%3D%3E+1235%2C1%2CVoicemail%281234%2Cu%29%09%09%3B+Right+to+voicemail%0A%0Aexten+%3D%3E+1236%2C1%2CDial%28Console%2Fdsp%29%09%09%3B+Ring+forever%0Aexten+%3D%3E+1236%2Cn%2CVoicemail%281234%2Cb%29%09%09%3B+Unless+busy%0A%0A%3B%0A%3B+%23+for+when+they%27re+done+with+the+demo%0A%3B%0Aexten+%3D%3E+%23%2C1%2CPlayback%28demo-thanks%29%09%3B+%22Thanks+for+trying+the+demo%22%0Aexten+%3D%3E+%23%2Cn%2CHangup%09%09%09%3B+Hang+them+up.%0A%0A%3B%0A%3B+A+timeout+and+%22invalid+extension+rule%22%0A%3B%0Aexten+%3D%3E+t%2C1%2CGoto%28%23%2C1%29%09%09%09%3B+If+they+take+too+long%2C+give+up%0Aexten+%3D%3E+i%2C1%2CPlayback%28invalid%29%09%09%3B+%22That%27s+not+valid%2C+try+again%22%0A%0A%3B%0A%3B+Create+an+extension%2C+500%2C+for+dialing+the%0A%3B+Asterisk+demo.%0A%3B%0Aexten+%3D%3E+500%2C1%2CPlayback%28demo-abouttotry%29%3B+Let+them+know+what%27s+going+on%0Aexten+%3D%3E+500%2Cn%2CDial%28IAX2%2Fguest%40pbx.digium.com%2Fs%40default%29%09%3B+Call+the+Asterisk+demo%0Aexten+%3D%3E+500%2Cn%2CPlayback%28demo-nogo%29%09%3B+Couldn%27t+connect+to+the+demo+site%0Aexten+%3D%3E+500%2Cn%2CGoto%28s%2C6%29%09%09%3B+Return+to+the+start+over+message.%0A%0A%3B%0A%3B+Create+an+extension%2C+600%2C+for+evaluating+echo+latency.%0A%3B%0Aexten+%3D%3E+600%2C1%2CPlayback%28demo-echotest%29%09%3B+Let+them+know+what%27s+going+on%0Aexten+%3D%3E+600%2Cn%2CEcho%09%09%09%3B+Do+the+echo+test%0Aexten+%3D%3E+600%2Cn%2CPlayback%28demo-echodone%29%09%3B+Let+them+know+it%27s+over%0Aexten+%3D%3E+600%2Cn%2CGoto%28s%2C6%29%09%09%3B+Start+over%0A%0A%3B%0A%3B%09You+can+use+the+Macro+Page+to+intercom+a+individual+user%0Aexten+%3D%3E+76245%2C1%2CMacro%28page%2CSIP%2FGrandstream1%29%0A%3B+or+if+your+peernames+are+the+same+as+extensions%0Aexten+%3D%3E+_7XXX%2C1%2CMacro%28page%2CSIP%2F%24%7BEXTEN%7D%29%0A%3B%0A%3B%0A%3B+System+Wide+Page+at+extension+7999%0A%3B%0Aexten+%3D%3E+7999%2C1%2CSet%28TIMEOUT%28absolute%29%3D60%29%0Aexten+%3D%3E+7999%2C2%2CPage%28Local%2FGrandstream1%40page%26Local%2FXlite1%40page%26Local%2F1234%40page%2Fn%2Cd%29%0A%0A%3B+Give+voicemail+at+extension+8500%0A%3B%0Aexten+%3D%3E+8500%2C1%2CVoicemailMain%0Aexten+%3D%3E+8500%2Cn%2CGoto%28s%2C6%29%0A%0A++++
MethodGET
Parametercode
Evidence ; extensions.conf - the Asterisk dial plan ; [general] ; ; If static is set to no, or omitted, then the pbx_config will rewrite ; this file when extensions are modified. Remember that all comments ; made in the file will be lost when that happens. static=yes #include "/etc/asterisk/additional_general.conf [iaxprovider] switch => IAX2/user:[key]@myserver/mycontext [dynamic] #exec /usr/bin/dynamic-peers.pl [trunkint] ; ; International long distance through trunk ; exten => _9011.,1,Macro(dundi-e164,${EXTEN:4}) exten => _9011.,n,Dial(${GLOBAL(TRUNK)}/${FILTER(0-9,${EXTEN:${GLOBAL(TRUNKMSD)}})}) [local] ; ; Master context for local, toll-free, and iaxtel calls only ; ignorepat => 9 include => default [demo] include => stdexten ; ; We start with what to do when a call first comes in. ; exten => s,1,Wait(1) ; Wait a second, just for fun same => n,Answer ; Answer the line same => n,Set(TIMEOUT(digit)=5) ; Set Digit Timeout to 5 seconds same => n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds same => n(restart),BackGround(demo-congrats) ; Play a congratulatory message same => n(instruct),BackGround(demo-instruct) ; Play some instructions same => n,WaitExten ; Wait for an extension to be dialed. exten => 2,1,BackGround(demo-moreinfo) ; Give some more information. exten => 2,n,Goto(s,instruct) exten => 3,1,Set(LANGUAGE()=fr) ; Set language to french exten => 3,n,Goto(s,restart) ; Start with the congratulations exten => 1000,1,Goto(default,s,1) ; ; We also create an example user, 1234, who is on the console and has ; voicemail, etc. ; exten => 1234,1,Playback(transfer,skip) ; "Please hold while..." ; (but skip if channel is not up) exten => 1234,n,Gosub(${EXTEN},stdexten(${GLOBAL(CONSOLE)})) exten => 1234,n,Goto(default,s,1) ; exited Voicemail exten => 1235,1,Voicemail(1234,u) ; Right to voicemail exten => 1236,1,Dial(Console/dsp) ; Ring forever exten => 1236,n,Voicemail(1234,b) ; Unless busy ; ; # for when they're done with the demo ; exten => #,1,Playback(demo-thanks) ; "Thanks for trying the demo" exten => #,n,Hangup ; Hang them up. ; ; A timeout and "invalid extension rule" ; exten => t,1,Goto(#,1) ; If they take too long, give up exten => i,1,Playback(invalid) ; "That's not valid, try again" ; ; Create an extension, 500, for dialing the ; Asterisk demo. ; exten => 500,1,Playback(demo-abouttotry); Let them know what's going on exten => 500,n,Dial(IAX2/guest@pbx.digium.com/s@default) ; Call the Asterisk demo exten => 500,n,Playback(demo-nogo) ; Couldn't connect to the demo site exten => 500,n,Goto(s,6) ; Return to the start over message. ; ; Create an extension, 600, for evaluating echo latency. ; exten => 600,1,Playback(demo-echotest) ; Let them know what's going on exten => 600,n,Echo ; Do the echo test exten => 600,n,Playback(demo-echodone) ; Let them know it's over exten => 600,n,Goto(s,6) ; Start over ; ; You can use the Macro Page to intercom a individual user exten => 76245,1,Macro(page,SIP/Grandstream1) ; or if your peernames are the same as extensions exten => _7XXX,1,Macro(page,SIP/${EXTEN}) ; ; ; System Wide Page at extension 7999 ; exten => 7999,1,Set(TIMEOUT(absolute)=60) exten => 7999,2,Page(Local/Grandstream1@page&Local/Xlite1@page&Local/1234@page/n,d) ; Give voicemail at extension 8500 ; exten => 8500,1,VoicemailMain exten => 8500,n,Goto(s,6)
Instances3
Solution

Do not pass sensitive information in URIs.

Other information

The URL contains email address(es).

Reference

CWE Id200
WASC Id13
Source ID3
Informational (Low)Timestamp Disclosure - Unix
Description

A timestamp was disclosed by the application/web server - Unix

URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence225274430
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/rickshaw/rickshaw.min.js
MethodGET
Evidence2146823252
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular-scenario.js
MethodGET
Evidence20110929
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/rickshaw/vendor/d3.v3.js
MethodGET
Evidence13808780
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence1622183637
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/d3/d3.min.js
MethodGET
Evidence13047173
URLhttps://space-dev.sbm.itb.ac.id/css/bootstrap.css.map
MethodGET
Evidence28936855
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence2053790376
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/jvectormap/jquery-jvectormap-world-mill-en.js
MethodGET
Evidence20026572
URLhttps://space-dev.sbm.itb.ac.id/js/jquery/jquery-ui-1.10.4.min.js
MethodGET
Evidence0123456789
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence251722036
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/d3/d3.min.js
MethodGET
Evidence15177372
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence1373503546
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/dataTables/datatables.min.js
MethodGET
Evidence1711684554
URLhttps://space-dev.sbm.itb.ac.id/css/plugins/bootstrap-rtl/bootstrap-rtl.css
MethodGET
Evidence00000000
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/d3/d3.min.js
MethodGET
Evidence11915115
URLhttps://space-dev.sbm.itb.ac.id/js/angular/angular-scenario.js
MethodGET
Evidence20030331
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/rickshaw/vendor/d3.v3.js
MethodGET
Evidence16316671
URLhttps://space-dev.sbm.itb.ac.id/js/plugins/rickshaw/vendor/d3.v3.js
MethodGET
Evidence12426809
URLhttps://space-dev.sbm.itb.ac.id/font-awesome/fonts/fontawesome-webfont.eot
MethodGET
Evidence76767676
Instances527
Solution

Manually confirm that the timestamp data is not sensitive, and that the data cannot be aggregated to disclose exploitable patterns.

Other information

225274430, which evaluates to: 1977-02-20 15:13:50

Reference

https://www.owasp.org/index.php/Top_10_2013-A6-Sensitive_Data_Exposure

http://projects.webappsec.org/w/page/13246936/Information%20Leakage

CWE Id200
WASC Id13
Source ID3