Skip to content

Como Executar o Site do OWASP MAS Localmente

Este guia ajudará você a configurar e executar o site do OWASP MAS localmente em sua máquina. Siga as etapas abaixo para começar.

Usando Docker

A maneira mais fácil de executar o site é usando Docker:

git clone https://github.com/OWASP/mastg.git
cd mastg
docker build . -t mastg
docker run --name mastg -it --rm -p 8000:8000 -u $(id -u):$(id -g) -v $(pwd):/workspaces/mastg mastg

Isso disponibilizará o site em http://localhost:8000. Por padrão, as interações com a API do Github estão desativadas, o que significa que alguns conteúdos recuperados dinamicamente não estarão disponíveis. Se você quiser habilitar a API do Github, crie um token de acesso pessoal e exporte-o como uma variável de ambiente. Certifique-se de que o docker possa acessar o token usando -e GITHUB_TOKEN:

export GITHUB_TOKEN=<TOKEN>
docker run --name mastg -it --rm -p 8000:8000 -u $(id -u):$(id -g) -e GITHUB_TOKEN -v $(pwd):/workspaces/mastg mastg

Sem Docker

TLDR para usuários avançados:

  • Clone os repositórios MASTG, MASVS e MASWE
  • Configure um ambiente virtual
  • Instale as dependências de src/scripts/requirements.txt
  • Adicione seu token como variável de ambiente: export GITHUB_TOKEN=<TOKEN>
  • Execute o site usando ./run_web.sh

Pré-requisitos

Antes de executar o site, certifique-se de ter o seguinte instalado em seu sistema:

  • Python 3.8 ou superior
  • pip (gerenciador de pacotes do Python)
  • Git
  • Visual Studio Code (vscode)

Crie um token de acesso pessoal no Github e exporte este token como variável de ambiente (por exemplo, em seu arquivo .zshrc):

export GITHUB_TOKEN=<TOKEN>

Alternativamente, você pode adicionar seu token dentro do script run_web.sh. Abra o script em um editor de código para mais informações.

Etapa 1: Clone os Repositórios do OWASP MAS

Execute os seguintes comandos em seu terminal:

git clone https://github.com/OWASP/mastg.git
git clone https://github.com/OWASP/masvs.git
git clone https://github.com/OWASP/maswe.git

Nota: Trabalharemos apenas com o repositório OWASP/mastg, mas os repositórios OWASP/masvs e OWASP/maswe são necessários para a execução do site.

Etapa 2: Abra o Repositório OWASP MASTG no vscode

Execute os seguintes comandos em seu terminal:

cd mastg
code .

Etapa 3: Instale as Dependências do Python

É altamente recomendável usar um ambiente virtual (venv) para gerenciar dependências e evitar conflitos com outros projetos Python.

Use a Paleta de Comandos do vscode (Pressione ⌘+Shift+P no macOS ou Ctrl+Shift+P no Windows/Linux)

  1. Crie um venv:
    • Pressione ⌘+Shift+P -> Python: Create Environment
    • Selecione "Quick Create"
  2. Selecione o venv como interpretador Python:
    • Pressione ⌘+Shift+P -> Python: Select Interpreter
    • Escolha o venv que você acabou de criar.
  3. Instale as dependências
  4. Pressione ⌘+j para abrir o terminal
  5. Execute pip install -r src/scripts/requirements.txt

Etapa 4: Execute o Site

Execute o seguinte comando no terminal:

./run_web.sh

O script simplesmente executa mkdocs serve com alguns argumentos adicionais. Abra o script em um editor de código para mais informações.

Acesse o site em http://localhost:8000.

Etapa 5: Depurando o Site

Para depurar o site:

  • Vá para Run and Debug no vscode (ou pressione ⌘+Shift+D no macOS)
  • Selecione Python: MkDocs Serve
  • Clique no botão verde de reproduzir para iniciar a depuração
  • Defina pontos de interrupção no código conforme necessário