# Бір регекс Cloudflare-ді тоқтатты. 27 минут.

Published: 2026-09-12

2 шілде 2019 ж., 13:42 UTC: Cloudflare-дің Веб қолданбалар брандмауэріне арналған бір жаңа ереже шамамен екі секунд ішінде 180-нен астам қалада іске қосылады. Бұл симуляциялық режимдегі XSS ережесі, сондықтан ол ештеңені блоктамайды, бірақ ол әр сұраныс бойынша жұмыс істейді және .\*(?:.\*=.\*) аяқталады. PCRE кері қайтарады, HTTP сұраныстарын өңдейтін әрбір CPU ядросы 100% жүктеледі және Cloudflare проксиленген әрбір сайт 27 минут бойы 502 қатесін қайтарады; трафик 82% төмендейді. Өшіру қосқышы Cloudflare Access артында орналасқан, ол Cloudflare артында. Cloudflare-дің өз есебінен кейінгі талдау: CPU-ны үнемдеуге арналған қайта өңдеу барысында бірнеше апта бұрын жойылған CPU қорғаушысы, кез келген ережені сахналық кезеңді өткізіп жіберуге мүмкіндік берген процедура, күрделілік кепілдігі жоқ қозғалтқыш, 11 себеп және 7 түзету. Түзету туралы үкім: SHIP IT.

Canonical: https://thedailydiff.dev/kk/video/2026-09-12-cloudflare-regex/

## Бұл бейне не туралы

- 13:31–13:42 UTC: PR біріктірілді, CI жасыл (CPU сынағы жоқ), Quicksilver ережені 180-ден астам қалаға жібереді; WAF ережелері DOG → PIG → Canary кезеңдерін өткізіп жібереді
- 13:45–14:07: бірінші бет; бүкіл әлем бойынша CPU 100%, трафик −82%, барлық жерде 502 қатесі; ішкі басқару панелі Cloudflare Access артында, ол жұмыс істемейді; кейбір тіркелгі деректерінің мерзімі өтіп кеткен; сирек қолданылатын айналма жол
- 14:07–14:09: жаһандық WAF тоқтату; 27 минуттан кейін трафик пен CPU қалыпты; 14:52 WAF ережесіз қайта оралды
- 2 шілде (15:50 UTC) және 12 шілде: Cloudflare сол күнгі ескертпені және толық кейінгі талдауды жариялайды; CPU қорғаушысы қайта қосылды, 3,868 ереже қайта оқылды, сахналанған шығарылымдар, сызықтық уақыттық регекс қозғалтқышына көшу

## Аударылған транскрипция

Бастапқы ағылшын тіліндегі баяндамадан аударылған. Қолжетімді аудио және субтитрлерді YouTube басқарады.

0:00 Бір тұрақты өрнек барлық Cloudflare серверлерінде бірден іске қосылады, және келесі жиырма жеті минут бойы оның артындағы сайттар 502 қате бетін көрсетеді, бұл брандмауэр үшін ең қатаң параметр болып табылады. 2019 жылдың 2 шілдесі, 13:42 UTC. Cloudflare екі сағат ішінде хабарлайды: бұл шабуыл емес, дұрыс емес орналастыру, трафик 82 пайызға төмендеді. Он күннен кейін CTO Джон Грэм-Камминг толық кейінгі талдауды жариялайды, регекс енгізілген, және Hacker News оған 698 ұпай береді,

0:26 бұл үзіліс үшін тұрып қол шапалақтаумен тең. Бұл қалай болады, неге мүмкін, және кінәні кім алады. Бұл The Daily Diff, кейінгі талдау. 13:31. Тарту сұрауы біріктіріледі: кросс-сайтқа қарсы бір жаңа брандмауэр ережесі скриптинг, симуляциялық режимде, сондықтан ол ештеңені блоктамайды. 13:37, сынақтар өтеді; ешқайсысы CPU-ны өлшемейді. 13:42, ереже екі секундта 180 қалаға жіберіледі, себебі WAF ережелері басқа шығарылымдар алатын ит, шошқа және канар кезеңдерін өткізіп жібереді.

0:54 13:45, бірінші бет. 13:49, Hacker News-те мәртебе беті туралы тақырып бар, ол әлі де барлық жүйелердің жұмыс істеп тұрғанын көрсетеді. Ереже нүкте-жұлдыз, нүкте-жұлдыз, тең, нүкте-жұлдызбен аяқталады: кез келген нәрсе, содан кейін кез келген нәрсе, содан кейін теңдік белгісі. PCRE ашкөздікпен болжайды, сәтсіздікке ұшырайды және басқа барлық бөліктер арқылы кері қайтарады. х тең х 23 қадамды алады. Теңдік белгісінен кейінгі жиырма х: 555.

