Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
libnfc — مكتبة اتصال قريب المدى (NFC) مستقلة عن المنصة | Kitploit
أدوات/GitHubGitHub/nfc-tools/libnfc
أدوات RFID/NFCأمن الشبكات اللاسلكيةأمان الأجهزة وإنترنت الأشياء
GitHubnfc-tools/libnfc

libnfc

مكتبة اتصال قريب المدى (NFC) مستقلة عن المنصة

عرض المستودعالموقع الإلكتروني
2.0k480منذ سنة واحدةتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

*-

  • مكتبة الاتصال قريب المدى (NFC) الحرة/المفتوحة المصدر
  • المساهمون التاريخيون في Libnfc:
  • حقوق الطبع (C) 2009 Roel Verdult
  • حقوق الطبع (C) 2009-2015 Romuald Conty
  • حقوق الطبع (C) 2010-2012 Romain Tartière
  • حقوق الطبع (C) 2010-2013 Philippe Teuwen
  • حقوق الطبع (C) 2012-2013 Ludovic Rousseau
  • مساهمون إضافيون:
  • انظر ملف AUTHORS -*

معلومات عامة

libnfc هي مكتبة تتيح لتطبيقات فضاء المستخدم الوصول إلى أجهزة NFC.

الموقع الرسمي لم يعد متاحًا، يمكنك تصفح نسخة منه عبر WayBackMachine.

المنتدى الرسمي لم يعد متاحًا، يمكنك تصفح نسخة منه عبر WayBackMachine.

موقع التطوير الرسمي هو: https://github.com/nfc-tools/libnfc

ملاحظة مهمة: يغطي هذا الملف أنظمة POSIX، أما بالنسبة لنظام Windows فيرجى قراءة README-Windows.md

المتطلبات

تعتمد بعض تعريفات NFC على برامج طرف ثالث:

  • pn53x_usb وacr122_usb:

    • libusb-0.1 http://libusb.sf.net
  • acr122_pcsc:

    • pcsc-lite https://pcsclite.apdu.fr/
  • pcsc:

    • دعم البناء مع تعريف pcsc، والذي يمكن استخدامه مع جميع القرّاء المتوافقين، وقد اجتاز كل من Feitian R502 وbR500 الاختبار بالفعل.

تعتمد حزمة اختبارات الانحدار على إطار عمل cutter: http://cutter.sf.net

البناء

ملاحظة: إذا كنت تعمل مباشرة من استنساخ git للمستودع، فإن بعض الملفات تحتاج إلى التوليد أولاً. للقيام بذلك، شغّل autoreconf -vis

بدلاً من ذلك، استخدم نسخة .tar.bz2 من إصدار مُغلّف (والذي يحتوي بالفعل على ./configure): https://github.com/nfc-tools/libnfc/releases/

يجب أن يكون البناء ببساطة عبارة عن تشغيل هذه الأوامر:

root@kitploit:~
./configure
make

للبناء مع تعريف(ات) محددة، راجع الخيار --with-drivers=... المفصّل في ./configure --help.

التثبيت

root@kitploit:~
make install

قد تحتاج إلى منح صلاحيات لمستخدمك للتحكم في جهازك. في أنظمة GNU/Linux، إذا كنت تستخدم udev، يمكنك استخدام قواعد udev الموفّرة. على سبيل المثال: تحت Debian أو Ubuntu وما شابه.

root@kitploit:~
sudo cp contrib/udev/93-pn53x.rules /lib/udev/rules.d/

تحت FreeBSD، إذا كنت تستخدم devd، يوجد أيضًا ملف قواعد: contrib/devd/pn53x.conf.

الإعداد

من أجل تغيير السلوك الافتراضي للمكتبة، تستخدم libnfc ملف إعداد موجود في sysconfdir (كما هو موفَّر إلى ./configure).

يتوفر ملف نموذجي مضاف إليه التعليقات في المصادر: libnfc.conf.sample

إذا كنت قد بنيت باستخدام:

root@kitploit:~
./configure --prefix=/usr --sysconfdir=/etc

يمكنك إنشاء دليل الإعداد ونسخ الملف النموذجي:

