سؤال

معالجة سيناريو غريب هنا.

نحن نستخدم تطبيقًا خاصًا لإدارة محطة العمل والذي يستخدم MySQL لتخزين بياناته.داخل التطبيق، يقدمون عددًا من التقارير، مثل المستخدم الذي قام بتسجيل الدخول إلى أي جهاز وفي أي وقت، وجميع منتجات البرامج المثبتة على الأجهزة المراقبة، وما إلى ذلك.نحن نتطلع إلى إنشاء مجموعة مختلفة من التقارير، إلا أنها لا تدعم التقارير المخصصة.

نظرًا لأنه يتم تخزين بياناتهم في MySQL، أعتقد أنه يمكنني القيام بإعداد التقارير يدويًا.ليس لدي بيانات اعتماد صالحة للاتصال بخادم MySQL بالرغم من ذلك. هل هناك أي طريقة بالنسبة لي لإنشاء حساب مستخدم في خادم MySQL؟ لا أرغب في إعادة تعيين كلمة مرور الجذر أو أي حساب قد يكون موجودًا هناك، حيث قد يؤدي ذلك إلى تعطيل التطبيق.


لدي حق الوصول الكامل إلى خادم Windows 2003.يمكنني إيقاف الخدمات وإعادة تشغيلها، بما في ذلك خادم MySQL.إلى خادم MySQL الفعلي، ليس لدي وصول أساسي إلا من خلال واجهة المستخدم الرسومية التي يوفرها البرنامج.لا يمكنني الاتصال به مباشرة من خلال CLI أو من خلال أداة أخرى (بسبب نقص بيانات الاعتماد).


أعتذر إذا حدث ذلك كما لو كنت أحاول الوصول غير المصرح به إلى خادم MySQL.لقد اتصلت بشركة البرمجيات، وحتى اليوم مر أسبوعان دون رد منهم.أحتاج للوصول إلى البيانات.لدي حق الوصول الكامل إلى الصندوق الفعلي، ولدي امتيازات المسؤول عليه.

هل كانت مفيدة؟

المحلول

ستحتاج إلى استخدام عملية استرداد كلمة مرور MySQL.يتبع هذه التعليمات, ، باستثناء استبدال استعلام إعادة تعيين كلمة المرور باستعلام إلى إضافة مستخدم جديد.سيكون استعلام المستخدم الجديد شيئًا مثل:

GRANT ALL ON *.* TO 'myuser'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

سيؤدي ذلك إلى إنشاء مستخدم جديد "myuser" بكلمة المرور "mypassword"، والذي يمكنه تسجيل الدخول إلى MySQL من خلال واجهة سطر الأوامر (CLI) للنظام المحلي.يمكنك بعد ذلك استخدام واجهة المستخدم الرسومية لمسؤول MySQL (حمل هنا) وتحديث أذونات المستخدم حتى تتمكن من تسجيل الدخول من أنظمة أخرى على الشبكة.أو استخدم GRANT إفادة من CLI، إذا كان هذا هو أسلوبك أكثر.

نصائح أخرى

هل لديك حق الوصول إلى خادم MySQL المعني؟

كما هو الحال في، ما هو الوصول الذي لديك بما يتجاوز ما يمكن للمستخدم العادي؟يجب أن تحاول المرور عبر تلك الطرق قبل "اختراق" طريقك إلى هناك، حيث قد يكون ذلك ممكنًا أو لا يكون ممكنًا باستخدام هذا البرنامج.

من المحتمل أن تكون هناك مشغلات من جانب قاعدة البيانات تحتفظ بسجل، لذلك عندما تخترق نفسك في قاعدة البيانات، سيعرفون متى وكيف فعلت ذلك.ليست فكرة جيدة.

أفترض أنني لا يجب أن أجيب على هذا السؤال، لكنه ممتع للغاية.

ينظر الى هذا صفحة حول حقن SQL.ينبغي أن يغطي احتياجاتك.هذا تعرض الصفحة كيفية إضافة حسابات مستخدمين إلى MySQL

سأحاول إدخال ما يلي في حقول إدخال المستخدم العشوائية:

p'; INSERT INTO user VALUES

('localhost' ، 'mynewadmin' ، كلمة المرور ('some_pass') ، 'y' ، 'y' ، 'y' ، 'y' ، 'y' ، 'y' ، 'y' ، 'y' ، 'y '،' y '،' y '،' y '،' y '،' y ') ؛

وثم

p'; FLUSH PRIVILEGES;

ص';يهدف إلى إغلاق السؤال العادي.على سبيل المثال - السؤال العادي هو:

"Select Adress from cusomers where custName = ' + $INPUT + ';

يصبح

    Select Adress from cusomers where custName = 'p'; INSERT INTO user 
VALUES('localhost','myNewAdmin',PASSWORD('some_pass'), 
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'); 

الشيء الوحيد الذي يتبادر إلى الذهن هو استنشاق اتصالات قاعدة البيانات ونأمل ألا تكون مشفرة.إذا كان مشفرًا، فحاول تغيير التكوين بحيث لا يستخدم SSL وأعد تشغيل mysql.الشم الجيد الذي أستخدمه هو وايرشارك

من وثائق الخلية 5.0:

يدعم MySQL الاتصالات الآمنة (المشفرة) بين عملاء MySQL والخادم باستخدام بروتوكول Secure Sockets Layer (SSL).يناقش هذا القسم كيفية استخدام اتصالات SSL.كما يصف طريقة لإعداد SSH على Windows.للحصول على معلومات حول كيفية مطالبة المستخدمين باستخدام اتصالات SSL ، راجع مناقشة شرط متطلبات بيان المنحة في القسم 12.5.1.3 ، "بناء جملة".

يهدف التكوين القياسي لـ MySQL إلى أن يكون في أسرع وقت ممكن ، لذلك لا يتم استخدام الاتصالات المشفرة افتراضيًا.القيام بذلك من شأنه أن يجعل بروتوكول العميل/الخادم أبطأ بكثير.تشفير البيانات هي عملية مكثفة في وحدة المعالجة المركزية تتطلب من الكمبيوتر القيام بعمل إضافي ويمكن أن يؤخر مهام MySQL الأخرى.بالنسبة للتطبيقات التي تتطلب الأمان الذي توفره الاتصالات المشفرة ، هناك ما يبرر حساب إضافي.

يسمح MySQL بتمكين التشفير على أساس كل توصيل.يمكنك اختيار اتصال عادي غير مشفر أو اتصال SSL مشفر آمن وفقًا لمتطلبات التطبيقات الفردية.

تعتمد الاتصالات الآمنة على واجهة برمجة تطبيقات OpenSSL وتتوفر من خلال MySQL C API.يستخدم النسخ المتماثل واجهة برمجة تطبيقات C ، لذلك يمكن استخدام اتصالات آمنة بين خوادم Master و Slave.

ربما تكون قد قمت بذلك بالفعل ولكن لا يزال - حاول البحث في ملفات تكوين التطبيقات.إذا لم يكن هناك شيء - حاول البحث في الملفات التنفيذية/شفرة المصدر - فربما يكون نصًا عاديًا إذا كنت محظوظًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top