使用防御措施,如IP限制、频率限制等。以下是使用IP限制的Python示例:
from flask import Flask, request
app = Flask(__name__)
ip_count = {}
@app.route('/')
def index():
remote_ip = request.remote_addr
if remote_ip not in ip_count:
ip_count[remote_ip] = 1
else:
ip_count[remote_ip] += 1
if ip_count[remote_ip] > 10: # 如果同一个IP的请求数超过10次,则认为是攻击
return 'Too many requests', 429
return 'Hello, World!'
if __name__ == '__main__':
app.run()
在上述代码中,使用了一个字典ip_count
来记录每个IP的请求次数。在每个请求到达时,判断该IP的请求次数是否超过10次,如果是则返回HTTP状态码429,表示“太多请求”。这样可以防止同一个IP恶意攻击。