OWASP站点发布了如何保护 RESTful 服务的步骤列表。一点是 XML DoS 保护。现在我不确定以下两个。
- 针对递归有效负载进行验证
- 针对超大有效负载进行验证
根据第一点,如果我xs:sequence
在我的 XSD 架构中应用 a 是否经过验证,例如:
<xs:complexType name="addressType">
<xs:sequence>
<xs:element name="city" type="addressCity" />
<xs:element name="number" type="addressNumber" />
<xs:element name="street" type="addressStreet" />
<xs:element name="zipCode" type="zipCodeMoreThan4Digits" />
</xs:sequence>
<xs:attribute name="id" type="unsignedInteger" use="required">
</xs:attribute>
</xs:complexType>
现在是第二点。如果我应用这样的正则表达式就足够了:
<xs:simpleType name="addressCity">
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-ZöäüÖÄÜß -]{2,32}" />
</xs:restriction>
</xs:simpleType>