Introdução
Manter suas ferramentas de software atualizadas é uma prática crucial em desenvolvimento e segurança. As atualizações frequentemente incluem novos recursos, melhorias de desempenho e patches de segurança importantes. O Fluxion é uma ferramenta popular de auditoria de segurança e pesquisa em engenharia social. Como ele é ativamente desenvolvido, é importante saber como manter sua cópia local sincronizada com a versão mais recente de seu repositório oficial no GitHub.
Neste laboratório, você aprenderá o procedimento padrão para atualizar uma ferramenta que é gerenciada com Git. Você usará o comando git pull para buscar as últimas alterações do repositório remoto e, em seguida, garantirá que a ferramenta esteja pronta para uso executando seu instalador.
Navegue até o seu diretório local do Fluxion
Nesta etapa, você navegará até o diretório que contém a cópia local do repositório do Fluxion. Antes de poder atualizar o aplicativo, você deve estar dentro de seu diretório específico gerenciado pelo Git. O processo de configuração para este laboratório já clonou o repositório do Fluxion para o diretório ~/project para você.
Primeiro, use o comando ls para ver o conteúdo do seu diretório atual.
ls -F
Você deverá ver um diretório chamado fluxion/. Agora, altere seu diretório atual para ~/project/fluxion usando o comando cd.
cd ~/project/fluxion
Para confirmar que você está no diretório correto, execute o comando pwd (print working directory).
pwd
A saída deverá mostrar que você agora está dentro do diretório fluxion.
/home/labex/project/fluxion
Execute 'git pull' para buscar as últimas alterações
Nesta etapa, você usará o comando git pull para atualizar seu repositório local. Este comando é uma combinação de outros dois comandos Git: git fetch e git merge. Ele busca as últimas alterações do repositório remoto (neste caso, do GitHub) e as mescla automaticamente em seu branch local atual.
Agora que você está dentro do diretório fluxion, execute o comando git pull.
git pull
O Git se conectará ao repositório remoto e verificará se há novos commits. Se houver novas alterações, o Git as baixará e as aplicará aos seus arquivos locais.
Observe a saída para arquivos atualizados
Nesta etapa, você examinará a saída do comando git pull. A saída fornece informações valiosas sobre o processo de atualização.
Se o seu repositório local já estava atualizado, você verá uma mensagem semelhante a esta:
Already up to date.
Isso é esperado em nosso ambiente de laboratório porque acabamos de clonar uma cópia nova do repositório.
No entanto, em um cenário do mundo real onde você clonou o repositório há algum tempo, a saída seria diferente. Ela listaria todos os arquivos que foram alterados, adicionados (create mode) ou excluídos. Aqui está um exemplo do que você pode ver:
remote: Enumerating objects: ..., done.
remote: Counting objects: 100% (...), done.
remote: Compressing objects: 100% (...), done.
remote: Total ... (delta ...), reused ... (delta ...)
Unpacking objects: 100% (...), done.
From https://github.com/FluxionNetwork/fluxion
abcdef..123456 master -> origin/master
Updating abcdef..123456
Fast-forward
README.md | 2 +-
fluxion.sh | 5 +++--
2 files changed, 4 insertions(+), 3 deletions(-)
Esta saída informa que os arquivos README.md e fluxion.sh foram atualizados. Compreender esta saída ajuda você a saber o que mudou na ferramenta. Nenhum comando é necessário para esta etapa; é puramente para observação.
Reexecute o instalador 'fluxion.sh -i' se solicitado
Nesta etapa, você executará o instalador do Fluxion. Após buscar novas alterações, especialmente se scripts principais ou listas de dependências foram modificados, é uma boa prática executar o instalador novamente. Isso garante que todas as dependências necessárias sejam instaladas e que a ferramenta esteja configurada corretamente.
O script Fluxion possui um instalador integrado que pode ser executado com o flag -i. Você precisará usar sudo porque o instalador pode precisar instalar pacotes em nível de sistema.
Execute o seguinte comando para executar o instalador:
sudo ./fluxion.sh -i
O script verificará todas as ferramentas e dependências necessárias. Se algo estiver faltando, ele tentará instalá-lo.
Você verá a saída enquanto o script verifica cada dependência. Uma execução típica pode parecer com isto:
[+] Checking for aircrack-ng ...
[+] Found at: /usr/bin/aircrack-ng
[+] Checking for xterm ...
[+] Found at: /usr/bin/xterm
...
[+] All dependencies are installed.
Isso confirma que seu ambiente tem tudo o que é necessário para executar o Fluxion.
Execute o script Fluxion atualizado
Nesta etapa final, você executará o script Fluxion recém-atualizado para garantir que ele funcione corretamente. Após atualizar os arquivos e verificar as dependências, esta é a verificação final de que a atualização foi bem-sucedida.
Para executar o Fluxion, execute o script principal sem nenhum flag. Lembre-se de usar sudo, pois a ferramenta requer privilégios de root para acessar as interfaces de rede.
sudo ./fluxion.sh
Se a atualização foi bem-sucedida, você verá a tela de boas-vindas e o menu principal do Fluxion, que solicita que você escolha um idioma.
...
[>] Select your language
1) English
2) Español
...
#?
Isso confirma que o aplicativo está funcionando corretamente. Você atualizou com sucesso o Fluxion para a versão mais recente.
Para sair do script Fluxion, você pode pressionar Ctrl+C no seu teclado.
Resumo
Neste laboratório, você aprendeu o processo essencial de atualização de um aplicativo gerenciado pelo Git diretamente de seu repositório GitHub. Esta é uma habilidade fundamental para qualquer pessoa que trabalhe com software de código aberto.
Você praticou com sucesso o seguinte:
- Navegar para um repositório Git local.
- Usar o comando
git pullpara buscar e mesclar as últimas alterações de um repositório remoto. - Observar a saída para entender quais arquivos foram atualizados.
- Reexecutar o instalador de um aplicativo para garantir que todas as dependências sejam atendidas.
- Lançar o aplicativo atualizado para confirmar que ele está funcionando corretamente.
Ao dominar estas etapas, você pode garantir que suas ferramentas estejam sempre atualizadas com os recursos mais recentes e correções de segurança.
