Microsoft-IIS 10.0
tcp/443 tcp/80
Exposing Swagger/OpenAPI documentation is primarily a risk if your API has underlying security flaws, as it gives attackers a precise roadmap to find them.
Those detail every endpoint, parameter, and data model, making it easier to discover and exploit vulnerabilities like broken access control or injection points.
While a perfectly secure API mitigates the danger, protecting your documentation is a critical layer of defense that forces attackers to work without a map.
Severity: info
Fingerprint: 5733ddf49ff49cd1aad03549cc82326f2f42a9072522139378aed16813b2b829
Public Swagger UI/API detected at path: /swagger/index.html - sample paths:
DELETE /api/MyList/{wishId}
DELETE /api/UserGroups/{userGroupId}
GET /api/Auth
GET /api/Chat/{wishListId}
GET /api/Features
GET /api/Friends
GET /api/Invitations/{token}/Status
GET /api/MyList
GET /api/SharedLists/{wishListId}
GET /api/SharedLists/{wishListId}/Access
GET /api/User
GET /api/UserGroups
POST /api/Feedback
POST /api/Invitations/{token}/Accept
POST /api/MyList/Order
POST /api/MyList/Reset
POST /api/MyList/Share
POST /api/MyList/{wishId}/Option
PUT /api/SharedLists/{wishListId}/{wishId}/Bought
Open service 104.45.14.249:443 · gaver.sagberg.net
2026-01-23 13:05
HTTP/1.1 200 OK
Content-Length: 4531
Connection: close
Content-Type: text/html
Date: Fri, 23 Jan 2026 13:06:29 GMT
Server: Microsoft-IIS/10.0
Accept-Ranges: bytes
Cache-Control: public, max-age=31536000
ETag: "1dc74483cc0bfb3"
Last-Modified: Tue, 23 Dec 2025 20:10:52 GMT
Set-Cookie: ARRAffinity=1e3ef83f1ed46c6e3415b7565a0f08f802bf464e14328169d1ab4351976f65c1;Path=/;HttpOnly;Secure;Domain=gaver.sagberg.net
Set-Cookie: ARRAffinitySameSite=1e3ef83f1ed46c6e3415b7565a0f08f802bf464e14328169d1ab4351976f65c1;Path=/;HttpOnly;SameSite=None;Secure;Domain=gaver.sagberg.net
Strict-Transport-Security: max-age=2592000
Request-Context: appId=cid-v1:d990a116-1003-448a-97ea-e1c6b69579c8
X-Powered-By: ASP.NET
Page title: Gaver
<!DOCTYPE html>
<html lang="no">
<head>
<meta charset="utf-8" />
<meta name="description" content="En julegaveønskelisteapp." />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="theme-color" content="#3f51b5" />
<link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="msapplication-TileImage" content="/ms-icon-144x144.png">
<meta name="theme-color" content="#ffffff">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<title>Gaver</title>
<style>
body {
background: rgb(200, 200, 200);
}
#background {
position: fixed;
display: flex;
top: 0;
left: 0;
}
.lds-roller {
display: inline-block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: url(/images/gift.png);
background-size: cover;
width: 64px;
height: 64px;
}
.lds-roller div {
animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
transform-origin: 32px 32px;
}
.lds-roller div:after {
content: " ";
display: block;
position: absolute;
width: 6px;
height: 6px;
border-radius: 50%;
background: rgba(55, 90, 127, 0.5);
margin: -3px 0 0 -3px;
}
.lds-roller div:nth-child(1) {
animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
top: 50px;
left: 50px;
}
.lds-roller div:nth-child(2) {
animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
top: 54px;
left: 45px;
}
.lds-roller div:nth-child(3) {
animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
top: 57px;
left: 39px;
}
.lds-roller div:nth-child(4) {
animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
top: 58px;
left: 32px;
}
.lds-roller div:nth-child(5) {
animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
top: 57px;
left: 25px;
}
.lds-roller div:nth-child(6) {
animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
top: 54px;
left: 19px;
}
.lds-roller div:nth-child(7) {
animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
top: 50px;
left: 14px;
}
.lds-roller div:nth-child(8) {
animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
top: 45px;
left: 10px;
}
@keyframes lds-roller {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
</style>
<script type="module" crossorigin src="/assets/index-zJGn6eq2.js"></script>
<link rel="modulepreload" crossorigin href="/assets/mui-CsS1f61s.js">
<link rel="stylesheet" crossorigin href="/assets/index-DtP7dbEO.css">
</head>
<body>
<div id="background">
Open service 104.45.14.249:443 · gaver.sagberg.net
2026-01-10 21:00
HTTP/1.1 200 OK
Content-Length: 4531
Connection: close
Content-Type: text/html
Date: Sat, 10 Jan 2026 21:01:53 GMT
Server: Microsoft-IIS/10.0
Accept-Ranges: bytes
Cache-Control: public, max-age=31536000
ETag: "1dc74483cc0bfb3"
Last-Modified: Tue, 23 Dec 2025 20:10:52 GMT
Set-Cookie: ARRAffinity=1e3ef83f1ed46c6e3415b7565a0f08f802bf464e14328169d1ab4351976f65c1;Path=/;HttpOnly;Secure;Domain=gaver.sagberg.net
Set-Cookie: ARRAffinitySameSite=1e3ef83f1ed46c6e3415b7565a0f08f802bf464e14328169d1ab4351976f65c1;Path=/;HttpOnly;SameSite=None;Secure;Domain=gaver.sagberg.net
Strict-Transport-Security: max-age=2592000
Request-Context: appId=cid-v1:d990a116-1003-448a-97ea-e1c6b69579c8
X-Powered-By: ASP.NET
Page title: Gaver
<!DOCTYPE html>
<html lang="no">
<head>
<meta charset="utf-8" />
<meta name="description" content="En julegaveønskelisteapp." />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="theme-color" content="#3f51b5" />
<link rel="apple-touch-icon" sizes="57x57" href="/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="msapplication-TileImage" content="/ms-icon-144x144.png">
<meta name="theme-color" content="#ffffff">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<title>Gaver</title>
<style>
body {
background: rgb(200, 200, 200);
}
#background {
position: fixed;
display: flex;
top: 0;
left: 0;
}
.lds-roller {
display: inline-block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: url(/images/gift.png);
background-size: cover;
width: 64px;
height: 64px;
}
.lds-roller div {
animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
transform-origin: 32px 32px;
}
.lds-roller div:after {
content: " ";
display: block;
position: absolute;
width: 6px;
height: 6px;
border-radius: 50%;
background: rgba(55, 90, 127, 0.5);
margin: -3px 0 0 -3px;
}
.lds-roller div:nth-child(1) {
animation-delay: -0.036s;
}
.lds-roller div:nth-child(1):after {
top: 50px;
left: 50px;
}
.lds-roller div:nth-child(2) {
animation-delay: -0.072s;
}
.lds-roller div:nth-child(2):after {
top: 54px;
left: 45px;
}
.lds-roller div:nth-child(3) {
animation-delay: -0.108s;
}
.lds-roller div:nth-child(3):after {
top: 57px;
left: 39px;
}
.lds-roller div:nth-child(4) {
animation-delay: -0.144s;
}
.lds-roller div:nth-child(4):after {
top: 58px;
left: 32px;
}
.lds-roller div:nth-child(5) {
animation-delay: -0.18s;
}
.lds-roller div:nth-child(5):after {
top: 57px;
left: 25px;
}
.lds-roller div:nth-child(6) {
animation-delay: -0.216s;
}
.lds-roller div:nth-child(6):after {
top: 54px;
left: 19px;
}
.lds-roller div:nth-child(7) {
animation-delay: -0.252s;
}
.lds-roller div:nth-child(7):after {
top: 50px;
left: 14px;
}
.lds-roller div:nth-child(8) {
animation-delay: -0.288s;
}
.lds-roller div:nth-child(8):after {
top: 45px;
left: 10px;
}
@keyframes lds-roller {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
</style>
<script type="module" crossorigin src="/assets/index-zJGn6eq2.js"></script>
<link rel="modulepreload" crossorigin href="/assets/mui-CsS1f61s.js">
<link rel="stylesheet" crossorigin href="/assets/index-DtP7dbEO.css">
</head>
<body>
<div id="background">
Open service 104.45.14.249:80 · gaver.sagberg.net
2026-01-10 21:00
HTTP/1.1 307 Temporary Redirect Content-Length: 0 Connection: close Date: Sat, 10 Jan 2026 21:01:53 GMT Server: Microsoft-IIS/10.0 Location: https://gaver.sagberg.net/ Set-Cookie: ARRAffinity=1e3ef83f1ed46c6e3415b7565a0f08f802bf464e14328169d1ab4351976f65c1;Path=/;HttpOnly;Domain=gaver.sagberg.net Request-Context: appId=cid-v1:d990a116-1003-448a-97ea-e1c6b69579c8 X-Powered-By: ASP.NET