1:15 Жиырма х, теңдік белгісі жоқ: ештеңе таппау үшін 4,067 қадам. Мұны әр сұраныс бойынша іске қосыңыз және әр ядро жүз пайызға жүктеледі, ешнәрсе істемей, мұқият. Екі қорғаушы оны ұстауы керек еді. Ережелердегі CPU шегі қателікпен бірнеше апта бұрын жойылды, WAF-ты аз CPU пайдалануға арналған қайта өңдеуде. Және процедура кез келген ережені сахналық кезеңді өткізіп жіберуге мүмкіндік береді, себебі ережелер тікелей шабуылдарды тоқтату үшін бар; бұл төтенше жағдай емес еді, бірақ ол бәрібір жаһандық деңгейде іске қосылды.

1:37 14:00, WAF анықталды; шабуыл жоқ. 14:02, біреу жаһандық тоқтатуды ұсынады: бір компонент, өшірілген, бүкіл әлем бойынша. Қосқыш Cloudflare Access артында. Cloudflare Access Cloudflare артында. Кейбір тіркелгі деректері пайдаланылмағандықтан мерзімі өтіп кеткен, сондықтан интернеттегі ең жылдам желі ешкім жаттықпаған айналма жолға бес минут жұмсайды. 14:07, өшіру. 14:09, трафик қалыпты. git blame: бір жылдамдықпен, жаһандық деңгейде іске қосу; кездейсоқ қайта өңделген CPU қорғаушысы;

2:04 жоғарғы шегі жоқ регекс қозғалтқышы. Ережені жазған инженер емес: кейінгі талдау он бір себепті тізімдейді және ешкімді атамайды. Зақымдау аймағы: 27 минут, трафиктің 82 пайызы, әр ядродағы CPU 100%, әр қалада. Басқару тақтасы мен API бір шеткі нүктенің артында орналасқан, сондықтан тұтынушылар тіпті оны өшіре алмайды. Hacker News, кейінгі талдау бойынша: оларда бір проблема болған, тұрақты өрнекті пайдаланды, енді оларда екі проблема бар. Ескі әзіл. Әлі де құрастырылады.

2:28 Үкім, кейінгі талдау: SHIP IT. CPU қорғаушысы қайта оралды, барлық 3,868 ереже қолмен оқылады, ережелер сахналық кезеңнен өтеді, және қозғалтқыш сызықтық уақыттық кепілдіктері бар 1968 жылы Кен Томпсон жариялаған қозғалтқышқа ауысады. Дүйсенбі: әр сұраныс бойынша жұмыс істейтін ештеңеде нүкте-жұлдыз нүкте-жұлдыз болмасын, және өшіру қосқышын өзі өшіретін нәрседен алыс ұстаңыз. Маған әлі де айтуға рұқсат етілмеген оқиғаны жіберіңіз, пікірлерде немесе the daily diff dot dev мекенжайына.

2:53 Және бүгінгі айырмашылық осы. Мен Axrisi-ден Нико. Жауапкершілікпен біріктіріңіз.

## Дереккөздер

- [John Graham-Cumming, "Details of the Cloudflare outage on July 2, 2019" (Jul 12, 2019)](https://blog.cloudflare.com/details-of-the-cloudflare-outage-on-july-2-2019/) — blog.cloudflare.com
- [Matthew Prince, "Cloudflare outage caused by bad software deploy (updated)" (Jul 2, 2019)](https://blog.cloudflare.com/cloudflare-outage/) — blog.cloudflare.com
- [Matthew Prince on X, Jul 2, 2019, 14:22 UTC](https://x.com/eastdakota/status/1146061591143538688) — x.com
- [Matthew Prince on X, Jul 2, 2019, 14:36 UTC ("No evidence yet attack related")](https://x.com/eastdakota/status/1146065231270907907) — x.com
- [Hacker News, Jul 2, 2019, 13:49 UTC — "Cloudflare Network Performance Issues" (631 points)](https://news.ycombinator.com/item?id=20334924) — news.ycombinator.com
- [Hacker News, Jul 2, 2019 — "Cloudflare outage caused by bad software deploy" (348 points)](https://news.ycombinator.com/item?id=20336332) — news.ycombinator.com
- [Hacker News, Jul 12, 2019 — "Details of the Cloudflare outage on July 2, 2019" (698 points)](https://news.ycombinator.com/item?id=20421538) — news.ycombinator.com
- [TechCrunch, Jul 2, 2019](https://techcrunch.com/2019/07/02/a-cloudflare-outage-is-impacting-sites-everywhere/) — techcrunch.com
