Skip to content

Commit de6c981

Browse files
authored
Merge pull request #27 from ZeroHost-Code/main
sync
2 parents fc51c7b + 6ba74de commit de6c981

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

routes/servers.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -546,6 +546,10 @@ router.post('/power/:identifier', authenticateToken, powerLimiter, async (req, r
546546
const { signal } = req.body;
547547
const pteroId = req.user.pteroId;
548548

549+
if (typeof identifier !== 'string' || !/^[A-Za-z0-9]+$/.test(identifier)) {
550+
return res.status(400).json({ error: 'Invalid server identifier' });
551+
}
552+
549553
if (!await verifyServerOwnership(pteroId, identifier)) {
550554
return res.status(403).json({ error: 'You do not own this server' });
551555
}
@@ -561,7 +565,8 @@ router.post('/power/:identifier', authenticateToken, powerLimiter, async (req, r
561565
}
562566

563567
const apiKey = users[0].ptero_client_api_key;
564-
const pteroRes = await fetch(`${PTERO_URL}/api/client/servers/${identifier}/power`, {
568+
const safeIdentifier = encodeURIComponent(identifier);
569+
const pteroRes = await fetch(`${PTERO_URL}/api/client/servers/${safeIdentifier}/power`, {
565570
method: 'POST',
566571
headers: {
567572
'Authorization': `Bearer ${apiKey}`,

0 commit comments

Comments
 (0)