Перечислимое имя строки от значения

** Предупреждение: подход, описанный в этом ответе, применим только к очень конкретным сценариям и не является безопасным, поскольку атаки SQL-инъекции не только полагаются на возможность вставлять X=Y. **

Если злоумышленники пытаются взломать форму с помощью переменной PHP $_GET или с помощью строки запроса URL, вы сможете поймать их, если они не защищены.

RewriteCond %{QUERY_STRING} ([0-9]+)=([0-9]+)
RewriteRule ^(.*) ^/track.php

Поскольку 1=1, 2=2, 1=2, 2=1, 1+1=2 и т. д. ... являются распространенными вопросами к базе данных SQL злоумышленника. Возможно, он также используется многими хакерскими приложениями.

Но вы должны быть осторожны, чтобы не переписывать безопасный запрос с вашего сайта. Вышеупомянутый код дает вам возможность переписать или перенаправить (зависит от вас) эту динамическую строку запроса, зависящую от хакерства, на страницу, в которой будет храниться IP-адрес злоумышленника или EVEN THEIR COOKIES, история , браузера или любой другой конфиденциальной информации, поэтому вы можете иметь дело с ними позже, запретив их учетную запись или контактные органы.

367
задан AustinWBryan 11 August 2019 в 06:29
поделиться

5 ответов

Можно преобразовать int назад участнику перечисления с простым броском, и затем звонить ToString():

int value = GetValueFromDb();
EnumDisplayStatus enumDisplayStatus = (EnumDisplayStatus)value;
string stringValue = enumDisplayStatus.ToString();
489
ответ дан AustinWBryan 23 November 2019 в 00:08
поделиться

можно просто бросить его

int dbValue = 2;
EnumDisplayStatus enumValue = (EnumDisplayStatus)dbValue;
string stringName = enumValue.ToString(); //Visible

ах.. Кент избил меня к нему:)

18
ответ дан Hath 23 November 2019 в 00:08
поделиться

DB к C#

EnumDisplayStatus status = (EnumDisplayStatus)int.Parse(GetValueFromDb());

C# к DB

string dbStatus = ((int)status).ToString();
12
ответ дан 23 November 2019 в 00:08
поделиться

Просто бросьте интервал к перечисляемому типу:

EnumDisplayStatus status = (EnumDisplayStatus) statusFromDatabase;
string statusString = status.ToString();
1
ответ дан Vivek Jain 23 November 2019 в 00:08
поделиться

я использовал этот код, приведенный ниже

 CustomerType = ((EnumCustomerType)(cus.CustomerType)).ToString()
2
ответ дан 23 November 2019 в 00:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: