Azure / Azure/review-checklists
Add security check to App Service for removing plain FTP support
- Dominant language
- Python
- Stars
- 1.3k
- Forks
- 378
- PR merge metrics
- No merged PRs in 30d
Description
By default, App Service will allow plain FTP uploads. There is an existing check that mentions the basic authentication, but not the protocol.
```json
{
"category": "Security",
"subcategory": "Identity and Access Control",
"text": "Disable basic authentication",
"description": "Disable basic authentication for both FTP/FTPS and for WebDeploy/SCM. This disables access to these services and enforces the use of Azure AD secured endpoints for deployment. Note that the SCM site can also be opened using Azure AD credentials.",
"guid": "5d04c2c3-919c-4a0b-8c12-159e114b933d",
"severity": "High",
"link": "https://docs.microsoft.com/azure/app-service/deploy-configure-credentials#disable-basic-authentication"
},
```
There should be an additional rule to change the requirement to either 'Disabled' or 'FtpsOnly'. Plain FTP is insecure.
The setting is `properties.siteConfig.ftpsState` and it is one of 'AllAllowed', 'FtpsOnly' or 'Disabled'. `AllAllowed` is the default value (shown as `null` in resource graph)
Contributor guide
Assessment
This issue has not been assessed yet.