cloudflare
tcp/443 tcp/80
GraphQL introspection is enabled.
This could leak to data leak if not properly configured.
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa3be9dc50adeb0c6ba6118edd4e16a6fba7cf16247
GraphQL introspection enabled at /graphql Types: 370 (by kind: ENUM: 35, INPUT_OBJECT: 58, INTERFACE: 2, OBJECT: 256, SCALAR: 12, UNION: 7) Operations: - Query: Queries | fields: applicationBuildChecksum, applicationConfig, autocompleteSearchAgent, autocompleteSearchGeneric, autocompleteSearchIdoitObjectTypes - Mutation: Mutations | fields: adminPasswordAuthSend, adminPasswordAuthVerify, channelEmailAdd, channelEmailGuessConfiguration, channelEmailSetNotificationConfiguration - Subscription: Subscriptions | fields: appMaintenance, checklistTemplateUpdates, configUpdates, linkUpdates, macrosUpdate Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa31a0bbaa31a0bbaa31a0bbaa31a0bbaa31a0bbaa3
GraphQL introspection enabled at /graphql
GraphQL introspection is enabled.
This could leak to data leak if not properly configured.
Severity: medium
Fingerprint: c2db3a1c40d490db1a0bbaa3be9dc50adeb0c6ba6118edd4e16a6fba7cf16247
GraphQL introspection enabled at /graphql Types: 370 (by kind: ENUM: 35, INPUT_OBJECT: 58, INTERFACE: 2, OBJECT: 256, SCALAR: 12, UNION: 7) Operations: - Query: Queries | fields: applicationBuildChecksum, applicationConfig, autocompleteSearchAgent, autocompleteSearchGeneric, autocompleteSearchIdoitObjectTypes - Mutation: Mutations | fields: adminPasswordAuthSend, adminPasswordAuthVerify, channelEmailAdd, channelEmailGuessConfiguration, channelEmailSetNotificationConfiguration - Subscription: Subscriptions | fields: appMaintenance, checklistTemplateUpdates, configUpdates, linkUpdates, macrosUpdate Directives: deprecated, include, oneOf, skip, specifiedBy (total: 5)
Open service 104.21.65.199:443 · helpdesk.techstudio.co.za
2026-01-23 08:19
HTTP/1.1 530 <none> Date: Fri, 23 Jan 2026 08:19:29 GMT Content-Type: text/plain; charset=UTF-8 Content-Length: 16 Connection: close Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Expires: Thu, 01 Jan 1970 00:00:01 GMT Referrer-Policy: same-origin X-Frame-Options: SAMEORIGIN Server: cloudflare CF-RAY: 9c25ddcb1d55e90f-LHR alt-svc: h3=":443"; ma=86400 error code: 1016
Open service 104.21.65.199:80 · helpdesk.techstudio.co.za
2026-01-22 22:59
HTTP/1.1 530 <none> Date: Thu, 22 Jan 2026 22:59:20 GMT Content-Type: text/plain; charset=UTF-8 Content-Length: 16 Connection: close Cache-Control: private, max-age=0, no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Expires: Thu, 01 Jan 1970 00:00:01 GMT Referrer-Policy: same-origin Server-Timing: cfEdge;dur=15,cfOrigin;dur=0 X-Frame-Options: SAMEORIGIN Server: cloudflare CF-RAY: 9c22a9442ccdf78d-EWR alt-svc: h3=":443"; ma=86400 error code: 1016
Open service 104.21.65.199:80 · helpdesk.techstudio.co.za
2026-01-09 22:09
HTTP/1.1 200 OK
Date: Fri, 09 Jan 2026 22:09:51 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Server: cloudflare
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 0
X-Content-Type-Options: nosniff
X-Permitted-Cross-Domain-Policies: none
Referrer-Policy: strict-origin-when-cross-origin
link: </assets/application-03022a78f77a70614c8ab55286980d56de60bfa7113d6521978d0e180aec12b0.css>; rel=preload; as=style; nopush,</assets/application-print-b13bcc6b8c456b67c376ff97d8c717cfa9869ea4412e4f49b65170aa535c5722.css>; rel=preload; as=style; nopush
CSRF-TOKEN: 1y2hdVuMwv1MCLv8JlBjuf5aZx_5yWnpMuofRjeA5HWiIgztrsyod7ZLEoOpSCf-RSpWgBG3RT5o0m_tXypCjg
Server-Timing: cfCacheStatus;desc="DYNAMIC"
Server-Timing: cfEdge;dur=27,cfOrigin;dur=551
Cache-Control: max-age=0, private, must-revalidate
Content-Security-Policy: base-uri 'self' https://helpdesk.techstudio.co.za; default-src 'self' ws: wss: https://images.zammad.com; font-src 'self' data:; img-src * data: blob:; object-src 'none'; script-src 'self' 'unsafe-eval' 'nonce-53n0eYSc9xoplKoo//aU0g=='; style-src 'self' 'unsafe-inline'; frame-src www.youtube.com player.vimeo.com
X-Request-Id: 4b371500-837b-4649-89d8-c10c64c1c79c
X-Runtime: 0.034411
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=uim3cTZ%2Fa8T3Vc2VSaG5QEmZCqZSEN1K5nvVJmgcVxvh8H039jplZGf2ODcJwwv4Kn1QnahFFUxXWbeoCxh6XrkHcF1rhuHsNpglBLz5s9cXT7FJrGef3O0%3D"}]}
X-Served-By: helpdesk.techstudio.co.za
cf-cache-status: DYNAMIC
vary: accept-encoding
CF-RAY: 9bb742e56b8faaca-YYZ
alt-svc: h3=":443"; ma=86400
Page title: TechStudio Helpdesk
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>TechStudio Helpdesk</title>
<link rel="apple-touch-icon" href="apple-touch-icon.png" />
<link rel="stylesheet" href="/assets/application-03022a78f77a70614c8ab55286980d56de60bfa7113d6521978d0e180aec12b0.css" media="all" />
<link rel="stylesheet" href="/assets/application-print-b13bcc6b8c456b67c376ff97d8c717cfa9869ea4412e4f49b65170aa535c5722.css" media="print" />
<script nonce="53n0eYSc9xoplKoo//aU0g==">
//<![CDATA[
if(window.MSInputMethodContext && document.documentMode){
var polyfillScriptTag = document.createElement('script');
polyfillScriptTag.setAttribute('src', '/assets/ie11CustomProperties.min-eb19b438c0f5d2010c250595ef6b0b161dacf892c8a6f772dc121e99fc020a2c.js');
polyfillScriptTag.setAttribute('nonce', '53n0eYSc9xoplKoo//aU0g==');
document.head.appendChild(polyfillScriptTag);
}
try {
if(window.matchMedia('(prefers-color-scheme: dark)').matches && localStorage.getItem('theme') != 'light' && !window.location.href.includes('/tests_') ){
document.documentElement.dataset.theme = 'dark';
}
} catch (e) { };
//]]>
</script> <script src="/assets/application-cd7d5204d0f4d6dd302c58946a348322df541ccf94ea093e690d16378d2b6992.js" nonce="53n0eYSc9xoplKoo//aU0g==" defer="defer"></script>
<script src="/javascripts/../assets/form/form.js" nonce="53n0eYSc9xoplKoo//aU0g==" defer="defer" id="zammad_form_script"></script>
<meta name="csrf-param" content="authenticity_token" />
<meta name="csrf-token" content="kwqgGwpz4WzdzfQvyKqVkB8ou7oLpikG67aRWvlO58rmBQ2D_zOL5ieOXVBHstHXpFiKJePYBdGxjuHxkeRBMQ" />
</head>
<body>
<!-- svgstore fallback -->
<script nonce="53n0eYSc9xoplKoo//aU0g==">
//<![CDATA[
/*
detect if browser is
- Chrome 14-20
- Android Browser 4.1+
- iOS 6-7
- Safari 6
- Edge 12
- IE 9-11
*/
window.svgPolyfill = /\bEdge\/12\b|\bTrident\/[567]\b|\bVersion\/7.0 Safari\b/.test(navigator.userAgent) || (navigator.userAgent.match(/AppleWebKit\/(\d+)/) || [])[1] < 537;
(function (doc) {
if(!svgPolyfill)
return
var scripts = doc.getElementsByTagName('script')
var script = scripts[scripts.length - 1]
var xhr = new XMLHttpRequest()
xhr.onload = function () {
var div = doc.createElement('div')
div.innerHTML = this.responseText
div.style.cssText = 'position: absolute; clip: rect(0, 0, 0, 0); z-index: -1;'
script.parentNode.insertBefore(div, script)
}
xhr.open('get', 'assets/images/icons.svg?1755064230', true)
xhr.send()
})(document)
//]]>
</script><div id="app"></div>
<div class="splash">
<svg class="icon icon-logo"><use xlink:href="assets/images/icons.svg?1755064230#icon-logo" /></svg>
<div class="splash-title">Loading…</div>
</div>
<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" nonce="53n0eYSc9xoplKoo//aU0g==" data-cf-beacon='{"version":"2024.11.0","token":"80f3b40d8b9244538919ed925d5a854f","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
<script nonce="53n0eYSc9xoplKoo//aU0g==">(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.nonce='53n0eYSc9xoplKoo//aU0g==';d.innerHTML="window.__CF$cv$params={r:'9bb742e56b8faaca',t:'MTc2Nzk5NjU5MA=='};var a=document.createElement('script');a.nonce='53n0eYSc9xoplKoo//aU0g==';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style