Yığında herhangi bir ilgili web sunucusunda bir komut satırı (Bash) işlevi ile yapıyoruz,
monitor_outbound ()
{
tcpflow -p -c -i bond0 '( port 80 or port 443 ) and ' $(ip addr list | grep -Eoh "([0-9]{1,3}\.){3}[0-9]+" | sort -u | awk '{print "src host " $1 " or"}' | tr '\n' ' ' | sed -E 's# or $##g') | grep --line-buffered -oE '(GET|POST|HEAD) .* HTTP/1.[01]|Host: .*' | sed --unbuffered "s/^/$(date "+%b %d %T"): /g"
}
Bunun da ötesinde, Magento'daki CURL / fopen yöntemlerinden faydalanabilirsiniz (ancak bunu yapmak için çekirdek yöntemleri kullanmakla uğraşmadıkları varsayılır), çoğu zaman özel modüllerin açık file_get_contents()
veya curl
yöntemlerini kullandığını göreceksiniz .
Bir basitle hızlı bir kontrol yapabilirsiniz grep
(kodun gizlenmediği varsayılarak)
grep -ilrE "curl|file_get_contents|fopen|Zend_Http_Client" app/code/local app/code/community
@Marius'un aşağıda söylediği gibi, yöntemlerini base64
şifrelenmiş dizelerde gizleyebilecek gizlenmiş modülleri arayın.
grep -ilrE "eval[\t ]+\(" app/code/local app/code/community
Yukarıdaki CLI yöntemiyle ilgili tek sorun, giden HTTP istekleri için son derece etkili olsa da, HTTPS (trafiğin şifreli olduğu göz önüne alındığında) için işe yaramazsa, alacağınız en iyi şey bir IP / ana bilgisayar adıdır, ancak başka bir şey değildir.