Skip to content

Commit aada5f3

Browse files
author
Marshall Lee Whittaker
committed
Fixed the user agent spec for radio selection since mutually exclusive
1 parent 7fc9ca5 commit aada5f3

File tree

3 files changed

+14
-16
lines changed

3 files changed

+14
-16
lines changed

background.js

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
var quotesOption = false;
99
var programOption = 'sqlmap';
1010
var verboseOption = false;
11-
var ruaOption = false;
11+
var uaOption = 'sqlmapua';
1212
var dumpallOption = false;
1313
var osshellOption = false;
1414
var headers = '';
@@ -20,7 +20,6 @@ var textonlyOption = false;
2020
var titleonlyOption = false;
2121
var batchpOption = false;
2222
var hexOption = false;
23-
var mobileOption = false;
2423
var chunkedOption = false;
2524
var dropcookOption = false;
2625
var threadsOption = "2";
@@ -91,7 +90,7 @@ let getHeaders = (e) => {
9190
function assembleCmd(url, referUrl) {
9291
let sqlmapText = "sqlmap.py"; // sqlmap command holder
9392
if (verboseOption) {sqlmapText += " -v 4"; };
94-
if (ruaOption) {sqlmapText += " --random-agent"; };
93+
if (uaOption === "rua") {sqlmapText += " --random-agent"; };
9594
if (dumpallOption) {sqlmapText += " --dump-all"; };
9695
if (osshellOption) {sqlmapText += " --os-shell"; };
9796
if (keepaliveOption) {sqlmapText += " --keep-alive"; };
@@ -100,7 +99,7 @@ function assembleCmd(url, referUrl) {
10099
if (titleonlyOption) {sqlmapText += " --titles"; };
101100
if (batchpOption) {sqlmapText += " --batch"; };
102101
if (hexOption) {sqlmapText += " --hex"; };
103-
if (mobileOption) {sqlmapText += " --mobile"; };
102+
if (uaOption === "mobile") {sqlmapText += " --mobile"; };
104103
if (chunkedOption) {sqlmapText += " --chunked"; };
105104
if (dropcookOption) {sqlmapText += " --drop-set-cookie"; };
106105
if (unstableconnOption) {sqlmapText += " --unstable"; };
@@ -194,12 +193,12 @@ browser.contextMenus.onClicked.addListener((info, tab) => {
194193

195194
// check the saved options each click in case they changed
196195
let gettingOptions = browser.storage.sync.get(
197-
['quotes','prog','verbose','rua','dumpall','osshell','sqlmapUser', 'keepalive', 'nullconn', 'textonly', 'titleonly', 'batchp', 'hex', 'mobile', 'chunked', 'dropcook', 'threads', 'unstableconn', 'nocast', 'noescape', 'techb', 'teche', 'techu', 'techs', 'techt', 'techq', 'dbs', 'ctables', 'ccolumns', 'cfiles', 'snackbar'])
196+
['quotes','prog','verbose','ua','dumpall','osshell','sqlmapUser', 'keepalive', 'nullconn', 'textonly', 'titleonly', 'batchp', 'hex', 'chunked', 'dropcook', 'threads', 'unstableconn', 'nocast', 'noescape', 'techb', 'teche', 'techu', 'techs', 'techt', 'techq', 'dbs', 'ctables', 'ccolumns', 'cfiles', 'snackbar'])
198197
.then((res) => {
199198
quotesOption = res.quotes;
200199
programOption = res.prog;
201200
verboseOption = res.verbose;
202-
ruaOption = res.rua;
201+
uaOption = res.ua;
203202
dumpallOption = res.dumpall;
204203
osshellOption = res.osshell;
205204
sqlmapUserOption = res.sqlmapUser;
@@ -209,7 +208,6 @@ browser.contextMenus.onClicked.addListener((info, tab) => {
209208
titleonlyOption = res.titleonly;
210209
batchpOption = res.batchp;
211210
hexOption = res.hex;
212-
mobileOption = res.mobile;
213211
chunkedOption = res.chunked;
214212
dropcookOption = res.dropcook;
215213
threadsOption = res.threads;

options.html

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,12 @@
117117
"unstableconn" /><br />
118118
</div>
119119
<div id="request" class="tab-content">
120-
Use Random User-Agent: <input type="checkbox" name="rua"
121-
id="rua" /><br />
122-
Use Mobile User-Agent: <input type="checkbox" name="mobile"
123-
id="mobile" /><br />
120+
Use SQLMap User-Agent: <input type="radio" name="ua" id="ua"
121+
value="sqlmapua" /><br />
122+
Use Random User-Agent: <input type="radio" name="ua" id="ua"
123+
value="rua" /><br />
124+
Use Mobile User-Agent: <input type="radio" name="ua" id="ua"
125+
value="mobile" /><br />
124126
HTTP Chunked transfer encoding: <input type="checkbox" name="chunked"
125127
id="chunked" /><br />
126128
Drop Set-Cookie header: <input type="checkbox" name="dropcook"

options.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ function saveOptions(e) {
33
quotes: document.querySelector('input[name=quotes]').checked,
44
prog: document.querySelector('input[name=prog]:checked').value,
55
verbose: document.querySelector('input[name=verbose]').checked,
6-
rua: document.querySelector('input[name=rua]').checked,
6+
ua: document.querySelector('input[name=ua]:checked').value,
77
dumpall: document.querySelector('input[name=dumpall]').checked,
88
osshell: document.querySelector('input[name=osshell]').checked,
99
sqlmapUser: document.querySelector('input[name=sqlmapUser]').value,
@@ -13,7 +13,6 @@ function saveOptions(e) {
1313
titleonly: document.querySelector('input[name=titleonly]').checked,
1414
batchp: document.querySelector('input[name=batchp]').checked,
1515
hex: document.querySelector('input[name=hex]').checked,
16-
mobile: document.querySelector('input[name=mobile]').checked,
1716
chunked: document.querySelector('input[name=chunked]').checked,
1817
dropcook: document.querySelector('input[name=dropcook]').checked,
1918
threads: document.querySelector('input[name=threads]').value,
@@ -41,14 +40,14 @@ function saveOptions(e) {
4140

4241
function restoreOptions() {
4342
var gettingItem = browser.storage.sync.get(
44-
['quotes', 'prog', 'verbose', 'rua', 'dumpall', 'osshell', 'sqlmapUser', 'keepalive', 'nullconn', 'textonly', 'titleonly', 'batchp', 'hex', 'mobile', 'chunked', 'dropcook', 'threads', 'unstableconn', 'nocast', 'noescape', 'techb', 'teche', 'techu', 'techs', 'techt', 'techq', 'dbs', 'ctables', 'ccolumns', 'cfiles', 'snackbar']);
43+
['quotes', 'prog', 'verbose', 'ua', 'dumpall', 'osshell', 'sqlmapUser', 'keepalive', 'nullconn', 'textonly', 'titleonly', 'batchp', 'hex', 'chunked', 'dropcook', 'threads', 'unstableconn', 'nocast', 'noescape', 'techb', 'teche', 'techu', 'techs', 'techt', 'techq', 'dbs', 'ctables', 'ccolumns', 'cfiles', 'snackbar']);
4544
gettingItem.then((res) => {
4645

4746
if (Object.keys(res).length > 0 && res.constructor === Object) {
4847
document.querySelector('input[name=quotes]').checked = res.quotes ? res.quotes : false;
4948
document.querySelector('input[name=prog][value=' + res.prog + ']').checked = true;
5049
document.querySelector('input[name=verbose]').checked = res.verbose ? res.verbose : false;
51-
document.querySelector('input[name=rua]').checked = res.rua ? res.rua : true;
50+
document.querySelector('input[name=ua][value=' + res.ua + ']').checked = true;
5251
document.querySelector('input[name=dumpall]').checked = res.dumpall ? res.dumpall : true;
5352
document.querySelector('input[name=osshell]').checked = res.osshell ? res.osshell : false;
5453
document.querySelector('input[name=sqlmapUser]').value = res.sqlmapUser ? res.sqlmapUser : '';
@@ -58,7 +57,6 @@ function restoreOptions() {
5857
document.querySelector('input[name=titleonly]').checked = res.titleonly ? res.titleonly : false;
5958
document.querySelector('input[name=batchp]').checked = res.batchp ? res.batchp : false;
6059
document.querySelector('input[name=hex]').checked = res.hex ? res.hex : false;
61-
document.querySelector('input[name=mobile]').checked = res.mobile ? res.mobile : false;
6260
document.querySelector('input[name=chunked]').checked = res.chunked ? res.chunked : false;
6361
document.querySelector('input[name=dropcook]').checked = res.dropcook ? res.dropcook : false;
6462
document.querySelector('input[name=threads]').value = res.threads ? res.threads : '2';

0 commit comments

Comments
 (0)