
Vibe Reverse Engineer with IDA SQL: واجهة لـ IDA بلغة SQL عبر جداول افتراضية حيّة
امنح أي وكيل ذكاء اصطناعي القدرة على فهم الملفات الثنائية المترجمة.
IDASQL هي واجهة SQL لقواعد بيانات IDA Pro، أنشأها Elias Bachaalany. تُتيح أكثر من 30 جدولًا افتراضيًا تغطي الدوال، والمراجع المتقاطعة، والسلاسل النصية، والأنواع، والواردات، وفك التجميع، وفك الترجمة. استخدم مهارات /idasql من وكيل البرمجة لديك للعمل بشكل كامل بدون واجهة رسومية -- إذ يشغّل الوكيل IDA في الخلفية نيابةً عنك -- أو افتح واجهة IDA وتعاون مع وكيل البرمجة لديك في الهندسة العكسية معًا. لا حاجة إلى IDAPython. لا برمجة نصية. فقط SQL.
لماذا SQL؟ SQL هي لغة الاستعلامات العالمية التي تتحدث بها كل وكلاء الذكاء الاصطناعي بالفعل. IDASQL لا تعتمد على وكيل محدد: Claude وChatGPT وCopilot وCursor والوكلاء المخصصون، أو حتى بدون أي وكيل. أي أداة يمكنها إصدار استعلام SQL يمكنها تحليل ملف ثنائي.
تدعم IDASQL تحليل التعليقات التوضيحية وربطها المرجعي ونقلها بين قاعدة بيانات واحدة أو أكثر في الوقت نفسه. ما يمكنك فعله محدود فقط بخيالك وقوة النموذج الذي تستخدمه.
يمتلك IDA Pro بالفعل تنسيق قاعدة بيانات خاصًا به يصف الدوال والسلاسل النصية والمراجع المتقاطعة والأنواع والمزيد. تقوم IDASQL بربط هذه البنى الداخلية بجداول SQL افتراضية مباشرة SQL virtual tables. لا توجد خطوة تصدير أو فهرسة منفصلة -- تُنفَّذ الاستعلامات مباشرة على قاعدة بيانات IDA وتنعكس التغييرات مباشرةً.
| الوضع | طريقة البدء | الأنسب لـ |
|---|---|---|
| واجهة سطر أوامر مستقلة | idasql -s binary.i64 -i | SQL مباشر، برمجة نصية، خطوط أنابيب |
| إضافة IDA | اختر idasql من القائمة المنسدلة لواجهة أوامر IDA | SQL داخل الواجهة الرسومية، قاعدة بيانات حية |
| سير عمل المهارة | /idasql:connect في واجهة أوامر البرمجة لديك | تحليل بقيادة الذكاء الاصطناعي -- حيث يصدر الوكيل استعلامات SQL بشكل مستقل |
| You / Agent --> Natural language or SQL |
|
/idasql skills (LLM translates intent to SQL)
|
IDASQL --> IDA database(s)
|
Results --> LLM summarizes & reasons
Please provide the Markdown content to translate.```
$ idasql -s WerFaultTool.exe.i64 -q "SELECT * FROM funcs LIMIT 5"
Opening: WerFaultTool.exe.i64...
Database opened successfully.
+------+-------------------------------------------------+------+----------+-------+
| addr | name | size | end_addr | flags |
+------+-------------------------------------------------+------+----------+-------+
| 16 | WerFaultTool.AboutForm::.ctor | 13 | 29 | 4096 |
| 32 | WerFaultTool.AboutForm::Dispose | 30 | 62 | 4096 |
| 64 | WerFaultTool.AboutForm::InitializeComponent | 295 | 359 | 4096 |
| 400 | WerFaultTool.WerFaultGUI::.ctor | 936 | 1336 | 4096 |
| 1344 | WerFaultTool.WerFaultGUI::CreateDynamicControls | 231 | 1575 | 4096 |
+------+-------------------------------------------------+------+----------+-------+
5 row(s)
أمر واحد. نتائج فورية. لا حاجة إلى برمجة نصية.
بعد تثبيت IDASQL CLI والملحق الإضافي، ابدأ وكيل البرمجة المفضل لديك وابدأ الهندسة العكسية عبر الأوامر النصية. يعمل IDASQL بالكامل دون واجهة رسومية -- وكيلك يدير IDA Pro: تشغيله، تحليله، فك ترجمته، إضافة التعليقات التوضيحية عليه، وحفظه -- أو يُستضاف داخل واجهة IDA الرسومية حيث تتعاون مع وكيلك في الوقت الفعلي.
افتح وكيل البرمجة المفضل لديك (مثل Claude Code) واكتب:``` /idasql:connect Please open sample_malware.exe in the background and let's analyze it together.
يشغّل الوكيل IDASQL في الخلفية بدون واجهة رسومية. من هذه النقطة فصاعدًا، يمكنك الدردشة بشكل طبيعي مع قاعدة البيانات. على سبيل المثال:```
/idasql:annotations Fully annotate the function I'm looking at, also use the decompiler skill.
يقوم النموذج بالتفكير بشكل مستقل في أفضل نهج لفهم الوظيفة، ويقوم بهندستها عكسيًا بالكامل، ويضيف التعليقات التوضيحية عليها.
عند الانتهاء، اطلب من الوكيل الحفظ والإغلاق:``` /idasql:connect Please save all databases and shut down IDASQL.
### العمل مع قواعد بيانات متعددة
يمكنك العمل مع قاعدتي بيانات أو أكثر في نفس الوقت. وجّه وكيلك:```
/idasql:connect In this folder, there are many *.exe files. Please use parallel agents to open IDASQL in the background and report how many functions each has.
ثم تابع:``` Tell me, how many strings all these databases have in common?
الوكيل يعمل مع جميع قواعد البيانات في نفس الوقت. يمكنك الربط المرجعي والمقارنة ونقل التعليقات التوضيحية بينها.
### العمل مع واجهة IDA
كل ما سبق يعمل بالمثل من واجهة IDA الرسومية. لتفعيل وكيلك مع جلسة IDA مفتوحة:
1. في موجه `idasql>` في IDA، اكتب: ```
.http start
الآن أصبح IDASQL وواجهة IDA الخاصة بك متصلين ويعملان معًا.
تمنحك مهارات IDASQL لوكيل البرمجة لديك تحكمًا كاملاً في قواعد بيانات IDA من خلال اللغة الطبيعية.
allthingsida/idasql-skills.ida.exe على ويندوز، ida على macOS/Linux)idasql --version من سطر الأوامرداخل Claude Code، قم بتشغيل:```text /plugin marketplace add allthingsida/idasql-skills
ثم قم بتثبيت المكوّن الإضافي `idasql` من هذا السوق. راجع [README لـ idasql-skills](https://github.com/allthingsida/idasql-skills#installation) لمعرفة مسارات التثبيت الخاصة بـ Codex وغيرها.
#### المهارات