search / app.py
enotkrutoy's picture
Update app.py
a86d3b9 verified
raw
history blame
2.38 kB
from flask import Flask, request, jsonify
app = Flask(__name__)
# Моковая база данных для демонстрации
knowledge_base = {
"intitle:index.of filetype:php": "Результаты поиска открытых директорий",
"filetype:txt intext:password | intext:passwd": "Файлы с паролями найдены",
"filetype:conf inurl:config": "Конфигурационные файлы найдены",
"filetype:log intext:error | intext:failed": "Логи с ошибками найдены",
"inurl:.* -intext:github": "Скрытые файлы найдены",
"inurl:wp-config.php | inurl:database.php": "Специфические файлы найдены",
"filetype:conf intext:username | intext:password": "Файлы конфигурации с учетными данными найдены",
"filetype:bak inurl:password | inurl:config": "Резервные файлы с конфиденциальной информацией найдены",
"filetype:old intext:secret | intext:credentials": "Устаревшие файлы с секретной информацией найдены",
"filetype:swp intext:login | intext:auth": "Временные файлы с авторизационной информацией найдены"
}
@app.route('/api/search', methods=['POST'])
def search():
"""
Обработка POST-запроса для поиска.
Принимает JSON с параметром 'query' и возвращает результаты поиска.
"""
data = request.json # Получаем JSON из запроса
query = data.get('query', '').strip() # Извлекаем параметр 'query'
if not query:
return jsonify({"error": "Query is required"}), 400
# Поиск в моковой базе данных
result = knowledge_base.get(query, "По вашему запросу ничего не найдено")
return jsonify({"result": result})
@app.route('/api/examples', methods=['GET'])
def get_examples():
"""
Возвращает список примеров запросов для поиска уязвимостей.
"""
examples = list(knowledge_base.keys())
return jsonify({"examples": examples})
if __name__ == "__main__":
app.run(host='0.0.0.0')