Belgelenen olarak Eh, Wikipedia ve netcat
dokümantasyon, bir orada -e
spawn bunu neden seçeneği ( e sürecinin Stdin, stdout ve stderr'e soket takılarak xecute) bir bağlantı aldıktan sonra bir program. Örnek kullanım:
nc -l -p
port_number -e
program_name
Örnekler genellikle program_adı olarak gösterilir /bin/sh
veya bash
kullanılır . Temel olarak makinenize anonim, şifresiz bir erişim portalı açtığı için bu seçeneğin kullanılması önerilmez. Tabii ki, bu, kabuktan daha az güce sahip bir program (bir kabuktan kaçma yeteneği olmayan) kullanarak, kullanımınızı en aza indirerek ve bir sır olarak saklayarak hafifletilir. Bununla birlikte, orijinal geliştiriciler, bu seçeneğin varsayılan olarak devre dışı bıraktıkları ve “GAPING_SECURITY_HOLE” derleme seçeneği altında koşullandırdıkları kötü bir fikir olduğunu yeterince hissettiler. Bu, bu NetCat Eğitimi ve diğer belgelerde kısaca belirtilmiştir .netcat
netcat
Bir Google araması bu sorunu diğer Stack Exchange sitelerinde tartışmamı sağladı: Yığın Taşması ve Sunucu Hatası . Birden katkıda kullanmadan aynı şeyi yapmak için aşağıdaki tekniğini sundu -e
seçeneği (bir sürümünde, yani netcat
o vardır -e
seçeneği devre dışı):
Sunucusunda:
mkfifo
pipe_name
nc -l -p
baglanti_noktasi_numarasi <
pipe_name |
program_name >
pipe_name
İstemcide:
nc
server_machine_name
port_number
Birkaç not:
- Bazı sürümlerinde
netcat
, -l
ima eder -p
, bu yüzden önce -l
ve sonra port numarasını söylemelisiniz .
- Çözümünüzü bir
while true
döngüye sarmak isteyebilirsiniz .