posgnu / pajero

Packet analyzer for attack & defense CTF
GNU General Public License v3.0
7 stars 2 forks source link

Requirements #19

Open posgnu opened 5 years ago

posgnu commented 5 years ago

Requirements

  1. Client(viewer)

    1. Show packets which are exchanged during a single TCP/UDP connection using CFG
    2. Filter each connection by team, service and contents
    3. Generate python code which can reproduce the target connection
  2. Server(worker)

    1. Bring packet dumps and split them into smaller packets by TCP/UDP connection [done]
    2. Separate flag connections from other connections [done]
    3. Provide API endpoint for the Client
      1. round list
      2. team list
      3. service list per team
      4. flag TCP connection list per service
      5. no-flag TCP connection list per service
      6. filtering packets in the working directory
      7. successful replay flag connection
    4. Sharding analyzing into multiple workers (tentative in case original packet size is huge)
    5. Replay flag connection to the target service and get the results
    6. Provide API endpoint for the Admin
      1. set team list
      2. set service list per team
      3. set flag for each service
  3. Admin

    1. Manages team list and service list
    2. Manages flag of each our service
    3. Upload *.pcap file
posgnu commented 5 years ago

image

posgnu commented 5 years ago

Target network model image

posgnu commented 5 years ago

We need more discussion about the target network model for security reasons.

posgnu commented 5 years ago

Using this network model, we can restrict other users from accessing the viewer using EC2's firewall. I am not sure we can freely handle firewall rules in the game network. Of course, we can introduce an authentication system but it seems wasteful.

posgnu commented 5 years ago

round/team/service -> team/service/round