اصلاح ثغرة الحقن SQL inject Fix

" Only "

مشرف عام
طاقم الإدارة
مشرف
17 أكتوبر 2021
250
6
540
63
discordapp.com
الجنس
ذكر
السلام عليكم ورحمة الله تعالى وبركاته أسعد الله صباحكم ومسائكم

بكل مودة وسروور

شرحنا اليوم
ترقيع ثغرة الحقن
بسورس سيرفر
نتبع هدا المسار
Game-Db Source/Server/game/src/log.cpp

ادخل ورقة
log.cpp


أدخل وابحث عن​
C++:
نرجو منك تسجيل الدخول او تسجيل لتتمكن من رؤية الكود
استبدل Void​
C++:
نرجو منك تسجيل الدخول او تسجيل لتتمكن من رؤية الكود

قم بعمل تجميع للسورس ومبارك لك

 
  • Like
التفاعلات: Escobar

miladyouhanon

:: Lv2 ::
18 يناير 2021
27
4
3
الجنس
ذكر
ممكن شرح عن فكرة الحقن وليش لازم الواحد يعمل هالعملية وكيف فيني اعرف انو ملفاتي اللي شاريها بيلزمها ترقيع الثغرة.

مشكور ياغالي 💥
 

miladyouhanon

:: Lv2 ::
18 يناير 2021
27
4
3
الجنس
ذكر
void LogManager::Query(const char* c_pszFormat, ...)
{
LOG_LEVEL_CHECK_N_RET(LOG_LEVEL_MIN);

char szQuery[4096];
va_list args;

va_start(args, c_pszFormat);
vsnprintf(szQuery, sizeof(szQuery), c_pszFormat, args);
va_end(args);

if (test_server)
sys_log(0, "LOG: %s", szQuery);
#ifdef ENABLE_SQL_INJECT_CONTROL_ON_QUERY
std::string sQuery(szQuery);
m_sql.AsyncQuery(sQuery.substr(0, sQuery.find_first_of(";") == -1 ? sQuery.length() : sQuery.find_first_of(";")).c_str());
#else
m_sql.AsyncQuery(szQuery);
#endif
}​

هل هذا يكفي ليكون محمي ؟ أم انه بحاجة لتعديل ؟

وشكراً