root@kitploit:~
sudo mkdir /etc/nfc
sudo cp libnfc.conf.sample /etc/nfc/libnfc.conf

لتكوين أجهزة متعددة، يمكنك إما تعديل libnfc.conf أو إنشاء ملف لكل جهاز في دليل nfc/devices.d:

root@kitploit:~
sudo mkdir -p /etc/nfc/devices.d
printf 'name = "My first device"\nconnstring = "pn532_uart:/dev/ttyACM0"\n' | sudo tee /etc/nfc/devices.d/first.conf
printf 'name = "My second device"\nconnstring = "pn532_uart:/dev/ttyACM1"\n' | sudo tee /etc/nfc/devices.d/second.conf

متغيرات البيئة

يمكنك تجاوز بعض خيارات الإعداد وقت التشغيل باستخدام متغيرات البيئة التالية:

  • LIBNFC_DEFAULT_DEVICE=<connstring>: LIBNFC_DEFAULT_DEVICE=pn532_uart:/dev/ttyACM0 سيستخدم pn532 على /dev/ttyACM0 كجهاز افتراضي
  • LIBNFC_DEVICE=<connstring> سيتجاهل جميع الأجهزة في ملفات الإعداد ويستخدم فقط الجهاز المعرّف في المتغير
  • LIBNFC_AUTO_SCAN=<true|false> يتجاوز خيار allow_autoscan في ملف الإعداد
  • LIBNFC_INTRUSIVE_SCAN=<true|false> يتجاوز خيار allow_intrusive_scan في ملف الإعداد
  • LIBNFC_LOG_LEVEL=<0|1|2|3> يتجاوز خيار log_level في ملف الإعداد

للحصول على سلسلة الاتصال (connstring) لجهاز معترف به، يمكنك استخدام nfc-scan-device: سيعرض LIBNFC_AUTO_SCAN=true nfc-scan-device أسماء وسلاسل الاتصال لجميع الأجهزة التي تم العثور عليها.

كيفية الإبلاغ عن الأخطاء

للإبلاغ عن خطأ، قم بزيارة https://github.com/nfc-tools/libnfc/issues واملأ نموذج تقرير الخطأ.

إذا كانت لديك أسئلة أو ملاحظات، نشجعك على نشرها في مجتمع المطورين: http://www.libnfc.org/community

يرجى التأكد من تضمين:

  • إصدار libnfc

  • معلومات حول نظامك. على سبيل المثال:

    • ما نظام التشغيل وإصداره
    • بالنسبة لنظام Linux، ما إصدار مكتبة C

    وأي شيء آخر تعتقد أنه ذو صلة.

  • تتبع مع تفعيل التصحيح.

    أعد إنتاج الخطأ مع التصحيح، على سبيل المثال إذا كان:

    root@kitploit:~
      $ nfc-list -v
    

    شغّله كالتالي:

    root@kitploit:~
      $ LIBNFC_LOG_LEVEL=3 nfc-list -v
    
  • كيفية إعادة إنتاج الخطأ.

    يرجى تضمين برنامج اختبار قصير يُظهر السلوك.

    كحل أخير، يمكنك أيضًا تقديم مؤشر إلى قطعة أكبر

    من البرمجيات يمكن تنزيلها.

  • إذا كان الخطأ عبارة عن انهيار، فالنص المحدد الذي طُبع

    عند حدوث الانهيار.

  • قد تكون معلومات إضافية مثل تتبعات المكدس مفيدة، ولكنها

    ليست ضرورية.

التصحيحات

يمكن نشر التصحيحات على https://github.com/nfc-tools/libnfc/issues

إذا كان التصحيح يصلح خطأً، فمن الجيد عادةً تضمين جميع المعلومات الموصوفة في "كيفية الإبلاغ عن الأخطاء".

استكشاف الأخطاء وإصلاحها

Touchatag/ACR122:

إذا فشل اكتشاف جهاز Touchatag أو ACR122 الخاص بك بواسطة libnfc، فتأكد من أن خدمة PCSC-lite (pcscd) مثبتة وقيد التشغيل.

