Kako prikriti ili sakriti kod iz naših bash skripti

Ponekad programiramo skriptu na Tresnuti i želimo da kod ovog NE bude vidljiv, odnosno da ne bude običan tekst. Kada govorimo o skrivanju koda, ispravan je izraz pomutiti, u mom slučaju želio sam zamutiti kod scenarij koji sam radio prije nekog vremena, uslužni program koji sam pronašao za to zove se: shc

shc Omogućuje nam zamračivanje koda, evo koraka za njegovu upotrebu:

1. Prvo ga moramo preuzeti

Preuzmite SHC v3.8.9

2. Nakon što smo je preuzeli, desnom tipkom miša kliknite komprimiranu datoteku i odaberite opciju koja kaže «Izvadi ovdje"ili nešto slično. Ovo će nam omogućiti da vidimo mapu koja se zove shc-3.8.9, ovdje vam pokazujem snimku zaslona njegovog sadržaja

3. U redu, recimo da je mapa na /home/usuario/Downloads/shc-3.8.9 Pa, otvorimo terminal i idemo na tu rutu (cd "/home/usuario/Downloads/shc-3.8.9"), a instalacija započinje ovdje.

 4. U terminalu koji se nalazi (kao što sam vam već rekao) u mapi shc-3.8.9, da bismo instalirali ovu aplikaciju moramo napraviti simboličku poveznicu datoteke shc-3.8.9.c a shc.c pa izvršavamo sljedeće:

ln -s shc-3.8.9.c shc.c

 4. Nakon uspostavljanja veze izvršavamo make install s root dopuštenjima (poslužit ćemo se sudo):

 sudo make install

 4. Zatražit će od nas lozinku i pričekat će trenutak, pričekat će da pritisnemo tipku [I] i pritisnite [Unesi], to jest da potvrđujemo da želimo instalirati softver. Nakon što se to učini, instalirat će se bez problema. Ostavljam vam snimak zaslona cijelog postupka pripreme i instalacije:

 


Kao što vidite na kraju, dobivam pogrešku, pogreška se odnosi na činjenicu da određena mapa ne postoji u mom sustavu, ako to vidite, jednostavno joj ne pridajte važnost ... čak i tako SHC je uspješno instaliran 😉
Pa mogu trčati sudo make install es POTREBNO instalirajte pakete: GCC y napraviti

5. Gotovo, to je to za instalaciju 😀

Kad ga instaliramo, samo trebamo naučiti kako ga koristiti. Pretpostavimo da u svom domu imamo skriptu koja se zove skripta.š i da je njegov sadržaj sljedeći:

#!/bin/bash
echo "Script de prueba para DesdeLinux.net"
exit

Prilikom izvršavanja ove skripte očito će nam pokazati poruku u terminalu: «Testna skripta za DesdeLinux.net" ili ne? ... Ali, sada ćemo prikriti taj kod.

U terminal stavljamo sljedeće i pritisnemo [Unesi]:

shc -v -f $HOME/script.sh

I bingo !! spreman 😀

Ovo nam je stvorilo dvije nove datoteke zajedno s našom skriptom, sada jesmo skripta.sh.x y skripta.sh.xc

script.sh.x - » Ovo je naša zamućena bash skripta, kad izvršimo, učinit će potpuno isto što i prva koju smo stvorili, razlika je u tome što je prva ako smo je otvorili uređivačem teksta (nano, kate, gedit itd.) mogli bismo jasno vidjeti njegov sadržaj, iako ako se otvorimo za skripta.sh.x jasno ćemo vidjeti da ne vidimo ništa ... LOL !!!, odnosno kod je 'šifriran' 🙂

script.sh.xc - » Ovo je naša skripta, ali na jeziku C ... ovo možemo izbrisati bez brige jer nam zapravo ne treba, pa, barem mi uopće ne bi trebalo 🙂

