Skip to content

SQL injection vulnerability exists in /admin/download_frame.php(Login required) #2

@H9dawn

Description

@H9dawn

First, the loopholes should be reappeared, and then the reasons should be analyzed :

After logging in the background ,We know that if we need to add an app, we need a key:
1
2

So before testing, I need to create a new table in the database and add data .

3

The table name is "app"_ cms_list" , It then contains two pieces of data, as shown in the figure.

Next, we can visit this link to perform blind SQL injection in the "now":("dawn" is the original "admin", but the system needs us to change the background name)

http://www.dmsj.com:8081/dawn/download_frame.php?m=list&s=1&end=10&now=1+and+1=1%23

Pay attention to the use of "+" instead of "space", and unsuccessful words will lead to 302. At the same time, remember to log in to the background.

4

5

6

Little surprise, we also found that its cookie did not change before and after login, but it was in the header, interesting.

Next, we analyze the code :

dawn\download_frame.php

We can control them completely,Then go to "get_ List":

Our "$now" was handed over to "$params['where']"

7

core\common.class.php

8

In any case, our $where is not filtered and goes directly into the SQL statement :

9

We follow the "query":

10

core\database.class.php

11

nice!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions