Software Secured Company Logo.
Services
Services
WEB, API & MOBILE SECURITY

Manual reviews expose logic flaws, chained exploits, and hidden vulnerabilities

Web Application Pentesting
Mobile Application Pentesting
Secure Code Review
Infrastructure & Cloud Security

Uncovers insecure networks, lateral movement, and segmentation gaps

External Network Pentesting
Internal Network Pentesting
Secure Cloud Review
AI, IoT & HARDWARE SECURITY

Specialized testing validates AI, IoT, and hardware security posture

AI Pentesting
IoT Pentesting
Hardware Pentesting
ADVANCED ADVERSARY SIMULATIONS

We simulate attackers, exposing systemic risks executives must address

Red Teaming
Social Engineering
Threat Modelling
PENETRATION TESTING AS A SERVICE

PTaaS provides continuous manual pentests, aligned with release cycles

Penetration Testing as a Service
OWASP TOP 10 TRAINING

Practical security training strengthens teams, shifting security left effectively

Secure Code Training
Ready to get started?
Identify real vulnerabilities confidently with zero-false-positive penetration testing
Learn More
Industries
Industries
INDUSTRIES
Data and AI

AI pentesting uncovers adversarial threats, ensuring compliance and investor trust

Healthcare

Penetration testing protects PHI, strengthens compliance, and prevents healthcare breaches

Finance

Manual pentests expose FinTech risks, securing APIs, cloud, and compliance

Security

Penetration testing validates SecurTech resilience, compliance, and customer trust

SaaS

Pentesting secures SaaS platforms, proving compliance and accelerating enterprise sales

CASE STUDY

“As custodians of digital assets, you should actually custodize assets, not outsource. Software Secured helped us prove that our custody technology truly delivers on that promise for our clients in both the cryptocurrency and traditional finance”

Nicolas Stalder,
CEO & Co-Founder, Cordial Systems
Ready to get started?
Our comprehensive penetration testing and actionable reports have 0 false positives so you can identify
Learn More
Compliance
Compliance
COMPLIANCE
SOC 2 Penetration Testing

Pentesting validates SOC 2 controls, proving real security to auditors and customers

HIPAA Penetration Testing

Manual pentesting proves HIPAA controls protect PHI beyond documentation

ISO 27001 Penetration Testing

Pentests uncover risks audits miss, securing certification and enterprise trust

PCI DSS Penetration Testing

Pentesting validates PCI DSS controls, protecting sensitive cardholder data

GDPR Penetration Testing

GDPR-focused pentests reduce breach risk, regulatory fines, and reputational loss

CASE STUDY

“Software Secured’s comprehensive approach to penetration testing and mobile expertise led to finding more vulnerabilities than our previous vendors.”

Kevin Scully,
VP of Engineering, CompanyCam
Ready to get started?
Our comprehensive penetration testing and actionable reports have 0 false positives so you can identify
Learn More
PricingPortal
Resources
Resources
COMPLIANCE
Blogs
Case Studies
Events & Webinars
Partners
Customer Testimonials
News & Press
Whitepapers
API & Web Application Security Testing

The Highest Threat: The Hidden Weakness in Modern API & Web Application Security

Alexis Savard
November 21, 2025
Ready to get started?
Our comprehensive penetration testing and actionable reports have 0 false positives so you can identify
Learn More
Login
Book a Consultation
Contact
Blog
/
Security Research
/
Hardware Security Research

Hacking the Meatmeet BBQ Probe — Part 3

We uncover BLE flaws in the Meatmeet BBQ probe that allowed us to take over the device, push malicious firmware, and even build a BLE BBQ Probe botnet.

By Julian B
・
7 min read
Table of contents
Text Link
Text Link

In this final part of our blog series we will return to the mobile application in order to gain additional insights into the Bluetooth Low Energy (BLE) communications between the application and the base station, much as we had in part 5 of the Hacking Furbo research. Through this we discovered several GATT characteristics exposed which we leveraged to achieve some interesting results.

Reversing the Communications

The Meatmeet devices facilitate the initial setup of the base station through BLE. Additionally, should you choose, you could set up the device without an account and control it solely over BLE. On the other hand, if you decide to use an account, you are required to set up the device over BLE and pass along Wi-Fi credentials, after which the device associates its Node ID with your Account ID. 

Using the BLE-Connect Python script we wrote, we first scanned the Meatmeet base station to get a list of the UUIDs associated with each of the GATT characteristics. 

With these in tow, we grepped through the decompiled APK to determine how the communications are facilitated. Within the BTConstants Java file we found the following commands defined:

‍

Each of these were associated with a command code and GATT characteristic. Now we could create a Python script based on the commands and attempt to send them ourselves.

We quickly discovered that we could drive someone mad by sending the open_hub_buzzer command repeatedly. 

If we wanted to ruin someone’s day, we could also turn off their Meatmeet device using these exposed characteristics, which would result in their meat being overcooked or god forbid… burnt! We simply can’t imagine a world where anyone would do this… Only the most malicious hacker would dare mess with someone’s meat!

Device Takeover

Another command we had gained access to from this was “remove_config”. Each time it was run against the device, the light on the device would begin blinking as though it were back in the setup mode… 