Na tehničkoj strani nema se puno što dodati, samo pojasnite da, koliko znam s ovim (skrivanje ili zamagljivanje bash skriptnog koda), to ne krši licence ili nešto slično. To pojašnjavam jer su me prije nekoliko mjeseci na Facebooku, kad sam spomenuo da sam naučio prikrivati ​​bash kod, neki korisnici upozorili da ovo krši licence ili nešto slično ... pa, koliko razumijem, licence se ne krše s ovim 😉

Veliko hvala Matias Gaston jer mi je prije nekog vremena spomenuo ovaj uslužni program

Ništa više za dodati, bilo kakva sumnja ili pitanje, žalba ili prijedlog javite mi.

Pozdrav 😀


44 komentara, ostavi svoj

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   xykyz dijo

    Nije da se licence krše, već prestaje biti slobodan softver ...

    1.    KZKG ^ Gaara dijo

      Da naravno. Poanta je u tome što postoje određene moje osobne skripte za koje ne želim da ih drugi vide, na primjer zato što jedna od tih skripti ima lozinku za običan tekst iz mog lokalnog MySQL-a ili nešto slično.

        1.    KZKG ^ Gaara dijo

          Zapravo svoje lozinke držim 'skrivenima' koristeći SHA (https://blog.desdelinux.net/como-saber-la-suma-md5-o-sha-de-una-palabra-oracion-o-archivo/), zatim u skripti zadržavam hash lozinke i ono što radim je da usporedim lozinku koju korisnik unese (spremim je s pročitanom), dobijem SHA zbroj i usporedim obje na kraju 🙂

          Svejedno, puno hvala na linku, već ga pregledam review

          pozdravi

        2.    Koristimo Linux dijo

          Točno! Odziv u ljusci koji traži lozinku dobra je alternativa.
          Živjeli! Pavao.

          1.    MSX dijo

            Ali ne pruža automatsko i bez nadzora izvršenje kao što je to slučaj na drugi način. 🙂

      1.    Willians vivanco dijo

        Stavljanje lozinki i ostalih pristupa ili ugrožavanje podataka u skriptu velika je pogreška. Te se informacije moraju spremiti u drugu datoteku s odgovarajućim dozvolama, tako da nećete morati zamagljivati ​​bash skriptu. Lako ha?

        1.    KZKG ^ Gaara dijo

          Problem s postojanjem podataka (varijable za prijavu, konfiguracije, itd.) U drugoj datoteci je taj što tada sustavu ili aplikaciji trebaju 2 datoteke da bi funkcionirao, dok ako pohranim što sigurnije sve u jednu datoteku, Pa trebala bi mi samo ta ... jedna datoteka.

          1.    Morpheus dijo

            Dobra je praksa odvojiti aplikaciju od podataka.
            Ili je to užasna praksa tvrdo kodirati podatke!
            http://es.wikipedia.org/wiki/Hard_code
            To nema nikakve veze sa sigurnosnim stavljanjem koda i podataka u istu datoteku. I još više, upravo suprotno ako tamo imate svoje lozinke !!

          2.    Willians vivanco dijo

            Cijena čitanja osjetljivih podataka iz druge datoteke zanemariva je pored troškova procesora potrebnih za "poništavanje" vašeg koda.

            S druge strane, bacate cijelu paradigmu modularnog razvoja, kladeći se na monolitni model koji, više nego dokazano, ima više problema nego rješenja.

          3.    MSX dijo

            A također da ako koristite dopuštenja koja će nužno uključivati ​​druge grupe / korisnike, trebat će vam i početna lozinka za izvršavanje prve skripte.

          4.    MSX dijo

            @KZKG gornji komentar je odgovor na vaš komentar
            @morpheus: apsolutno je u odnosu na određenu potrebu.

    2.    Morpheus dijo

      No, postoji besplatni softver sastavljen u binarnom obliku (što je više nego zamagljeno). Da je besplatan, podrazumijeva da je dostupan uz izvor, ali nema nikakve veze sa zamućivanjem (ili kompajliranjem, što je neophodno ako želim, na primjer, pokrenuti C program)

      1.    Willians vivanco dijo

        U slučaju kompiliranog slobodnog softvera, pitanje je zahtjeva jezika koji se koristi (ako programirate na C-u, morate kompajlirati da bi vaša aplikacija radila). I isto, uvijek, ako je to stvarno Slobodni softver, izvorni kod će biti dostupan.

  2.   Hyuuga_Neji dijo

    pjevušim Označavam određeni stupanj apatije da dijelimo kod, hahaha, da vidimo koliko ih na kraju počinje "zamagljivati ​​svoje kodove" da bismo postali ovisniji o njihovim rješenjima ...

    1.    KZKG ^ Gaara dijo

      Ne kažem da bi kôd trebao biti zamračen ili ne ... Dajem alate, svaki da ih koristi u skladu sa svojim potrebama.

      1.    komentator dijo

        Zamagliti kôd na ovoj stranici?

        Mislim da je dobra ideja udaljiti čitatelje jer smatram da su mnogi ljudi koji posjete ovaj blog sljedbenici slobodnog softvera, pa stoga ne dijelimo praksu zamagljivanja koda.

        1.    MSX dijo

          Očito niste pročitali razlog zbog kojeg KZKG tvrdi i zašto to objašnjava njegovu potrebu da zamuti skriptu.

          Hvala KZKG što ste podijelili vaše otkriće!

  3.   Gabriel dijo

    I tako virusi počinju kružiti u Linuxu ...

    Osobno NIKADA ne bih koristio nikakve zamućene skripte. Ne samo zbog sigurnosnih rizika, već zato što ako vam je skripta previše dragocjena za dijeljenje, bolje je stavite u * ulo; Sigurno mogu pronaći nekoga tko želi podijeliti svoje znanje.

    1.    KZKG ^ Gaara dijo

      Da li biste ikada upotrijebili skrivenu skriptu? Pa, VRLO dobro za vas, NIKADA ne bih upotrijebio skrivenu skriptu ... detalj je u tome što NIKADA nisam dijelio skrivenu skriptu, daleko od nje, a tamo je dragi prijatelju pogreška je prisutna prezent

      Kad god nešto učinim na Bashu, podijelim to bez vaganja ili uznemiravanja, što sam već radio u mnogim člancima ovdje 😀

      Dobrodošli na blog, zadovoljstvo vas je pročitati 😉

  4.   Percaff_TI99 dijo

    Gabriel, KZKG ^ Gaara već dijeli znanje, on ne stvara nijedan linux paket s skrivenim skriptama što bi moglo predstavljati kršenje licence, već samo otkriva programe koji mogu ili ne moraju biti korisni za vlastitu upotrebu, nije potrebno da bude bezobrazan, što se tiče virusa u linuxu nije tako jednostavno, evo dobrog članka o tome https://blog.desdelinux.net/virus-en-gnulinux-realidad-o-mito/.
    KZKG ^ Gaara Želio bih da napišete post o encfs-u i kriptografiji pomoću slika, to je tema koja mi se jako sviđa.
    Živjeli !!!

    1.    KZKG ^ Gaara dijo

      Hvala ti
      Zapravo nije da imam dovoljno znanja o encfs-u i kriptografiji, barem se ne osjećam dovoljno samopouzdano da objavim post i pretpostavim sumnje koje korisnici mogu imati 😀
      U ovoj temi nije da sam napredni korisnik ...
      Najviše što sam učinio je korištenje GPG-a za šifriranje datoteka, a što se tiče slika, najviše što sam učinio je "umetanje" ili sakrivanje datoteke unutar slike, čineći očitim da kada se slika otvori preglednikom slika, sve je točno prikazano, je li to što mislite?

      Još jednom, veliko hvala na komentaru 🙂

  5.   ratakruel dijo

    Ako se dobro sjećam, postoje zamućena C prvenstva, ali ne vrijedi koristiti "obfuscator", ali moraju zamaskirati svoje izvore bez sedla.

    Što se tiče shc-a i vaše skripte s lozinkama ... vrlo loš način rada!

    Zanimljiv članak, kao i uvijek.

    1.    KZKG ^ Gaara dijo

      Da, više mi je već reklo LOL !!
      Hvala na komentaru 🙂

  6.   ikad dijo

    U osnovi, ako dijelite aplikaciju bez dijeljenja vidljive skripte, kršili biste GPL, što zahtijeva da sve što se generira s GPL aplikacijom bude GPL. Zbog toga SHC generira C, jer je to kôd koji možete podijeliti.

    pozdravi

  7.   Koristimo Linux dijo

    Slažem se s komentarima drugih čitatelja: ne samo da nije dobra praksa pohranjivati ​​podatke i skripte zajedno, već također nije pogodna za razvoj slobodnog softvera.
    Zagrljaj! Pavao.

    1.    KZKG ^ Gaara dijo

      Pozdrav Pablo 🙂
      Imam neku drugu skrivenu skriptu koja interno radi na mom laptopu, zamućujem je, jer jednostavno ne želim da, ako je netko iz nekog razloga uspio kopirati moju skriptu na drugo računalo, jednostavno ne želim da može vidjeti što ona sadrži, to je 'sigurnosna mjera' koju poduzimam.

      Međutim, ovdje u DesdeLinux Objavljujem sve ili gotovo sve što programiram u Bashu, a što bi moglo biti zanimljivo.

      U svakom slučaju, nije da sam sada za prikrivanje osobnog skripta, jer to radim u osobne svrhe, klevetnik SWL-a daleko od njega 😀

      Pozdrav prijatelju

  8.   laboratorij za kodiranje dijo

    Dobre informacije. Osim kontroverzi koje se generiraju u komentarima, čini mi se informacijom da nastavim istraživati ​​još malo.

    Mislim da nam autor ni u jednom trenutku u članku ne govori je li to dobro ili loše učinjeno ili bismo to trebali ili ne bismo trebali, on nam jednostavno kaže alat pomoću kojeg se to može učiniti u slučaju da nekome koristi .

    Pozdrav.

    laboratorij za kodiranje

    1.    f3niX dijo

      U Linuxeros blogovima sve je kontroverzno, haha ​​uvijek je bilo tako.

      1.    MSX dijo

        @ F3niX Izrezati ću snimak zaslona s vašim komentarom kako bih ga stavio svaki put kad netko glupo spomene temu.

        Napomena: da vidimo kad te mogu naći na forumima irc i Chakra 😉

    2.    KZKG ^ Gaara dijo

      TOČNO!!
      Jednostavno pokažem / naučim / objasnim nešto novo što sam naučio, na vama je hoćete li koristiti to znanje ili ne, ne prisiljavam vas daleko od toga.

      Koliko znam, dijeljenje znanja je dobra stvar, zar ne? 0_oU

      Hvala vam na komentaru, dobro je znati da postoji više od jednog ili dva koji razumiju pravu svrhu ovog članka.

  9.   Percaff_TI99 dijo

    Tamo ste me stavili u tesno xD, prije nekoliko tjedana pripremam post koji će biti naslovljen «Instalacija i testiranje Cruxa» i unatoč činjenici da je instalacija uspješno izvedena, ja sam normalan korisnik i ne znam hoću li se uspjeti nositi sa sumnjama trećih strana, namjera je poslužiti kao instrument za raspravu o vrlinama i nedostacima ovog distroa i mogućim rješenjima problema koji bi mogli nastati pomažući nam među svi korisnici i čitatelji. Kad ga završim i pošaljem na pregled, vi (administratori) ćete odlučiti. Što se tiče kriptografije u slikama, bilo je isto, hvala KZKG ^ Gaari na odgovoru.

    Pozdrav!

    1.    KZKG ^ Gaara dijo

      Ok sa zadovoljstvom, napravit ću post o tome 😉

  10.   makubex uchiha dijo

    izvrstan tut brate Smatrao sam ga vrlo korisnim: 3
    za one koji ga žele instalirati u manjaro linux i derivate archlinuxa paket je u aur s imenom: shc

    pozdravi

  11.   okviri dijo

    Oprostite prijatelju, imao sam malu skriptu koja je VELIKA SLOVA pretvorila u mala slova koja su bila u međuspremniku (xclip)

    skripta funkcionira normalno kad nije zamagljena

    #! / bin / bash
    xclip -o> R1.txt
    mačka R1.txt | tr [: gornji:] [: donji:]
    izbaciti ""
    rm R1.txt

    ali kad želim pokrenuti zamagljenu skriptu
    kaže mi

    ./M2m.sh: Rad nije dopušten
    Dovršeno (ubijeno)

    Molim pomoć

    1.    KZKG ^ Gaara dijo

      Imate li instaliran xclip?

  12.   SynFlag dijo

    Treba napomenuti da je to zapravo bash kompajler, kao što postoje .bat kompajler ili .php.
    Ne znam je li kod koji proizvodi šifriran i zamućen i ne podnosi li dekompilator, bilo bi potrebno pokušati, jer to nije moje polje, ne kažem da ili ne, ali ono što vidim da jest je kompajlirano bash, u .c to je. Možete vidjeti kôd, koji, unutar zamračenog, vidim da se nalazi u redovima koji izgledaju poput exploit ljuske, ne znam jesu li stvarno zamagljeni, jer, nijedna lozinka nije zatraženo ili ne znam, master.config gdje je prethodna ključna riječ.

  13.   Juan David dijo

    prijatelji, dogodi se da kad zamutim skriptu, on stvori novu skriptu s bivšim završetkom, ja je izvedem i postoji čak i savršena. Ali kad ga odnesem na drugo računalo s linuzom, ne radi, već ima sva dopuštenja, kreiram pokretač i kažem mu da je to terminalna aplikacija, ali ne radi, pričekajte brz odgovor

    1.    KZKG ^ Gaara dijo

      Jeste li ga kompajlirali i pokrećete li ga na sustavu s istom arhitekturom? Drugim riječima, dobit će vam pogrešku ako ste je kompajlirali da je zamutite na 32-bitnom sustavu, a zatim je pokušate pokrenuti na 64-bitnom sustavu ili obrnuto. Razumiješ?

      1.    Juan David dijo

        Ne, ali već sam ponudio formatiranje istog računala, s istim operativnim sustavom i ne radi, čak ni ne šalje pogrešku.
        Nazivam ga putem konzole ovako: sudo /home/operations/script.x i dobivam ovu pogrešku

        /home/operaciones/script.x: e } 8- q , K

        cijeli slučaj

        1.    KZKG ^ Gaara dijo

          Pokušajte ga pokrenuti BEZ sastavljanja kako biste provjerili radi li se o pogrešci u kodu

    2.    zarez dijo

      Da biste mogli pokrenuti skrivenu skriptu na drugim računalima, morate je kompajlirati s opcijom «-r Relax security. Napravite distribuiranu binarnu datoteku ', inače će se izvoditi samo na stroju gdje je skripta skrivena SHC-om.
      primjer:

      shc -r -f script.sh

  14.   Vilijam dijo

    Pozdrav, imam upit, shc se može instalirati u bilo koju vrstu distribucije Linuxa?, Na primjer, crveni šešir, kako bi to mogla biti instalacija?
    Gracias!

  15.   ruyzz dijo

    Pozdrav svima, vaši komentari su mi puno pomogli, ali imam sljedeći problem, kada mi zamagljivanje ne radi u istom sustavu, ali s drugačijom arhitekturom, odnosno ako to napravim u 32 bita, ne može se pokrenuti u 64 bita . Zna li netko može li se stvarno pokretati na različitim arhitekturama (32 i 64 bita)?