SQL Injection Koruması

lmaohw

Premium Üye
Premium Üye
MT Üye
Mesaj
416
Çözümler
23
Beğeni
209
Puan
744
Ticaret Puanı
0
CommonDefines.h:
Genişlet Daralt Kopyala
//UYGUN YERE EKLE   

#define ENABLE_SQL_INJECT_CONTROL_ON_QUERY                                            // Sql Inject Protect

log.cpp:
Genişlet Daralt Kopyala
// BUL

void LogManager::Query(const char * c_pszFormat, ...)


// FONKSİYONU KOMPLE DEĞİŞTİR

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
}

db.cpp:
Genişlet Daralt Kopyala
// BUL

void DBManager::Query(const char * c_pszFormat, ...)

// FONKSİYONU KOMPLE DEĞİŞTİR

void DBManager::Query(const char* c_pszFormat, ...)
{
    char szQuery[4096];
    va_list args;

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

#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
}

// BUL

SQLMsg* DBManager::DirectQuery(const char* c_pszFormat, ...)

// FONKSİYONU KOMPLE DEĞİŞTİR

SQLMsg* DBManager::DirectQuery(const char* c_pszFormat, ...)
{
    char szQuery[4096];
    va_list args;

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

#ifdef ENABLE_SQL_INJECT_CONTROL_ON_QUERY
    std::string sQuery(szQuery);
    return m_sql_direct.DirectQuery(sQuery.substr(0, sQuery.find_first_of(";") == -1 ? sQuery.length() : sQuery.find_first_of(";")).c_str());
#else
    return m_sql_direct.DirectQuery(szQuery);
#endif
}
 
2:
Genişlet Daralt Kopyala
    std::string sQuery(szQuery);
    m_sql.AsyncQuery(sQuery.substr(0, sQuery.find_first_of(";") == std::string::npos ? sQuery.length(): sQuery.find_first_of(";")).c_str());
 
Geri
Üst