Licence
MIT
Version
0.0.1
Deps
0
Vulns
0
Weekly
0
sql-sniffer
Given a string, will return an array of recognize phrases (if present within that string) that pertain to certain System, Data Dictionary, Anonymous Block, DML or DDL database function.
Usage
A simple watchdog for sensitive Database commands and transactions.
Installation
npm install sql-sniffer
Recognized Phrase Patterns:
All patterns are case insensitive
Key:
| symbol | function |
|---|---|
| * | any one of the folowing characters or combos--> ; ' " -- \ /* ' |
| ... | any white space between |
| ..W.. | any white space and/or words between |
| C | any "\w" character |
Patterns:
Category: Removal
| pattern | a.k.a. |
|---|---|
| *...truncate...table | * truncate table |
| *...drop...table | * drop table |
| *...drop...procedure | * drop procedure |
| *...drop...package | * drop package |
| *...drop...function | * drop function |
| *...drop...index | * drop index |
| *...drop...bitmap...index | * drop bitmap index |
| *...drop...unique...index | * drop unique index |
| *...drop...materialized...view | * drop materialized view |
| *...drop...view | * drop view |
| *...drop...trigger | * drop trigger |
| *...drop...type | * drop type |
| *...delete...from | * delete from |
| *...purge...table | * purge table |
| *...purge...recyclebin | * purge recyclebin |
Category: DDL
| pattern | a.k.a. |
|---|---|
| *...create...or...replace | * create or replace |
| *...create...table | * create table |
| *...alter...table | * alter table |
| *...create...procedure | * create table |
| *...create...package | * create package |
| *...create...function | * create function |
| *...create...index | * create index |
| *...alter...index..W..rebuild | * alter index [TEXT HERE] rebuild |
| *...alter...index..W..rename | * alter index [TEXT HERE] rename |
| *...create...bitmap...index | * create bitmap index |
| *...create...unique..index | * create unique index |
| *...create...materialized view | * create materialized view |
| *...create...view | * create view |
| *...alter...view | * alter view |
| *...create...trigger | * create trigger |
| *...create...type...as | * create type as |
Category: System
| pattern | a.k.a. |
|---|---|
| *...alter...system...set | * alter system |
| *...shutdown...normal | * shutdown normal |
| *...shutdown...immediate | * shutdown immediate |
| *...shutdown...transactional | * shutdown transactional |
| *...shutdown...abort | * shutdown abort |
Category: DML
| pattern | a.k.a. |
|---|---|
| *...update...set | * update set |
| *...insert...into | * insert into |
| *...insert...all...into | * insert all into |
| *...merge...into..W..using | * merge into [TEXT HERE] using |
Category: Anonymous Block
| pattern | a.k.a. |
|---|---|
| *...begin..W..;...end | begin [TEXT HERE]; end |
| *...sys.C | sys.[TEXT HERE] |
| *...execute immediate | execute immediate |
| *...&& | && |
Category: Data Dictionary
| pattern | a.k.a. |
|---|---|
| v$ | v$ |
| from..W..all_ | from [TEXT HERE] all_ |
| from..W..dba_ | from [TEXT HERE] dba_ |
| from..W..user_ | from [TEXT HERE] user_ |
Category: Additional Patterns
| pattern | a.k.a. |
|---|---|
| 1...=...1...-- | 1=1-- |
| 1...=...1...# | 1=1# |
| 1...=...1.../* | 1=1/* |
| '...1...'...=...'...1...-- | '1'='1-- |
| admin...'...-- | admin'-- |
| admin...'...# | admin'# |
| admin...'.../* | admin'/* |