Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FUNDATEC 2025

ProgramaçãoLinguagens de programação
Código
qg475032
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2025
Nível
Superior
Cargo
Analista em Computação/Ênfase em Segurança da Informação
PowerShell é um ambiente que combina shell de linha de comando, linguagem de script e uma estrutura de gerenciamento de configuração voltada principalmente à administração de sistemas. Com base no script abaixo, analise as assertivas a seguir e assinale V, se verdadeiras, ou F, se falsas.Imagem associada para resolução da questão( ) O script monitora conexões TCP estabelecidas que utilizam as portas remotas definidas em $suspiciousPorts e registra os dados em um arquivo de log.( ) A função Get-NetTCPConnection lista conexões UDP ativas no sistema.( ) A opção -Append no cmdlet Out-File evita que o arquivo de log seja sobrescrito a cada nova entrada.A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
  1. AV – F – V.
  2. BF – F – V.
  3. CV – V – F.
  4. DF – V – F.
  5. EV – F – F.
Revelar gabarito e comentário

GabaritoA — V – F – V.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

PowerShell: análise de script de monitoramento de conexões TCP

Gabarito: letra A (V – F – V). A primeira assertiva é verdadeira porque o script, ao usar Get-NetTCPConnection com filtro por RemotePort e State -eq 'Established', monitora conexões TCP estabelecidas nas portas suspeitas e registra os dados com Out-File -Append. A segunda é falsa, pois Get-NetTCPConnection lista conexões TCP, não UDP. A terceira é verdadeira, pois -Append adiciona conteúdo ao arquivo em vez de sobrescrevê-lo.

O PowerShell é um ambiente de automação e gerenciamento de configuração da Microsoft, amplamente usado na administração de sistemas Windows. Ele combina uma shell de linha de comando com uma linguagem de script baseada no .NET, permitindo executar comandos, manipular objetos e automatizar tarefas complexas. No contexto da questão, o script utiliza cmdlets específicos para inspecionar conexões de rede e registrar informações em um arquivo de log.

O cmdlet Get-NetTCPConnection é a ferramenta nativa do PowerShell para obter informações sobre conexões TCP ativas no sistema. Ele retorna objetos com propriedades como LocalAddress, LocalPort, RemoteAddress, RemotePort e State. O parâmetro -State permite filtrar por estado da conexão, como Established, Listen, TimeWait, entre outros. Já o parâmetro -RemotePort filtra as conexões cuja porta remota corresponde ao valor especificado. No script, a combinação desses filtros com a variável $suspiciousPorts (que contém as portas suspeitas) permite identificar conexões estabelecidas que utilizam essas portas remotas.

O cmdlet Out-File é usado para enviar a saída de um comando para um arquivo. O parâmetro -Append é crucial: sem ele, o arquivo é sobrescrito a cada execução; com ele, o conteúdo é adicionado ao final do arquivo existente, preservando o histórico de logs. Isso é essencial para um script de monitoramento contínuo, pois cada nova entrada deve ser registrada sem apagar as anteriores.

A pegadinha da questão está na segunda assertiva: muitos candidatos confundem Get-NetTCPConnection com Get-NetUDPEndpoint, que é o cmdlet correto para listar conexões UDP. A banca explora exatamente essa troca de protocolo para induzir ao erro. Além disso, é importante notar que o script filtra por State -eq 'Established', o que reforça que se trata de conexões TCP ativas, não de qualquer tipo de conexão.

  1. 1Assertiva 1: monitora TCP estabelecidas
  2. 2Assertiva 2: Get-NetTCPConnection lista UDP
  3. 3Assertiva 3: -Append preserva log
LEVEL · soulevel.com.br

Assertiva 1 — ✅ Verdadeira

A assertiva afirma que o script monitora conexões TCP estabelecidas que utilizam as portas remotas definidas em $suspiciousPorts e registra os dados em um arquivo de log. Isso está correto: o script usa Get-NetTCPConnection com filtro por RemotePort (as portas suspeitas) e State -eq 'Established', e depois envia os resultados para Out-File -Append, registrando as informações no log. A combinação desses elementos confirma a veracidade da afirmação.

Assertiva 2 — ❌ Falsa

A assertiva afirma que Get-NetTCPConnection lista conexões UDP ativas. Isso é falso: o cmdlet Get-NetTCPConnection é específico para conexões TCP. Para listar conexões UDP, o cmdlet correto é Get-NetUDPEndpoint. A banca troca o protocolo para confundir o candidato, mas o nome do cmdlet já indica claramente que se trata de TCP.

Assertiva 3 — ✅ Verdadeira

A assertiva afirma que a opção -Append no cmdlet Out-File evita que o arquivo de log seja sobrescrito a cada nova entrada. Isso está correto: o parâmetro -Append adiciona o conteúdo ao final do arquivo existente, em vez de substituí-lo. Sem esse parâmetro, cada execução do script apagaria o conteúdo anterior, o que seria inútil para um log de monitoramento.

Conclusão: A sequência correta é V – F – V, correspondente à letra A.

PEGA ESSA DICA!

Para não errar em questões sobre cmdlets de rede no PowerShell, lembre-se: Get-NetTCPConnection é para TCP, Get-NetUDPEndpoint é para UDP. E -Append sempre preserva o histórico do arquivo. Esses são os pontos que a banca mais explora.

Gabarito: letra A

Link permanente: /questoes/qg475032