@contrast/common 1.8.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/constants.d.ts +279 -0
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +141 -1
- package/lib/constants.js.map +1 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +17 -1
- package/lib/index.js.map +1 -1
- package/lib/signatures/fs.d.ts +4 -0
- package/lib/signatures/fs.d.ts.map +1 -0
- package/lib/signatures/fs.js +58 -0
- package/lib/signatures/fs.js.map +1 -0
- package/lib/signatures/index.d.ts +2 -1
- package/lib/signatures/index.d.ts.map +1 -1
- package/lib/signatures/index.js +29 -313
- package/lib/signatures/index.js.map +1 -1
- package/lib/signatures/mongodb.d.ts +3 -0
- package/lib/signatures/mongodb.d.ts.map +1 -0
- package/lib/signatures/mongodb.js +58 -0
- package/lib/signatures/mongodb.js.map +1 -0
- package/lib/signatures/mssql.d.ts +2 -1
- package/lib/signatures/mssql.d.ts.map +1 -1
- package/lib/signatures/mssql.js +3 -3
- package/lib/signatures/mssql.js.map +1 -1
- package/lib/types.d.ts +11 -0
- package/lib/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/constants.ts +140 -0
- package/src/index.ts +16 -0
- package/src/signatures/fs.ts +65 -0
- package/src/signatures/index.ts +32 -315
- package/src/signatures/mongodb.ts +59 -0
- package/src/signatures/mssql.ts +7 -5
- package/src/types.ts +12 -0
package/src/signatures/index.ts
CHANGED
|
@@ -13,10 +13,15 @@
|
|
|
13
13
|
* way not consistent with the End User License Agreement.
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
+
import mongodb from './mongodb';
|
|
16
17
|
import mssql from './mssql';
|
|
18
|
+
import fs from './fs';
|
|
19
|
+
import { Signature } from '../types';
|
|
17
20
|
|
|
18
|
-
export const signatures
|
|
21
|
+
export const signatures = new Map<string, Signature>(
|
|
19
22
|
[
|
|
23
|
+
...fs,
|
|
24
|
+
...mongodb,
|
|
20
25
|
...mssql,
|
|
21
26
|
[
|
|
22
27
|
'Url.prototype.parse',
|
|
@@ -414,15 +419,6 @@ export const signatures: Map<string, any> = new Map(
|
|
|
414
419
|
isModule: true,
|
|
415
420
|
}
|
|
416
421
|
],
|
|
417
|
-
[
|
|
418
|
-
'mongodb.Collection.prototype.rename',
|
|
419
|
-
{
|
|
420
|
-
moduleName: 'mongodb',
|
|
421
|
-
version: '>=3.3.0',
|
|
422
|
-
methodName: 'Collection.prototype.rename',
|
|
423
|
-
isModule: true,
|
|
424
|
-
}
|
|
425
|
-
],
|
|
426
422
|
[
|
|
427
423
|
'marsdb.Collection.prototype.find',
|
|
428
424
|
{
|
|
@@ -601,6 +597,22 @@ export const signatures: Map<string, any> = new Map(
|
|
|
601
597
|
isModule: true,
|
|
602
598
|
}
|
|
603
599
|
],
|
|
600
|
+
[
|
|
601
|
+
'child_process.execFile',
|
|
602
|
+
{
|
|
603
|
+
moduleName: 'child_process',
|
|
604
|
+
methodName: 'execFile',
|
|
605
|
+
isModule: true,
|
|
606
|
+
}
|
|
607
|
+
],
|
|
608
|
+
[
|
|
609
|
+
'child_process.execFileSync',
|
|
610
|
+
{
|
|
611
|
+
moduleName: 'child_process',
|
|
612
|
+
methodName: 'execFileSync',
|
|
613
|
+
isModule: true,
|
|
614
|
+
}
|
|
615
|
+
],
|
|
604
616
|
[
|
|
605
617
|
'Math.random',
|
|
606
618
|
{
|
|
@@ -1292,310 +1304,6 @@ export const signatures: Map<string, any> = new Map(
|
|
|
1292
1304
|
target: 'R',
|
|
1293
1305
|
}
|
|
1294
1306
|
],
|
|
1295
|
-
[
|
|
1296
|
-
'fs.access',
|
|
1297
|
-
{
|
|
1298
|
-
moduleName: 'fs',
|
|
1299
|
-
methodName: 'access',
|
|
1300
|
-
isModule: true,
|
|
1301
|
-
}
|
|
1302
|
-
],
|
|
1303
|
-
[
|
|
1304
|
-
'fs.accessSync',
|
|
1305
|
-
{
|
|
1306
|
-
moduleName: 'fs',
|
|
1307
|
-
methodName: 'accessSync',
|
|
1308
|
-
isModule: true,
|
|
1309
|
-
}
|
|
1310
|
-
],
|
|
1311
|
-
[
|
|
1312
|
-
'fs.copyFile',
|
|
1313
|
-
{
|
|
1314
|
-
moduleName: 'fs',
|
|
1315
|
-
methodName: 'copyFile',
|
|
1316
|
-
isModule: true,
|
|
1317
|
-
}
|
|
1318
|
-
],
|
|
1319
|
-
[
|
|
1320
|
-
'fs.copyFileSync',
|
|
1321
|
-
{
|
|
1322
|
-
moduleName: 'fs',
|
|
1323
|
-
methodName: 'copyFileSync',
|
|
1324
|
-
isModule: true,
|
|
1325
|
-
}
|
|
1326
|
-
],
|
|
1327
|
-
[
|
|
1328
|
-
'fs.appendFile',
|
|
1329
|
-
{
|
|
1330
|
-
moduleName: 'fs',
|
|
1331
|
-
methodName: 'appendFile',
|
|
1332
|
-
isModule: true,
|
|
1333
|
-
}
|
|
1334
|
-
],
|
|
1335
|
-
[
|
|
1336
|
-
'fs.appendFileSync',
|
|
1337
|
-
{
|
|
1338
|
-
moduleName: 'fs',
|
|
1339
|
-
methodName: 'appendFileSync',
|
|
1340
|
-
isModule: true,
|
|
1341
|
-
}
|
|
1342
|
-
],
|
|
1343
|
-
[
|
|
1344
|
-
'fs.writeFile',
|
|
1345
|
-
{
|
|
1346
|
-
moduleName: 'fs',
|
|
1347
|
-
methodName: 'writeFile',
|
|
1348
|
-
isModule: true,
|
|
1349
|
-
}
|
|
1350
|
-
],
|
|
1351
|
-
[
|
|
1352
|
-
'fs.writeFileSync',
|
|
1353
|
-
{
|
|
1354
|
-
moduleName: 'fs',
|
|
1355
|
-
methodName: 'writeFileSync',
|
|
1356
|
-
isModule: true,
|
|
1357
|
-
}
|
|
1358
|
-
],
|
|
1359
|
-
[
|
|
1360
|
-
'fs.createWriteStream',
|
|
1361
|
-
{
|
|
1362
|
-
moduleName: 'fs',
|
|
1363
|
-
methodName: 'createWriteStream',
|
|
1364
|
-
isModule: true,
|
|
1365
|
-
}
|
|
1366
|
-
],
|
|
1367
|
-
[
|
|
1368
|
-
'fs.createReadStream',
|
|
1369
|
-
{
|
|
1370
|
-
moduleName: 'fs',
|
|
1371
|
-
methodName: 'createReadStream',
|
|
1372
|
-
isModule: true,
|
|
1373
|
-
}
|
|
1374
|
-
],
|
|
1375
|
-
[
|
|
1376
|
-
'fs.unlink',
|
|
1377
|
-
{
|
|
1378
|
-
moduleName: 'fs',
|
|
1379
|
-
methodName: 'unlink',
|
|
1380
|
-
isModule: true,
|
|
1381
|
-
}
|
|
1382
|
-
],
|
|
1383
|
-
[
|
|
1384
|
-
'fs.unlinkSync',
|
|
1385
|
-
{
|
|
1386
|
-
moduleName: 'fs',
|
|
1387
|
-
methodName: 'unlinkSync',
|
|
1388
|
-
isModule: true,
|
|
1389
|
-
}
|
|
1390
|
-
],
|
|
1391
|
-
[
|
|
1392
|
-
'fs.truncate',
|
|
1393
|
-
{
|
|
1394
|
-
moduleName: 'fs',
|
|
1395
|
-
methodName: 'truncate',
|
|
1396
|
-
isModule: true,
|
|
1397
|
-
}
|
|
1398
|
-
],
|
|
1399
|
-
[
|
|
1400
|
-
'fs.truncateSync',
|
|
1401
|
-
{
|
|
1402
|
-
moduleName: 'fs',
|
|
1403
|
-
methodName: 'truncateSync',
|
|
1404
|
-
isModule: true,
|
|
1405
|
-
}
|
|
1406
|
-
],
|
|
1407
|
-
[
|
|
1408
|
-
'fs.rmdir',
|
|
1409
|
-
{
|
|
1410
|
-
moduleName: 'fs',
|
|
1411
|
-
methodName: 'rmdir',
|
|
1412
|
-
isModule: true,
|
|
1413
|
-
}
|
|
1414
|
-
],
|
|
1415
|
-
[
|
|
1416
|
-
'fs.rmdirSync',
|
|
1417
|
-
{
|
|
1418
|
-
moduleName: 'fs',
|
|
1419
|
-
methodName: 'rmdirSync',
|
|
1420
|
-
isModule: true,
|
|
1421
|
-
}
|
|
1422
|
-
],
|
|
1423
|
-
[
|
|
1424
|
-
'fs.rename',
|
|
1425
|
-
{
|
|
1426
|
-
moduleName: 'fs',
|
|
1427
|
-
methodName: 'rename',
|
|
1428
|
-
isModule: true,
|
|
1429
|
-
}
|
|
1430
|
-
],
|
|
1431
|
-
[
|
|
1432
|
-
'fs.renameSync',
|
|
1433
|
-
{
|
|
1434
|
-
moduleName: 'fs',
|
|
1435
|
-
methodName: 'renameSync',
|
|
1436
|
-
isModule: true,
|
|
1437
|
-
}
|
|
1438
|
-
],
|
|
1439
|
-
[
|
|
1440
|
-
'fs.readFile',
|
|
1441
|
-
{
|
|
1442
|
-
moduleName: 'fs',
|
|
1443
|
-
methodName: 'readFile',
|
|
1444
|
-
isModule: true,
|
|
1445
|
-
}
|
|
1446
|
-
],
|
|
1447
|
-
[
|
|
1448
|
-
'fs.readFileSync',
|
|
1449
|
-
{
|
|
1450
|
-
moduleName: 'fs',
|
|
1451
|
-
methodName: 'readFileSync',
|
|
1452
|
-
isModule: true,
|
|
1453
|
-
}
|
|
1454
|
-
],
|
|
1455
|
-
[
|
|
1456
|
-
'fs.readdir',
|
|
1457
|
-
{
|
|
1458
|
-
moduleName: 'fs',
|
|
1459
|
-
methodName: 'readdir',
|
|
1460
|
-
isModule: true,
|
|
1461
|
-
}
|
|
1462
|
-
],
|
|
1463
|
-
[
|
|
1464
|
-
'fs.readdirSync',
|
|
1465
|
-
{
|
|
1466
|
-
moduleName: 'fs',
|
|
1467
|
-
methodName: 'readdirSync',
|
|
1468
|
-
isModule: true,
|
|
1469
|
-
}
|
|
1470
|
-
],
|
|
1471
|
-
[
|
|
1472
|
-
'fs.open',
|
|
1473
|
-
{
|
|
1474
|
-
moduleName: 'fs',
|
|
1475
|
-
methodName: 'open',
|
|
1476
|
-
isModule: true,
|
|
1477
|
-
}
|
|
1478
|
-
],
|
|
1479
|
-
[
|
|
1480
|
-
'fs.openSync',
|
|
1481
|
-
{
|
|
1482
|
-
moduleName: 'fs',
|
|
1483
|
-
methodName: 'openSync',
|
|
1484
|
-
isModule: true,
|
|
1485
|
-
}
|
|
1486
|
-
],
|
|
1487
|
-
[
|
|
1488
|
-
'fs.mkdir',
|
|
1489
|
-
{
|
|
1490
|
-
moduleName: 'fs',
|
|
1491
|
-
methodName: 'mkdir',
|
|
1492
|
-
isModule: true,
|
|
1493
|
-
}
|
|
1494
|
-
],
|
|
1495
|
-
[
|
|
1496
|
-
'fs.mkdirSync',
|
|
1497
|
-
{
|
|
1498
|
-
moduleName: 'fs',
|
|
1499
|
-
methodName: 'mkdirSync',
|
|
1500
|
-
isModule: true,
|
|
1501
|
-
}
|
|
1502
|
-
],
|
|
1503
|
-
[
|
|
1504
|
-
'fs.readlink',
|
|
1505
|
-
{
|
|
1506
|
-
moduleName: 'fs',
|
|
1507
|
-
methodName: 'readlink',
|
|
1508
|
-
isModule: true,
|
|
1509
|
-
}
|
|
1510
|
-
],
|
|
1511
|
-
[
|
|
1512
|
-
'fs.readlinkSync',
|
|
1513
|
-
{
|
|
1514
|
-
moduleName: 'fs',
|
|
1515
|
-
methodName: 'readlinkSync',
|
|
1516
|
-
isModule: true,
|
|
1517
|
-
}
|
|
1518
|
-
],
|
|
1519
|
-
[
|
|
1520
|
-
'fs.symlink',
|
|
1521
|
-
{
|
|
1522
|
-
moduleName: 'fs',
|
|
1523
|
-
methodName: 'symlink',
|
|
1524
|
-
isModule: true,
|
|
1525
|
-
}
|
|
1526
|
-
],
|
|
1527
|
-
[
|
|
1528
|
-
'fs.symlinkSync',
|
|
1529
|
-
{
|
|
1530
|
-
moduleName: 'fs',
|
|
1531
|
-
methodName: 'symlinkSync',
|
|
1532
|
-
isModule: true,
|
|
1533
|
-
}
|
|
1534
|
-
],
|
|
1535
|
-
[
|
|
1536
|
-
'fs.chmod',
|
|
1537
|
-
{
|
|
1538
|
-
moduleName: 'fs',
|
|
1539
|
-
methodName: 'chmod',
|
|
1540
|
-
isModule: true,
|
|
1541
|
-
}
|
|
1542
|
-
],
|
|
1543
|
-
[
|
|
1544
|
-
'fs.chmodSync',
|
|
1545
|
-
{
|
|
1546
|
-
moduleName: 'fs',
|
|
1547
|
-
methodName: 'chmodSync',
|
|
1548
|
-
isModule: true,
|
|
1549
|
-
}
|
|
1550
|
-
],
|
|
1551
|
-
[
|
|
1552
|
-
'fs.lchmod',
|
|
1553
|
-
{
|
|
1554
|
-
moduleName: 'fs',
|
|
1555
|
-
methodName: 'lchmod',
|
|
1556
|
-
isModule: true,
|
|
1557
|
-
}
|
|
1558
|
-
],
|
|
1559
|
-
[
|
|
1560
|
-
'fs.lchmodSync',
|
|
1561
|
-
{
|
|
1562
|
-
moduleName: 'fs',
|
|
1563
|
-
methodName: 'lchmodSync',
|
|
1564
|
-
isModule: true,
|
|
1565
|
-
}
|
|
1566
|
-
],
|
|
1567
|
-
[
|
|
1568
|
-
'fs.chown',
|
|
1569
|
-
{
|
|
1570
|
-
moduleName: 'fs',
|
|
1571
|
-
methodName: 'chown',
|
|
1572
|
-
isModule: true,
|
|
1573
|
-
}
|
|
1574
|
-
],
|
|
1575
|
-
[
|
|
1576
|
-
'fs.chownSync',
|
|
1577
|
-
{
|
|
1578
|
-
moduleName: 'fs',
|
|
1579
|
-
methodName: 'chownSync',
|
|
1580
|
-
isModule: true,
|
|
1581
|
-
}
|
|
1582
|
-
],
|
|
1583
|
-
[
|
|
1584
|
-
'fs.lchown',
|
|
1585
|
-
{
|
|
1586
|
-
moduleName: 'fs',
|
|
1587
|
-
methodName: 'lchown',
|
|
1588
|
-
isModule: true,
|
|
1589
|
-
}
|
|
1590
|
-
],
|
|
1591
|
-
[
|
|
1592
|
-
'fs.lchownSync',
|
|
1593
|
-
{
|
|
1594
|
-
moduleName: 'fs',
|
|
1595
|
-
methodName: 'lchownSync',
|
|
1596
|
-
isModule: true,
|
|
1597
|
-
}
|
|
1598
|
-
],
|
|
1599
1307
|
[
|
|
1600
1308
|
'querystring.escape',
|
|
1601
1309
|
{
|
|
@@ -2404,6 +2112,15 @@ export const signatures: Map<string, any> = new Map(
|
|
|
2404
2112
|
isModule: true,
|
|
2405
2113
|
}
|
|
2406
2114
|
],
|
|
2115
|
+
[
|
|
2116
|
+
'Express.Response.location',
|
|
2117
|
+
{
|
|
2118
|
+
moduleName: 'express',
|
|
2119
|
+
version: '>=4.0.0 <5.0.0',
|
|
2120
|
+
methodName: 'Response.location',
|
|
2121
|
+
isModule: true,
|
|
2122
|
+
}
|
|
2123
|
+
],
|
|
2407
2124
|
[
|
|
2408
2125
|
'serve-static',
|
|
2409
2126
|
{
|
|
@@ -2412,5 +2129,5 @@ export const signatures: Map<string, any> = new Map(
|
|
|
2412
2129
|
isModule: true,
|
|
2413
2130
|
}
|
|
2414
2131
|
]
|
|
2415
|
-
]
|
|
2132
|
+
] as [string, Signature][]
|
|
2416
2133
|
);
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright: 2022 Contrast Security, Inc
|
|
3
|
+
* Contact: support@contrastsecurity.com
|
|
4
|
+
* License: Commercial
|
|
5
|
+
|
|
6
|
+
* NOTICE: This Software and the patented inventions embodied within may only be
|
|
7
|
+
* used as part of Contrast Security’s commercial offerings. Even though it is
|
|
8
|
+
* made available through public repositories, use of this Software is subject to
|
|
9
|
+
* the applicable End User Licensing Agreement found at
|
|
10
|
+
* https://www.contrastsecurity.com/enduser-terms-0317a or as otherwise agreed
|
|
11
|
+
* between Contrast Security and the End User. The Software may not be reverse
|
|
12
|
+
* engineered, modified, repackaged, sold, redistributed or otherwise used in a
|
|
13
|
+
* way not consistent with the End User License Agreement.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
const collectionSignatures: [string, any][] = [
|
|
17
|
+
'find',
|
|
18
|
+
'findOne',
|
|
19
|
+
'findAndModify',
|
|
20
|
+
'findOneAndDelete',
|
|
21
|
+
'findOneAndReplace',
|
|
22
|
+
'findOneAndUpdate',
|
|
23
|
+
'remove',
|
|
24
|
+
'removeOne',
|
|
25
|
+
'replaceOne',
|
|
26
|
+
'removeMany',
|
|
27
|
+
'save',
|
|
28
|
+
'update',
|
|
29
|
+
'updateOne',
|
|
30
|
+
'updateMany',
|
|
31
|
+
'deleteOne',
|
|
32
|
+
'deleteMany',
|
|
33
|
+
].map((method) => [
|
|
34
|
+
`mongodb.Collection.prototype.${method}`,
|
|
35
|
+
{
|
|
36
|
+
moduleName: 'mongodb',
|
|
37
|
+
methodName: `Collection.prototype.${method}`,
|
|
38
|
+
isModule: true,
|
|
39
|
+
}
|
|
40
|
+
]);
|
|
41
|
+
|
|
42
|
+
const dbSignatures: [string, any][] = [
|
|
43
|
+
'command',
|
|
44
|
+
'eval'
|
|
45
|
+
].map((method) => [
|
|
46
|
+
`mongodb.Db.prototype.${method}`,
|
|
47
|
+
{
|
|
48
|
+
moduleName: 'mongodb',
|
|
49
|
+
methodName: `Db.prototype.${method}`,
|
|
50
|
+
isModule: true,
|
|
51
|
+
}
|
|
52
|
+
]);
|
|
53
|
+
|
|
54
|
+
const mongodb: Map<string, any> = new Map([
|
|
55
|
+
...collectionSignatures,
|
|
56
|
+
...dbSignatures
|
|
57
|
+
]);
|
|
58
|
+
|
|
59
|
+
export default mongodb;
|
package/src/signatures/mssql.ts
CHANGED
|
@@ -13,14 +13,16 @@
|
|
|
13
13
|
* way not consistent with the End User License Agreement.
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
+
import { Signature } from '../types';
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
|
|
19
|
+
const mssql = new Map<string, Signature>([
|
|
18
20
|
[
|
|
19
21
|
'mssql/lib/base/prepared-statement.prototype.prepare',
|
|
20
22
|
{
|
|
21
23
|
moduleName: 'mssql',
|
|
22
24
|
version: '>=6.4.0',
|
|
23
|
-
|
|
25
|
+
fileName: 'lib/base/prepared-statement.js',
|
|
24
26
|
methodName: 'PreparedStatement.prototype.prepare',
|
|
25
27
|
isModule: true,
|
|
26
28
|
},
|
|
@@ -30,7 +32,7 @@ const mssql: Map<string, any> = new Map([
|
|
|
30
32
|
{
|
|
31
33
|
moduleName: 'mssql',
|
|
32
34
|
version: '>=6.4.0',
|
|
33
|
-
|
|
35
|
+
fileName: 'lib/base/request.js',
|
|
34
36
|
methodName: 'Request.prototype.batch',
|
|
35
37
|
isModule: true,
|
|
36
38
|
},
|
|
@@ -40,11 +42,11 @@ const mssql: Map<string, any> = new Map([
|
|
|
40
42
|
{
|
|
41
43
|
moduleName: 'mssql',
|
|
42
44
|
version: '>=6.4.0',
|
|
43
|
-
|
|
45
|
+
fileName: 'lib/base/request.js',
|
|
44
46
|
methodName: 'Request.prototype.query',
|
|
45
47
|
isModule: true,
|
|
46
48
|
},
|
|
47
49
|
],
|
|
48
|
-
]);
|
|
50
|
+
] as [string, Signature][]);
|
|
49
51
|
|
|
50
52
|
export default mssql;
|
package/src/types.ts
CHANGED
|
@@ -21,6 +21,17 @@ export interface Installable {
|
|
|
21
21
|
uninstall?(): void | Promise<void>;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
export interface Signature {
|
|
25
|
+
moduleName: string;
|
|
26
|
+
methodName: string;
|
|
27
|
+
fileName?: string;
|
|
28
|
+
version?: string;
|
|
29
|
+
isModule: boolean;
|
|
30
|
+
isConstructor?: boolean;
|
|
31
|
+
source?: 'O' | 'P' | 'R';
|
|
32
|
+
target?: 'O' | 'P' | 'R';
|
|
33
|
+
}
|
|
34
|
+
|
|
24
35
|
export interface AppInfo {
|
|
25
36
|
os: {
|
|
26
37
|
type: string;
|
|
@@ -40,6 +51,7 @@ export interface AppInfo {
|
|
|
40
51
|
serverName: string;
|
|
41
52
|
serverEnvironment: string;
|
|
42
53
|
version: string;
|
|
54
|
+
session_id: string | null;
|
|
43
55
|
}
|
|
44
56
|
|
|
45
57
|
export type CommonRules =
|