Я планировал предоставить поддержку регулярных выражений в моем сервисе, чтобы мои пользователи могли настраивать регулярное выражение, и строка будет обрабатываться, если она соответствует регулярному выражению.Не имея круглых скобок только в регулярном выражении, это предотвратит ReDOS?
Потом я наткнулся на эти статьи:
И обнаружили, что простое регулярное выражение может иметь катастрофические последствия в моих серверах.
Мне нужны только базовые способности соответствия.
Я планирую просто вырезать скобки из регулярного выражения, и если это действительное регулярное выражение, оно будет обработано. Я считаю, что для удаления моих серверов из этих атак достаточно удалить только скобки.
Я прав в этом или отсутствует что-нибудь?
Что, просто держите все круглые скобки, даже не глядя? Если на самом деле нужны параны, и вы их удаляете, результат может быть синтаксически действительным, но это будет другое регулярное выражение. И что вы будете делать с парсерами, которые ускользают с помощью обратных косых черт, или в классах персонажей, или в обоих? Используете ли вы аромат регулярного выражения, который поддерживает группы, не захватывающие захват, атомные группы, lookaheads, lookbehinds, группы сброса сброса, условные выражения ...? –
Я пытаюсь предоставить поддержку соответствия шаблону. Я думал, что могу просто использовать регулярное выражение, но узнал о злых регулярных выражениях. Я просто хотел знать, не предотвратит ли хоть какую-то поддержку группировку любого зла. Но из принятого ответа узнал, что этого будет недостаточно. – Vigneshwaran