إذا فشل اكتشاف جهاز Touchatag أو ACR122 الخاص بك بواسطة خدمة PCSC-lite (لا يرى pcsc_scan أي شيء)، فجرّب إزالة اكتشاف البرنامج الثابت الزائف في libccid: حرّر ملف إعداد libccid_Info.plist (عادةً /etc/libccid_Info.plist) وحدد موقع <key>ifdDriverOptions</key>، وغيّر قيمة <string>0x0000</string> إلى 0x0004 للسماح بالأجهزة الزائفة وأعد تشغيل خدمة pcscd.

ACR122:

استخدام جهاز ACR122 مع libnfc وبدون بطاقة (مثلًا لاستخدام أوضاع NFCIP أو محاكاة البطاقة) يتطلب تعديلًا إضافيًا في PCSC-lite: تحتاج إلى السماح باستخدام أمر تبادل CCID. للقيام بذلك، حرّر ملف إعداد libccid_Info.plist (عادةً /etc/libccid_Info.plist) وحدد موقع <key>ifdDriverOptions</key>، وغيّر قيمة <string>0x0000</string> إلى 0x0001 للسماح بتبادل CCID أو 0x0005 للسماح بتبادل CCID والأجهزة الزائفة (راجع الملاحظة السابقة) وأعد تشغيل خدمة pcscd.

تحذير: إذا كنت تستخدم تعريفات ACS CCID (acsccid)، فإن ملف الإعداد يقع في مسار مشابه لما يلي: /usr/lib/pcsc/drivers/ifd-acsccid.bundle/Contents/Info.plist

SCL3711:

لا يمكن استخدام Libnfc بالتزامن مع تعريف PCSC الاحتكاري لجهاز SCL3711. يوجد حلان ممكنان:

  • إما ألا تثبّت تعريف SCL3711 إطلاقًا
  • أو توقف خدمة PCSC عندما تريد استخدام الأدوات المبنية على libnfc

جهاز PN533 USB على Linux >= 3.1:

منذ إصدار نواة Linux 3.1، يجب عدم تحميل عدد من وحدات النواة من أجل استخدام libnfc: "nfc" و"pn533" و"pn533_usb". لمنع النواة من تحميل هذه الوحدات تلقائيًا، يمكنك حظرها في ملف إعداد modprobe. هذا الملف موفَّر ضمن أرشيف libnfc:

root@kitploit:~
sudo cp contrib/linux/blacklist-libnfc.conf /etc/modprobe.d/blacklist-libnfc.conf

FEITIAN bR500 وR502:

يمكن أن تعمل Libnfc مع تعريف PCSC الاحتكاري لأجهزة bR500 وR502، وهو متاح بالفعل على معظم إعدادات Linux. لتفعيل دعم PCSC: ./configure --with-drivers=pcsc. القرّاء المعروف عملهم:

  • Feitian bR500
  • قارئ Feitian R502 ثنائي الواجهة
  • قارئ Feitian R502 CL (اللاطبقي)

هذه القرّاء مدعومة بواسطة CCID منذ الإصدار 1.4.25، تأكد من أن إصدار تعريف CCID لديك أكبر من أو يساوي 1.4.25.

على MacOS، يمكنك التحقق من إصدار CCID لديك باستخدام الأمر التالي، وإذا لزم الأمر، يمكنك تثبيت أحدث تعريف CCID من https://github.com/martinpaljak/osx-ccid-installer/releases

root@kitploit:~
grep -A 1 CFBundleShortVersionString /usr/local/libexec/SmartCardServices/drivers/ifd-ccid.bundle/Contents/Info.plist

على Linux، يمكنك التحقق من إصدار CCID لديك باستخدام الأمر التالي، وإذا لزم الأمر، يمكنك تثبيت أحدث تعريف CCID من https://ccid.apdu.fr/

root@kitploit:~
grep -A 1 CFBundleShortVersionString /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist

ملاحظات الملكية

FeliCa هي علامة تجارية مسجلة لشركة Sony Corporation. MIFARE هي علامة تجارية لشركة NXP Semiconductors. Jewel Topaz هي علامة تجارية لشركة Innovision Research & Technology. جميع العلامات التجارية الأخرى هي ملك لأصحابها المعنيين.

تنزيل الأداة