احصائياتى

الردود
9

المشاهدات
932
 
midoazoz
.:: عضو خبير ::.

    غير متواجد

المشاركات
663

+التقييم
0.26

تاريخ التسجيل
Nov 2019

الاقامة

نظام التشغيل

رقم العضوية
2314
2019-11-19, 05:40 PM
المشاركة 1
2019-11-19, 05:40 PM
المشاركة 1
افتراضي بكتات الدخول سورس احمد فاتحي
يا جدعان انا مليش في الثري دي ولا البروتتو ولا الجو ده
بس انا حلتلكم الايرورات الي بتجيلكم

وياريت حد يجرب ويقلي هيشتغل ولا لا

ولو لا هعدل الموضوع وانزلكم حل تاني بس نجرب ده الاول

اولا

هتفتح


كود:
Auth.cs 

امسح الي فيه وحط ده


كود:
using SomailProject.Network.Cryptography;
using System;
using System.IO;
using System.Text;

namespace 
SomailProject.Network.AuthPackets
{
    public 
unsafe class Authentications : Interfaces.IPacket
    
{
        public 
string Username;
        public 
string Password;
        public 
string Server;
        public 
string MacAddress;

        public 
Authentications()
        {
        }
        public 
void Deserialize(byte[] buffer)
        {
            if (
buffer.Length == 312)
            {
                
ushort length = BitConverter.ToUInt16(buffer, 0);

                if (
length == 312)
                {

                    
ushort type = BitConverter.ToUInt16(buffer, 2);
                    
byte[] temp = new byte[16];
                    if (
type == 1636)
                    {
                        
MemoryStream MS = new MemoryStream(buffer);
                        
BinaryReader BR = new BinaryReader(MS);
                        
BR.ReadUInt16();
                        
BR.ReadUInt16();
                        
Username = Encoding.Default.GetString(BR.ReadBytes(32)).Replace("\0", "");
                        
BR.ReadBytes(36);
                        var 
PasswordArray = BR.ReadBytes(32);
                        
LoaderEncryption.Decrypt(PasswordArray, 32);
                        
Password = Username;
                        
BR.ReadBytes(32);
                        
Server = Encoding.Default.GetString(BR.ReadBytes(16)).Replace("\0", ""); ;
                        
MacAddress = Encoding.Default.GetString(BR.ReadBytes(12)).Replace("\0", "");
                        
BR.Close();
                        
MS.Close();
                    }
                }
            }
            
//   Password ==  Username
            //    
        
}
        public 
byte[] ToArray()
        {
            throw new 
NotImplementedException();
        }
        public 
void Send(Client.GameState client)
        {
            throw new 
NotImplementedException();
        }
    }

}


namespace 
SomailProject.Network.Cryptography
{
    public class 
LoaderEncryption
    
{
        private static 
byte[] Key = 
        { 
            
180,
            
152, 
            
187, 
            
196,
            
231, 
            
208, 
            
204, 
            
120, 
            
177,
            
164,
            
184,
            
77, 
            
9,
            
125, 
            
114,
            
49,
            
9, 
            
191,
            
20, 
            
122,
            
9, 
            
39,
            
123,
            
17, 
            
115,
            
222, 
            
188, 
            
120, 
            
109, 
            
9, 
            
65,
            
206,
            
85, 
            
10, 
            
29, 
            
215, 
            
143, 
            
108, 
            
231,
            
114 
        
};
        public static 
void Encrypt(byte[] arr)
        {
            
int length = Key.Length;
            for (
int i = 0; i < arr.Length; i++)
            {
                
arr[i] ^= Key[i % length];
                
arr[i] ^= Key[(i + 1) % length];

            }
        }
        public static 
void Decrypt(byte[] arr, int size)
        {
            
int length = Key.Length;
            for (
int i = 0; i < size; i++)
            {
                
arr[i] ^= Key[(i + 1) % length];
                
arr[i] ^= Key[i % length];

            }
        }
    }
} 

هتخش ع LoaderEncryption.cs امسح الي فيه كله

ملف Forward زي مهو زي ما احمد منزله

بالنسبه ل program

هتبحث عن ده قبل متحطوا حاجه


كود:
static void AuthServer_OnClientReceive(byte[] buffer, int length, ClientWrapper arg3) 

اقفله وبدل بده


