O analista de sistemas Henrique desenvolveu a aplicação WebServiceTJDFT – um webservice REST – utilizando Java com Spring Boot e JPA (Java Persistence API). Considere o recorte do código-fonte do WebServiceTJDFT descrito a seguir e que todas as declarações obrigatórias e não exibidas estão presentes e corretas.
interface DocumentoUsuarioRepository extends
JpaRepository<DocumentoUsuario, int>{}
@RestController class MicroServiçoB extends
MicroServiçoA {
@Autowired DocumentoUsuarioRepository
docUserRepo;
@PutMapping("/{idUsuario}")
public ResponseEntity<?>
associaDocumento(@PathVariable int idUsuario,
@RequestParam int idDoc) {
docUserRepo.save(new
DocumentoUsuario(idDoc, idUsuario));
return null;
}
@PostConstruct public void run() {
System.err.println("microserviço B instanciado!");
}
}
@Service class MicroServiçoA implements Runnable {
String idDocumento; private int numPagina;
public void run() {
System.err.println("microserviço A instanciado!");
}
}
@Component class WebServiceRunner implements
CommandLineRunner {
@Autowired MicroServiçoA microServiçoA;
@Autowired MicroServiçoB microServiçoB;
MicroServiçoA microServiçoA_2 = new
MicroServiçoB();
@Override public void run(String... args)
throws Exception {
((Runnable) microServiçoA).run();
microServiçoB.run();
}
}
@SpringBootApplication public class
WebServiceTJDFT{
public static void main(String args[]) {
SpringApplication.run(WebServiceTJDFT.clas
s, args);
}
}
Em relação ao recorte do código-fonte do WebServiceTJDFT acima:
a) Cite 4 classes concretas definidas ou referenciadas diretamente.
b) Cite 2 polimorfismos ocorridos.
O analista de sistemas Henrique se esqueceu de aplicar os mecanismos de controle de acesso – já implementados em outras partes do WebServiceTJDFT – no recorte do código-fonte acima, possibilitando que um usuário associe documentos a si mesmo e a outros usuários sem a devida permissão. O OWASP (Open Web Application Security Project) Top Ten 2021 relaciona, em 10 categorias distintas, os mais sérios riscos de segurança para aplicações web e elenca recomendações para mitigar esses riscos. O risco nº 1 do OWASP Top Ten é a Quebra de Controle de Acesso. Com base no OWASP Top Ten:
c) Cite, de forma específica, o trecho do código-fonte acima que permite a Quebra de Controle de Acesso na associação do usuário a um documento.
d) Cite 2 recomendações elencadas na categoria Quebra de Controle de Acesso que podem mitigar de forma direta a falha citada no item C).
Valor: 15 pontos
Máximo de 15 linhas.
CONTEÚDO EXCLUSIVO
Confira nossos planos especiais de assinatura e desbloqueie agora!
Ops! Esta questão ainda não tem resolução em texto.
Ops! Esta questão ainda não tem resolução em vídeo.



