Najlepszy sposób na bezpieczne odczytanie parametrów ciągu zapytań?
Mamy projekt, który generuje fragment kodu, który można wykorzystać w różnych innych projektach. Celem kodu jest odczytanie dwóch parametrów z ciągu zapytania i przypisanie ich do atrybutu „src” elementu iframe.
Na przykład strona pod adresem URLhttp: //oursite/Page.aspx? a = 1 & b = 2 miałby w sobie JavaScript, aby odczytać parametry „a” i „b”. JavaScript ustawiłby wtedy atrybut „src” ramki iframe na podstawie tych parametrów. Na przykład „<iframe src =” http: //someothersite/Page.aspx? A = 1 & b = 2 ”/>”
Obecnie robimy to z kodem po stronie serwera, który używa biblioteki Anti Cross-Scripting firmy Microsoft do sprawdzania parametrów. Jednak pojawiło się nowe wymaganie, że musimy korzystać z JavaScript i że nie może on używać żadnych narzędzi JavaScript innych firm (takich jak jQuery lub Prototype).
Jednym ze znanych mi sposobów jest zastąpienie wszelkich wystąpień „<”, pojedynczego cudzysłowu i podwójnego cytowania z parametrów przed ich użyciem, ale nie wydaje mi się to wystarczająco bezpieczne.
Jednym z parametrów jest zawsze „P”, po którym następuje 9 liczb całkowitych. Drugim parametrem jest zawsze 15 znaków alfanumerycznych. (Dzięki Liam za sugestię, że to wyjaśniłem).
Czy ktoś ma dla nas jakieś sugestie?
Dziękuję Ci bardzo za Twój czas.