Kirki la mot trong nhung plugin WordPress pho bien nhat voi hon 500.000 site dang su dung, nhung ngay 18/5/2026, mot lo hong nghiem trong (CVE-2026-8206, CVSS 9.8) da duoc phat hien va dang bi tan cong tich cuc ngay luc nay. Lo hong nay cho phep bat ky ai cung co the danh cap tai khoan admin cua ban – khong can mat khau, khong can truy cap truoc do. Trong bai nay, minh se huong dan ban tu A den Z cach kiem tra, khac phuc va bao ve site WordPress khoi cuoc tan cong nay.
Kirki Plugin CVE-2026-8206 La Gi Va Tai Sao No Nguy Hiem Den The?

CVE-2026-8206 la lo hong Privilege Escalation (escalate dac quyen) trong plugin Kirki – Freeform Page Builder, Website Builder & Customizer, anh huong den tat ca phien ban tu 6.0.0 den 6.0.6. Diem nguy hiem nhat: khong can xac thuc (unauthenticated). Ke tan cong chi can biet username admin (thuong cong khai tren WordPress) la co the gui mot HTTP POST request de doi mat khau admin va lay toan bo quyen dieu khien site.
Lo hong nam o ham handle_forgot_password() trong class CompLibFormHandler. Ham nay duoc expose qua REST API endpoint ma khong yeu cau xac thuc. Khi nhan request reset password, thay vi gui email reset link den dia chi email da dang ky cua tai khoan, plugin nay chap nhan bat ky email nao ma ke tan cong cung cap trong request body. Dieu nay nghia la ke tan cong chi can nhap username admin + email cua ho, nhan duoc reset link, doi mat khau va vao duoc site.
Wordfence da block hon 222 cuoc tan cong trong chi 24 gio. Toi thoi diem hien tai, khoang 150.000 site van dang chay phien ban bi lo hong.
Site WordPress Cua Ban Co Dang Bi De Doa Khong?
De biet site cua ban co anh huong khong, ban can kiem tra ngay. Kirki thuong duoc bundle cung nhung premium theme, nen co the ban dang chay no ma khong hieu ro. Co 3 cach de kiem tra:
Cach 1: Dung WP-CLI ( nhanh nhat)
# Kiem tra phien ban Kirki
wp plugin get kirki --field=version --path=/var/www/example.com/public_html
# Hoac liet ke tat ca plugin co chua "kirki"
wp plugin list --path=/var/www/example.com/public_html | grep -i kirkiCach 2: Kiem tra truc tiep tren server
# Doc phien ban tu file header plugin
grep -i "Version:" /var/www/example.com/public_html/wp-content/plugins/kirki/kirki.php
# Hoac kiem tra stable tag trong readme
grep -i "Stable tag" /var/www/example.com/public_html/wp-content/plugins/kirki/readme.txtCach 3: Kiem tra qua WordPress Admin
Dang nhap vao wp-admin, vao Plugins > Installed Plugins, tim “Kirki”. Neu phien ban nam trong khoang 6.0.0 den 6.0.6 – site cua ban dang bi de doa nghiem trong. Phien ban 6.0.7 tro len da duoc patch.
Mot dau hieu nhan biet: Kirki thuong an trong theme nhu mot dependency. Neu ban dung premium theme nhu Flux, Corder, hay bat ky theme naom su dung Kirki Customizer Framework, kha nang cao la site dang chay Kirki. Hay kiem tra ky ca khi ban khong nho da cai plugin nay.
Cap Nhat Kirki Len 6.0.7 Nhu The Nao Cho An Toan?
Viec cap nhat don gian nhung ban can lam dung cach. Truoc tien, backup toan bo site truoc khi thao tac. Day la quy trinh minh khuyen dung:
Buoc 1: Backup website
# Backup database
mysqldump -u root -p wordpress_db > /backup/wp_backup_$(date +%Y%m%d).sql
# Backup files
rsync -avz /var/www/example.com/public_html/ /backup/site_backup_$(date +%Y%m%d)/Buoc 2: Cap nhat Kirki qua WP-CLI
# Cap nhat Kirki len phien ban moi nhat
wp plugin update kirki --path=/var/www/example.com/public_html
# Xac nhan phien ban sau cap nhat
wp plugin get kirki --field=version --path=/var/www/example.com/public_htmlBuoc 3: Kiem tra site sau cap nhat
# Kiem tra trang thai site
wp site list --field=url --path=/var/www/example.com/public_html
# Kiem tra error log
tail -50 /var/www/example.com/logs/error.logNeu Kirki duoc bundle trong theme thay vi la plugin rieng biet, ban can cap nhat ca theme chu. Trong truong hop do, lien lac voi nha phat trien theme hoac tu cap nhat Kirki module ben trong theme.
Cach Kiem Tra Site Da Bi Hack Chua Sau Lo Hong Kirki?
Neu site cua ban da chay Kirki 6.0.0-6.0.6 mot thoi gian, co the site da bi compromise truoc khi ban cap nhat. Day la checklist kiem tra minh luon lam:
1. Kiem tra tai khoan admin bat thuong
# Liet ke tat ca admin users
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered --path=/var/www/example.com/public_html
# Kiem tra thay doi gan day
wp user list --fields=ID,user_login,user_email,last_activity --path=/var/www/example.com/public_htmlTim kiem bat ky tai khoan admin nao ban khong nhan dien, hoac tai khoan cu da doi email gan day.
2. Scan file malware va webshell
# Cai WP-CLI scan
wp plugin install wordfence --activate --path=/var/www/example.com/public_html
# Hoac scan thu cong bang grep cac pattern webshell pho bien
grep -rn "eval(" /var/www/example.com/public_html/wp-content/uploads/
grep -rn "base64_decode" /var/www/example.com/public_html/wp-content/uploads/
find /var/www/example.com/public_html/wp-content/ -name "*.php" -mtime -30 | head -203. Kiem tra plugin va theme moi duoc cai dat
# Liet ke plugin va theme da cai dat gan day
wp plugin list --fields=name,version,status --path=/var/www/example.com/public_html
wp theme list --fields=name,version,status --path=/var/www/example.com/public_htmlNeu tim thay plugin hoac theme la nhung cai ban khong nho cai dat – do co the la backdoor ma ke tan cong da cai vao.
4. Kiem tra user meta thay doi
# Kiem tra session tokens cua admin
wp user meta get 1 session_tokens --path=/var/www/example.com/public_html
# Reset tat ca session neu phat hien bat thuong
wp user meta delete 1 session_tokens --path=/var/www/example.com/public_htmlCau Hinh WAF Chan Cuoc Tan Cong CVE-2026-8206
Ngoai viec cap nhat, ban nen thiet lap them lop bao ve WAF (Web Application Firewall) de chan cac request tan cong vao REST API endpoint bi lo hong. Day la cau hinh minh dung cho Nginx:
Nginx: Block REST API endpoint Kirki bi lo hong
location ~* /wp-json/kirki/v1/forgot-password {
return 403;
}
# Hoac chan toan bo REST API Kirki neu khong can thiet
location ~* /wp-json/kirki/ {
return 403;
}Cloudflare WAF Rule (neu ban dang dung Cloudflare)
(http.request.uri.path contains "/wp-json/kirki/" and http.request.method eq "POST") or
(http.request.uri.path contains "rest_route=/kirki" and http.request.method eq "POST")Đat rule action thanh “Block” va luu lai. Rule nay se chan moi request tan cong vao endpoint Kirki REST API, ke ca khi site chua kip cap nhat.
Neu ban dung OpenLiteSpeed, them rule nay vao .htaccess:
# Block Kirki REST API password reset endpoint
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/wp-json/kirki/v1/forgot-password [NC]
RewriteRule .* - [F,L]
</IfModule>Tai Sao Lo Hong Kirki Nay Khac Voi Cac CVE WordPress Khac?
Minh da xu ly rat nhieu vu WordPress security trong nhieu nam, va CVE-2026-8206 noi len voi 3 dac diem khien minh phai luu y:
Thu nhat, khong can bat ky thong tin nao ngoai username. Khong nhung CVE yeu cau social engineering hay can token cu the. CVE-2026-8206 chi can mot HTTP POST request don gian. Admin username WordPress thuong cong khai qua REST API (/wp-json/wp/v2/users), author archive pages, hoac trong source HTML. Ke tan cong co the lay hang ngan username mot cach tu dong.
Thu hai, Kirki duoc bundle trong rat nhieu premium theme. Nghia la site owner co the dang chay Kirki ma khong biet, vi no an sau theme. Dieu nay khien so luong site thuc te bi anh huong lon hon moi nguoi nghi. nhung plugin security scanner khong luon phat hien dependency nay.
Thu ba, exploitation don gian den muc mass automation tool da xuat hien tren GitHub trong vong few days sau disclosure. bat ky script kiddie nao cung co the tan cong hang ngan site trong mot dem.
Checklist Bao Ve WordPress Sau Khi Fix Kirki
Sau khi cap nhat Kirki len 6.0.7, day la checklist minh khuyen ban lam de dam bao site an toan hoan toan:
1. Doi tat ca mat khau admin
# Doi mat khau admin
wp user update 1 --user_pass="NEW_STRONG_PASSWORD" --path=/var/www/example.com/public_html2. Kiem tra va xoa tai khoan admin khong xac dinh
# Xoa tai khoan admin gia
wp user delete SUSPICIOUS_ID --reassign=1 --path=/var/www/example.com/public_html3. Revoke tat ca application passwords
# Xoa tat ca application passwords cua admin
wp user meta delete 1 application_passwords --path=/var/www/example.com/public_html4. Kiem tra security headers va SSL
# Kiem tra SSL certificate
openssl s_client -connect example.com:443 -servername example.com </dev/null 2>/dev/null | openssl x509 -noout -dates5. Bat two-factor authentication cho moi tai khoan admin. Plugin nhu Wordfence Login Security hoac Two Factor Google cung cap 2FA mien phi va hieu qua.
Lo hong CVE-2026-8206 nho rang minh rang: plugin WordPress pho bien khong co nghia la an toan. Kirki co hon 500.000 active installation, nhung chi can mot ham khong duoc xac thuc dung cach de tao ra bien co security cho 150.000 site. Hay kiem tra ngay hom nay – moi phut tre hen la mot phut ke tan cong co the vao duoc site cua ban.