|
|
|
|
|
by aeijdenberg
3470 days ago
|
|
The problem I've found is that when we start using cute tricks like the old "xxx" % locals(), or the newer f-strings, is that we tend to start forgetting basics like escaping the strings that we're substituting in. For the example above, this might be fine, but most examples that I see using this kind of thing are things like: "select * from foo where id = '%s'"
or
"<input type='hidden' name='foo' value='%s'/>"
or
"rm -rf /path/to/customer/%s" I tend to think that in general appending strings is more often than not quite a dangerous operation, and it behooves the caller to need to have a long think about exactly how the strings being substituted in need to be escaped - as it's pretty rare that they don't need to be. |
|