https://github.com/gmelodie/bench-the-bank
https://github.com/gmelodie/bench-the-bank
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/gmelodie/bench-the-bank
- Owner: gmelodie
- License: mit
- Created: 2019-08-28T19:13:34.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-11-01T02:54:03.000Z (about 6 years ago)
- Last Synced: 2025-01-24T11:44:33.433Z (9 months ago)
- Language: PLpgSQL
- Size: 12.7 KB
- Stars: 1
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bench The Bank
Site de banco utilizado em uma atividade de ataque e defesa da frente de WEB do Ganesh.
A ideia da atividade é que cada grupo desenvolva uma aplicação com funcionalidades semelhantes, e que o grupo tente encontrar vulnerabilidades nas aplicações dos demais grupos.
## Requisitos
- A tecnologia web empregada fica a critério do grupo.
- Os grupos terão o código fonte dos sistemas explorados, que ficarão no github.
- As funcionalidades definidas são o mínimo a ser implementadas, fica a critério do grupo adicionar mais.
- Durante a atividade, anote as vulnerabilidades encontradas e como explorá-las (se possível, sugestões para mitigar o problema) para que o grupo desenvolvedor possa enteder o que fizeram e possam melhorar sua aplicação.
## Funcionalidades
- login/cadastro
- transferencia de dinheiro entre contas
- deposito e retirada de dinehiro
- extrato
- contas começam com um valor minimo
- conta de usuário:
- Pode transferir seu dinheiro para outro usuario/conta
- Pode retirar seu dinheiro (seria como se tivesse tirado num ATM, o dinheiro sai do sistema) conta adm/caixa
- Pode depositar dinheiro na conta de um usuario
- Pode retirar dinheiro da conta de um usuario
## Banco de dados
### Usuário
- Número da conta [name=PK]
- Nome completo [name=Not Null]
- CPF [name=Unique] [name=Not Null]
- Data de nascimento [name=Not Null]
- Telefone [name=Not Null]
- E-mail [name=Unique] [name=Not Null]
- Senha Web: [name=Constraints] [name=Not Null]
- Senha de operações (numérica): 6 números [name=Not Null]
### Conta
- Número [name=PK] [name=FK]
- Tipo de conta [name=PK]
- Poupança
- Corrente
- Salário
- Saldo [name=Default = 0]
### Transação (transactions)
- Número conta origem [name=PK] [name=FK1]
- Tipo conta origem [name=FK1] [name=Not Null]
- Número conta destino [name=FK2]
- Tipo conta destino [name=FK2]
- Timestamp [name=PK]
- Tipo da transação [name=Not Null]
- Depósito 0
- Retirada 1
- Transferência 2
> [name=Constraints]
> check tipo == 0 and dest is not null
> or tipo == 1 and dest is null
- Valor [name=Not Null]
### [MER](https://drive.google.com/file/d/1MDul5qTg7ZddBJvFk6RwvMLfQsnGimEa/view?usp=sharing)

## Sugestões:
- [ ] Todos os grupos utilizarem o mesmo banco de dados.
- [ ] API para TED