كود:
public static void AuthServer_OnClientReceive(byte[] buffer, int length, ClientWrapper arg3)
        {
            var 
player = arg3.Connector as Client.AuthClient;
            
AuthClient authClient = arg3.Connector as AuthClient;
            
player.Cryptographer.Decrypt(buffer, length);
            
player.Queue.Enqueue(buffer, length);
            while (
player.Queue.CanDequeue())
            {
                
byte[] packet = player.Queue.Dequeue();
                
ushort len = BitConverter.ToUInt16(packet, 0);
                if (
len == 312)
                {
                    
player.Info = new Authentications();
                    
player.Info.Deserialize(packet);
                    
player.Account = new AccountTable(player.Info.Username);
                    if (!
LoginBruteForce.AcceptJoin(arg3.IP))
                    {
                        
Console.WriteLine(string.Concat(new string[] { "Client > ", player.Info.Username, "was blocked address", arg3.IP, "!" }));
                        
arg3.Disconnect();
                        break;
                    }
                    
Forward Fw = new Forward();
                    
System.Console.WriteLine("UserName: {0} Password: {1} ServerName: {2} Online", player.Info.Username, player.Info.Password, player.Info.Server);
                    if (
player.Account.Username == player.Info.Username && player.Account.exists)
                    {
                        if (
player.Account.Password == player.Info.Password && player.Account.exists)
                        {
                            
Fw.Identifier = player.Account.GenerateKey();
                            
Kernel.AwaitingPool[Fw.Identifier] = player.Account;
                            
Fw.IP = GameIP;
                            
Fw.Port = GamePort;
                        }
                        else
                        {
                            
LoginBruteForce.ClientRegistred(arg3.IP);
                            
Fw.Type = Forward.ForwardType.InvalidInfo;
                        }
                    }
                    else
                    {
                        
Fw.Type = Forward.ForwardType.WrongAccount;
                    }
                    
player.Send(Fw);
                }
            }
        } 


وتبحث عن


كود:
static void GameServer_OnClientReceive(byte[] buffer, int length, ClientWrapper obj) 

اقفله وبدله بده


كود:
private static void GameServer_OnClientReceive(byte[] buffer, int length, ClientWrapper obj)
        {
            if (
obj.Connector == null)
            {
                
obj.Disconnect();
            }
            else
            {
                
GameState connector = obj.Connector as GameState;
                if (
connector.Exchange)
                {
                    
connector.Exchange = false;
                    
connector.Action = (byte)1;
                    
SomailProject.Network.Cryptography.GameCryptography gameCryptography = new SomailProject.Network.Cryptography.GameCryptography(Encoding.Default.GetBytes(Constants.GameCryptographyKey));
                    
byte[] numArray = new byte[length];
                    Array.
Copy((Array)buffer, (Array)numArray, length);
                    
gameCryptography.Decrypt(numArray, length);
                    
bool flag = false;
                    
int offset = 0;
                    for (
int x = 0; x < 80; x++)
                    {
                        if (
BitConverter.ToInt32(numArray, x) == 128)
                        {
                            if (
length >= 205)
                            {
                                
offset = x;
                                
flag = true;
                                
connector.Cryptography.Decrypt(buffer, length - 40);
                            }
                            else
                            {
                                
offset = x;
                                
connector.Cryptography.Decrypt(buffer, length);
                            }
                        }
                    }
                    
int int32 = BitConverter.ToInt32(buffer, offset);
                    
int index1 = offset + 4;
                    if (
int32 != 128)
                    {
                        
connector.Disconnect(true);
                    }
                    else
                    {
                        
byte[] bytes = new byte[128];
                        
int index2 = 0;
                        while (
index2 < int32)
                        {
                            
bytes[index2] = buffer[index1];
                            ++
index2;
                            ++
index1;
                        }
                        
string PublicKey = Encoding.Default.GetString(bytes);
                        
connector.Cryptography = connector.DHKeyExchange.HandleClientKeyPacket(PublicKey, connector.Cryptography);
                        if (!
flag)
                            return;
                        
byte[] buffer1 = new byte[40];
                        
Buffer.BlockCopy((Array)buffer, length - 40, (Array)buffer1, 0, 40);
                        
processData(buffer1, 40, connector);
                    }
                }
                else
                    
processData(buffer, length, connector);
            }
        } 

طبعا في ايرور مفيش مشكله

هتروح

المسار

Network_ AuthPackets

واعمل كلاس جديد اسمها

PacketLoginForce.cs

وضيف فيه ده


كود:



using System
;
using System.Threading;
using System.Collections.Generic;
using System.Collections.Concurrent;
using SomailProject;

