linux - واتساب - كيفية ارسال رسالة من الواتس اب لرقم غير مسجل




كيفية نقل البيانات إلى ملف بعيد عبر سفتب دون تخزين البيانات في ملف محلي في لينكس باش؟ (2)

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

في ما يلي مثال على شفرة سش الأصلية التي حصلت عليها:

echo "secret_data" | ssh [email protected] cat > secret_file;

هذا هو بالضبط ما أحتاج إليه، ولكن في شكل ما من أشكال:

sftp [email protected] put $secret_data secret_file;

في الأصل، أنا بحاجة إلى البيانات أبدا أن يتم تخزينها على ملف على الجهاز المحلي، والتعامل معها تماما من الذاكرة.

أي ردود تقدر. شكر.


إذا كان من الممكن استخدام النسخة الخاصة بك التي تم الاستيلاء عليها من سفتب، يمكنك استخدامها

echo "my secret data 2" | (exec 6<&0 ; ( echo put  /proc/self/fd/6 /tmp/secret | sftp [email protected]_host))

إيكسيك يعيد ستدين، الذي ينقل سر، إلى ملف آخر واصف، في هذه الحالة، 6. صدى الثاني يصدر الأمر سفتب لتنفيذ. ويستخدم نظام الملفات /proc/ ماجيك، و / بروك / سيلف ريديريكت تو /proc/<pid> من العملية التي تفتحه، و proc/<pid>/fd/6 اسم واصف الملف 6، والنسخ البيانات التي يقرأها من هناك إلى ملف على المضيف البعيد الخاص بك.

سيكون من الأسهل بكثير إذا كنت يمكن أن تستخدم نسخة اختراق من سكب، وهذا سوف تقرأ

echo "my secret data 2" | scp /proc/self/fd/0 [email protected]_host:/tmp/secret

الآن للاختراق: سفتب و سكب تأكد من أن الملف المحلي هو ملف عادي، ولكن / بروك / سيلف / فد / ... واصف الملف هي الأنابيب. يجب تعطيل الشيكات في شفرة المصدر.

بالنسبة إلى سفتب، يمكنك تعديل الملف سفتب-client.c: البحث عن كافة S_ISREG(...) واستبدالها ب 1

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


إنشاء قسم tmpfs في /etc/fstab (غير المخزنة على محرك الأقراص، فقط في الذاكرة)، وتخزين الملف هناك ومن ثم استخدام الأسلوب الخاص بك وصفها إذا كنت تريد حقا لتجنب تخزين الملف في القرص الصلب الخاص بك.

لقد قمت بإعداد هذه الطريقة /tmp و /var/log لتجنب الكتابة في جميع أنحاء محرك الأقراص الصلبة:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
none    /tmp/       tmpfs   size=15%    0   0




sftp