Sure enough, when we set up a new account and searched for the probe to pair it to our account we were able to. If we were in BLE proximity of any Meatmeet BBQ probes we could clear the configuration which associated it with the victim’s account and then bind it to our own, very easily performing a device takeover!

OTA Updates

When we were grepping through the decompiled APK we found several other files which contained the UUIDs exposed by the device. The most interesting of these was the HubOtaManager Java file. We determined that this was how the mobile application would handle an Over-The-Air (OTA) update when the firmware of the base station required updating. 

Using these control codes, we updated the “Meat-Connect” script we had previously written to include this update method and attempted to force an update over BLE. Based on the smali file, it appeared to be that the commands would have to be sent in the following order:

  1. Start OTA
  2. Send Firmware
  3. End OTA

When reviewing the mobile device traffic we were fortunate to discover a copy of the firmware located on a storage bucket that we could pull down to test whether or not this would work. In order to verify whether this was working correctly we connected to the device over UART to monitor the logs, in the screenshot below you can see the UART logs on the left and the BLE script on the right.

After waiting for around 20 minutes, the upload completed and the device rebooted. Unfortunately, though, it seemed that the firmware “upgrade” failed. 

Our hypothesis was that this was because the MTU, or packet size, sent for the firmware was too large and it wasn’t correctly handling the upgrade. Lowering the MTU would slow the upload but would hopefully succeed. Once we upgraded the script, we tried again. This time it took almost 2 hours to upload. Thankfully, though, our hypothesis was proven correct!

Now that we had confirmed we could upgrade the firmware, without any authorization or authentication, we decided to see what we could do… ESP32s are extremely versatile and have tons of online documentation. After watching Lozaning’s talk on the Toothbrush botnet, we decided to develop our own creation: the BLE BBQ Botnet! 

BLE BBQ Botnet

First we defined a couple of features we wanted our botnet firmware to have. This malicious firmware would scan the local area for Wi-Fi networks (to discover possible access points and aid with future geo-location), base64 encode the SSIDs and send them to a server. Once this was completed, it would fetch a JSON file which acted as a definition for what the device was to do next. 

This definition file would specify the request method (GET or POST), host to request, URL path, and request body if it were a POST. That way we could control each of our bots from a C2 server and point them at any target. We also programmed in a halt command to stop any requests which were in progress and wait for the next target. 

Here is a glimpse at the code:

Once we finished compiling this with the Arduino IDE all that was left was to use our BLE script to upload the firmware to the device. Once it rebooted we received confirmation that the device executed our custom firmware update! Seen below is the first GET request made by the device to our C2 server, validating that it was alive.

The next request we received was the base64 encoded Wi-Fi networks (redacted for privacy). 

And finally, we received the GET request to retrieve the configuration file, to direct the device to our botnet target, and the final request to /validate/c2-success which was dynamically built from that file.

Fully Probed

That concludes our research on the Meatmeet BBQ Probe. In this series we disassembled the devices, reverse engineered its operations, and identified a nice chunk of vulnerabilities; 15 in total. We hope you enjoyed this series as much as the last and we can’t wait to share our next vulnerability research project!

‍

About the author

Julian B

Julian is an intermediate penetration tester with nearly five years of experience working in cybersecurity, dedicated to penetration testing, open-source intelligence gathering, and moving the needle forward for organizations across Canada. He regularly engages with the community through presentations at conferences, on a range of topics including vulnerability research and OSINT investigations. This is work is underlined by several CVEs which have been attributed to his research on open-source applications.

Continue your reading with these value-packed posts

DevSecOps & Shift‑left Security

How to Overcome the Biggest Barriers to Selling Security Internally

Cate Callegari
Cate Callegari
17 min read
May 11, 2023
Threat Modelling & Secure Design

Executive Summary: STRIDE Threat Modelling for Secure-by-Design Architectures

Sherif Koussa
Sherif Koussa
9 min read
August 27, 2024
API & Web Application Security Testing

Comparing Website and Web Application Penetration Testing

Sherif Koussa
Sherif Koussa
9 min read
December 10, 2024

Get security insights straight to your inbox

Helping companies identify, understand, and solve their security gaps so their teams can sleep better at night

Book a Consultation
Centralize pentest progress in one place
Canadian based, trusted globally
Actionable remediation support, not just findings
Web, API, Mobile Security
Web App PentestingMobile App PentestingSecure Code Review
Infrastructure & Cloud Security
External Network PentestingInternal Network PentestingSecure Cloud Review
AI, IoT & Hardware Security
AI PentestingIoT PentestingHardware Pentesting
More
PricingPortalPartnersContact UsAbout UsOur TeamCareers
More Services
Pentesting as a ServiceSecure Code Training
Industries
Data and AIFinanceHealthcareSecuritySaaS
Compliance
GDPR PentestingHIPAA PentestingISO 27001 PentestingPCI DSS PentestingSOC 2 Pentesting
Resources
BlogsCase StudiesEvents & WebinarsCustomer TestimonialsNews & PressWhitepapers
More
PricingPortalPartnersContact UsAbout UsOur TeamCareers
Resources
BlogsCase StudiesEvents & WebinarsCustomer TestimonialsNews & PressWhitepapers
Security & CompliancePrivacy PolicyTerms & Conditions
2025 ©SoftwareSecured