namespace 
SomailProject.Network.Sockets
{
    public 
unsafe class LoginBruteForce
    
{
        public class 
ClientLogin
        
{
            public 
string IPAdres;
            public 
Time32 Timer;
            public 
uint Trying;
        }
        public static 
object SyncRoot;
        public static 
void CreatePoll()
        {
            
SyncRoot = new object();
            
World.Subscribe(new Action<int>(Work), 500, ThreadPriority.Normal);
        }
        public static 
void Work(int Time)
        {
            
ConcurrentQueue<int> concurrentQueue = new ConcurrentQueue<int>();
            
Time32 now = Time32.Now;
            foreach (
KeyValuePair<int, ClientLogin> current in Registered)
            {
                if (
now > current.Value.Timer.AddSeconds(30))
                {
                    if (
current.Value.Trying > 0)
                    {
                        
current.Value.Timer = Time32.Now;
                        
current.Value.Trying -= 1;
                    }
                    else
                    {
                        
concurrentQueue.Enqueue(current.Key);
                    }
                }
            }
            
int key = 0;
            while (
concurrentQueue.TryDequeue(out key))
            {
                
ClientLogin clientLogin;
                
Registered.TryRemove(key, out clientLogin);
            }
        }
        public static 
bool AcceptJoin(string Adres)
        {
            
int hashCode = Adres.GetHashCode();
            
ClientLogin clientLogin;
            return !
Registered.TryGetValue(hashCode, out clientLogin) || clientLogin.Trying < 5;
        }
        public static 
void ClientRegistred(string Adrres)
        {
            
//lock (SyncRoot)
            
{
                
int hashCode = Adrres.GetHashCode();
                
ClientLogin clientLogin;
                if (
Registered.TryGetValue(hashCode, out clientLogin))
                {
                    
clientLogin.Trying += 1;
                    
clientLogin.Timer = Time32.Now;
                }
                else
                {
                    
clientLogin = new ClientLogin();
                    
clientLogin.IPAdres = Adrres;
                    
clientLogin.Timer = Time32.Now;
                    
clientLogin.Trying = 1;
                    
Registered.TryAdd(hashCode, clientLogin);
                }
            }
        }
        public static 
ConcurrentDictionary<int, ClientLogin> Registered = new ConcurrentDictionary<int, ClientLogin>();
    }
} 

ومتنساش constant لل kay

كده هيشتغل بنسبه 100% يشباب انا مجربتش برده بس باذن الله يشتغل


قديم 2019-11-19, 05:56 PM
المشاركة 2
midoazoz
.:: عضو خبير ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
لو جالك ايرور بعد متعمل rebuild
هتلاقيه في

Authentication

خليها

Authentications

وبس تمام كده

قديم 2019-11-19, 06:24 PM
المشاركة 3
ALz3em
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
بص اصحبى الحل دا والحل التانى للاسف مش بيدخلوا على الجيم
بيتم الدخول على القنصل بيظهر ان الاكونت فتح
بس صفحة اللعبه بتفضل واقفه في نص الشريط ومش بيدخل
شكرا على تعبك

قديم 2019-11-19, 06:50 PM
المشاركة 4
Hazem
.:: المدير العام::.
  • متواجد  الان
افتراضي رد: بكتات الدخول سورس احمد فاتحي
نفس المشكله الاسم ذي كلمة السر

كود:
Password = Username; 


قديم 2019-11-19, 07:36 PM
المشاركة 5
midoazoz
.:: عضو خبير ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
عفواً لايمكن عرض الرابط إلا بعد الرد على الموضوع
بص اصحبى الحل دا والحل التانى للاسف مش بيدخلوا على الجيم
بيتم الدخول على القنصل بيظهر ان الاكونت فتح
بس صفحة اللعبه بتفضل واقفه في نص الشريط ومش بيدخل
شكرا على تعبك
تمام ولا يهمك
انا هحاول احمل الكلينت واشوف لان انا نزلتها من غير مجرب مجرد بصيت ع الاكواد بس
عموما هشوفها وهنزلها تاني باذن الله بالتجربه

قديم 2019-11-19, 09:13 PM
المشاركة 6
ALz3em
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
عفواً لايمكن عرض الرابط إلا بعد الرد على الموضوع
تمام ولا يهمك
انا هحاول احمل الكلينت واشوف لان انا نزلتها من غير مجرب مجرد بصيت ع الاكواد بس
عموما هشوفها وهنزلها تاني باذن الله بالتجربه
حبيبى تسلم في أنتظارك

قديم 2019-11-20, 12:16 AM
المشاركة 7
HBESA
.:: عضو مميز ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
طيب يسطي دلواتي بتوقف في نص مش بيردها يفتح اي الحل


قديم 2019-11-20, 12:34 PM
المشاركة 8
stafyx
.:: عضو نشيط ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
بيقف فى النص

قديم 2019-11-21, 09:51 AM
المشاركة 9
Rider
.:: نائب المدير ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
عاش + رجاء متابعة مشاكل الاعضاء

قديم 2019-11-29, 03:39 AM
المشاركة 10
Adel Abd El Hay
.:: عضو نشيط ::.
  • غير متواجد
افتراضي رد: بكتات الدخول سورس احمد فاتحي
مفيش حد وصل لجديد ف المشكله دي يارجاله ؟


العلامات المرجعية



الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

الانتقال السريع

المواضيع المتشابهه للموضوع: بكتات الدخول سورس احمد فاتحي
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
بكتات كونكر 3d Hazem تطوير سيرفرات كونكر 13 2020-11-07 09:08 PM
بخصوص السورس بتاع احمد فتحي بكتات الدخول midoazoz تطوير سيرفرات كونكر 3 2019-11-19 05:41 PM
مساعد في تركيب باكتات الدخول سورس احمد فتحي 3d AliNasser مشكلات السيرفيرات كونكر الشخصيه 9 2019-11-19 04:37 PM
يا جماعه انا عاوز حل مشكلة سورس ميسى عند الدخول yosefgamal987 مشكلات السيرفيرات كونكر الشخصيه 4 2019-09-24 11:37 AM


الساعة الآن 07:33 PM