Page 1 of 1

Pastas de inicialização do MacOSX - lauchd e Linux

Posted: 17 Aug 2018, 04:40
by javanunes
Bom se você chegou aqui, deve ter dado já uma olhada em preferencias do sistema> usuários e grupos>itens de inicio e procurado um programa maldito que tenha iniciado no seu Mac e não encontrou nada, não foi? Pois bem, no Mac OSX Assim como no Unix nós temos algumas pastas que iniciam executáveis sem nós sabermos, na verdade essas pastas guardam arquivos .PLIST que na verdade são arquivos XML em grande parte das vezes, eles também podem ser binários, dentro deles podem ter
orientações para executar programas malditos em seu computador. As pastas são:

Pasta do usuário: ~/Library/LaunchAgents
Roda o arquivo .plist com poderes do usuário dono da home ˜

Pasta de usuários globais: /Library/LaunchAgents
Roda o arquivo .plist com poder do usuário que estiver logado no sistema

Pasta de usuários locais específicos: /Library/LaunchDaemons
Roda o arquivo .plist com o poder do usuário especificado pela tag UserName

Pasta de sistemas de agentes: /System/Library/LaunchAgents
Roda o arquivo .plist com o poder de quem está logado

Pasta de arquivos de serviços: /System/Library/LaunchDaemons
Roda o arquivo .plist com o poder do usuário especificado pela tag UserName

Como é um arquivo .plist por dentro ? Veja abaixo:

Code: Select all

<?unchd xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
 <dict>
  <key>Label</key>
  <string>com.empresaSafada.ProgramaBozo</string>
  <key>Program</key>
  <string>/Library/Application Support/Virus/Cruioso/virus.sh</string>
  <key>ProgramArguments</key>
  <array>
     <string>/Library/Application Support/Virus/Cruioso/virus.sh</string>
     <string>-mode=scheduled</string>
  </array>
  <key>StartCalendarInterval</key>
  <dict>
    <key>Minute</key>
    <integer>24</integer>
    <key>Hour</key>
    <integer>5</integer>
  </dict>
 </dict>
</plist>
Quem chama os arquivos .plist ?
Quem executa os arquivos .plist dessas pastas é o processo lauchd

Você como root ou usando o sudo pode entrar no bash terminal e excluir os arquivos indesejados, só não aconselho apagar nada de java e coisas que você não sabe o que faz.


No Linux, assim como o Mac não basta você colocar algo lá na pasta que ele irá executar, em alguns casos é assim em outros não, muitas vezes você tem que colocar o conteúdo para executar porem deverá estar no formato adequado (desktop, script, e systemd) :

~/.config/autostart/
/etc/xdg/
/etc/init.d/
/etc/profile.d/
~/.xsession
/etc/systemd/system/