|
| 1 | +// Copyright 2016 Documize Inc. <[email protected]>. All rights reserved. |
| 2 | +// |
| 3 | +// This software (Documize Community Edition) is licensed under |
| 4 | +// GNU AGPL v3 http://www.gnu.org/licenses/agpl-3.0.en.html |
| 5 | +// |
| 6 | +// You can operate outside the AGPL restrictions by purchasing |
| 7 | +// Documize Enterprise Edition and obtaining a commercial license |
| 8 | +// by contacting <[email protected]>. |
| 9 | +// |
| 10 | +// https://documize.com |
| 11 | + |
| 12 | +package stringutil |
| 13 | + |
| 14 | +import ( |
| 15 | + "strings" |
| 16 | +) |
| 17 | + |
| 18 | +// CleanDBValue returns like query minus dodgy characters. |
| 19 | +func CleanDBValue(filter string) string { |
| 20 | + filter = strings.ReplaceAll(filter, " ", "") |
| 21 | + filter = strings.ReplaceAll(filter, " ' ", "") |
| 22 | + filter = strings.ReplaceAll(filter, "'", "") |
| 23 | + filter = strings.ReplaceAll(filter, " ` ", "") |
| 24 | + filter = strings.ReplaceAll(filter, "`", "") |
| 25 | + filter = strings.ReplaceAll(filter, " \" ", "") |
| 26 | + filter = strings.ReplaceAll(filter, "\"", "") |
| 27 | + filter = strings.ReplaceAll(filter, " -- ", "") |
| 28 | + filter = strings.ReplaceAll(filter, "--", "") |
| 29 | + filter = strings.ReplaceAll(filter, ";", "") |
| 30 | + filter = strings.ReplaceAll(filter, ":", "") |
| 31 | + filter = strings.ReplaceAll(filter, "~", "") |
| 32 | + filter = strings.ReplaceAll(filter, "!", "") |
| 33 | + filter = strings.ReplaceAll(filter, "#", "") |
| 34 | + filter = strings.ReplaceAll(filter, "%", "") |
| 35 | + filter = strings.ReplaceAll(filter, "*", "") |
| 36 | + filter = strings.ReplaceAll(filter, "\\", "") |
| 37 | + filter = strings.ReplaceAll(filter, "/", "") |
| 38 | + filter = strings.ReplaceAll(filter, "union select", "") |
| 39 | + filter = strings.ReplaceAll(filter, "UNION SELECT", "") |
| 40 | + filter = strings.ReplaceAll(filter, " from ", "") |
| 41 | + filter = strings.ReplaceAll(filter, " FROM ", "") |
| 42 | + filter = strings.ReplaceAll(filter, " OR 1=1 ", "") |
| 43 | + filter = strings.ReplaceAll(filter, " OR 1=1 ", "") |
| 44 | + filter = strings.ReplaceAll(filter, " = ", "") |
| 45 | + filter = strings.ReplaceAll(filter, "=", "") |
| 46 | + |
| 47 | + filter = strings.TrimSpace(filter) |
| 48 | + |
| 49 | + return filter |
| 50 | +} |
0 commit comments