noisiv 1
noisiv
Manwe Work 1
Manwe Work
mavzermete 1
mavzermete
kralhakan2009 1
kralhakan2009
Bodyguardd 1
Bodyguardd
Vahsi Uzman 1
Vahsi Uzman
[DEV]AB 1
[DEV]AB
R 1
Roksam
Hikaye Ekle

Ken Offline Shop Sql İnject fix

  • Konuyu başlatan Konuyu başlatan ThanosIsBack
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 2
  • Görüntüleme Görüntüleme 836
Ken pazar sistemini kullananların yapması gereken bir fixdir pazar isminin üzerinden yapılabilecek sql injectleri önlüyor.

Eğer Shop Decorasyon sistemi sizde yoksa SHOP_DECORASYON_SYSTEM service.h eklemeyin yada kaldırın.

Kod:
service.h ac ekle
#define ENABLER_OFFLINE_SHOP_SQL_INJECTION_FIX        //Offline shop sql injection fix

C++:
//char.cpp aç

//arat
snprintf(szQuery2, sizeof(szQuery2), "INSERT INTO %soffline_shop_npc(owner_id, sign, name

//değiştir
    // Insert
#ifdef ENABLER_OFFLINE_SHOP_SQL_INJECTION_FIX
    char szSign2[SHOP_SIGN_MAX_LEN+1];
    DBManager::instance().EscapeString(szSign2,sizeof( szSign2), c_pszSign, strlen(c_pszSign));
#endif
    char szQuery2[512];
#ifdef SHOP_DECORASYON_SYSTEM
#ifdef ENABLER_OFFLINE_SHOP_SQL_INJECTION_FIX
    snprintf(szQuery2, sizeof(szQuery2), "INSERT INTO %soffline_shop_npc(owner_id, sign, name, time, x, y, z, mapIndex, channel, level, align, npc, npc_decoration) VALUES(%u, '%s', '%s', %d, %ld, %ld, %ld, %ld, %d, %d, %d, %d, %d)", get_table_postfix(), GetPlayerID(), szSign2, GetName(), iTime, GetX(), GetY(), GetZ(), GetMapIndex(), g_bChannel, GetLevel(), GetAlignment(), m_npc_offline, m_npc_decoration);
#else
    snprintf(szQuery2, sizeof(szQuery2), "INSERT INTO %soffline_shop_npc(owner_id, sign, name, time, x, y, z, mapIndex, channel, level, align, npc, npc_decoration) VALUES(%u, '%s', '%s', %d, %ld, %ld, %ld, %ld, %d, %d, %d, %d, %d)", get_table_postfix(), GetPlayerID(), c_pszSign, GetName(), iTime, GetX(), GetY(), GetZ(), GetMapIndex(), g_bChannel, GetLevel(), GetAlignment(), m_npc_offline, m_npc_decoration);
#endif
#else
    snprintf(szQuery2, sizeof(szQuery2), "INSERT INTO %soffline_shop_npc(owner_id, sign, name, time, x, y, z, mapIndex, channel, level, align) VALUES(%u, '%s', '%s', %d, %ld, %ld, %ld, %ld, %d, %d, %d)", get_table_postfix(), GetPlayerID(), szSign, GetName(), iTime, GetX(), GetY(), GetZ(), GetMapIndex(), g_bChannel, GetLevel(), GetAlignment());
#endif
    DBManager::Instance().DirectQuery(szQuery2);


 
Son düzenleme:

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst