Portál AbcLinuxu, 12. prosince 2025 07:16
Před časem jsem si napsal skript na stahování nových informací i balíčcích s ruby ve Fedoře, když jsem si soubory z VPSky skopíroval na lokální PC, abych tu VPSku poladil, nestačil jsem se divit co se mi na lokální VPSce děl a co může způsobit obyčejný bash skript v cronu.
#!/bin/bash
cd /srv/www/hosts/werzo.net/werzo.net/repo/centos/5/SRPMS
rm -fr new_pkgs;
for i in `repoquery 'ruby*' --repofrompath=f14-upd,ftp://ftp.fi.muni.cz/pub/linux/fedora/linux/updates/14/x86_64/ -s --quiet|sort|uniq`;
do
new_pkg=`echo $i|sed -e 's@fc14@el5.lpp@g'`
if [ ! -f $new_pkg ]; then
echo $i >> new_pkgs;
fi;
done
cd news
rm -fr *
for i in `cat ../new_pkgs`
do
if [ ! -f $i ]; then
wget ftp://ftp.fi.muni.cz/pub/linux/fedora/linux/updates/14/SRPMS/$i > /dev/null 2>&1
fi
done
for i in ../../testing/SRPMS/*
do
pkg=`echo $i|sed -e 's@el5.lpp@fc14@g' -e 's@../../testing/SRPMS/@@g'`
rm -fr $pkg
done
rm -fr libdmtx* libguestfs* qpid-cpp* redland* rubygem-boxgrinder* rubygem-cairo-* rubygem-gdk_pixbuf* rubygem-gio2* rubygem-glib2* rubygem-gtk2* rubygem-pango* rubygem-poppler* rubygem-rsvg2* ruby-gnome2* rubygem-scruffy* rubygem-vte-0.90.8-2.fc14.src.rpm rubygem-cloudservers* rubygem-gtksourceview2*
Tak mě napadlo, že otestuju pozornost uživatelů tohoto portálu. Kde se v tomto bashovém skriptu spouštěném z cronu nachází citlivé místo a proč? Schválně, kdo na to příjde jako první. ;)
Tiskni
Sdílej:
(Jojo, to ještě byla doba, kdy se balíčky vyráběly pod rootem :-O )A byl v té době v
rm defaultní --preserve-root?
Tenkrát ještě "rm -r" skutečně šlo do podadresářů a poctivě mazalo soubor po souboru (dnes to dělá tuším jádro).Tak o tom jádře dost pochybuju, máš k tomu nějaký zdroj?
Kde se v tomto bashovém skriptu spouštěném z cronu nachází citlivé místo ?Riadok č. 2, chýba tam sed -e.
rm -rf $foo misto rm -rf "$foo", taky neni zrovna dobry napad, obzvlast, kdyz hodnota $foo je brana z nekde vnejsku.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.