Storage Flashcards

1
Q

Hardcoded Data

A

*Data can be directly embedded into the source code of a program as opposed to obtaining the data from external sources (e.g. databases, file) or generating it at runtime.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Advantages and disadvantages of hardcoded data

A
  • Fast delivery of code
  • Considered and anti - pattern
  • Hard to adapt
  • Hard to internationalise
  • Raises security vulnerabilities
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Security issues with Web applications

A
  • Source code disclosure issues occur when the code of a web application is exposed to the public.
  • Source code disclosure enables attackers to understand how the application behaves by simply reading the code and checking for logical flaws, or hardcoded username/password pairs, or secret keys.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Security issues with hidden form fields

A

*Hidden fields are used in web pages to pass information about the current page to the server.
*Hidden fields allow us to send all kinds of information, along with form data entered by a user, without the user having to be involved in the process.
*Hidden fields can also be used to pass information back to scripts

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Security issues with reverse engineering

A

*Software reverse engineering involves reversing a program’s machine code back into the source code that it was written in, using program language statements.
*Someone doing reverse engineering on software may use several tools to disassemble a program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Embedded Environment variables

A

*To use forms in flask we need to config a secret key (already covered).
*A secret key is used for securely signing the session cookie and can be used for any other security related needs of an application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Database security

A

*The storage and management of massive amounts of, often sensitive data, in databases, makes databases a prime target for cyberattacks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

*Separate Database Servers and Web Servers

A
  • Usually this means keeping database servers in a secure, locked environment with access controls in place to keep unauthorised people out.
    *But it also means keeping the database on a separate physical machine, removed from the machines running application or web servers.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Use Web Application and Database Firewalls

A

*A database server should be protected from database security threats by a firewall, which denies access to
traffic by default.
*The firewall should also protect the database from initiating outbound connections unless there is a specific need to do so.
*In addition to protecting the database with a firewall, a web application firewall can be deployed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Secure Database User Access

A

*The least number of people possible should have access to a database.
*In larger organisation, automating access management using access management software should be
considered.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Secure database user access security standards

A

*On top of this, it is wise to ensure standard account security procedures are followed:
* Strong passwords should be enforced.
* Password hashes should be stored encrypted and salted.
* Accounts should be locked after three or four login attempts.
* A procedure should be put in place to ensure that accounts are deactivated when staff leave or move to different roles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Regularly Updating Operating Systems and patches

A

*It’s important to regularly update operating systems and database software with all security patches installed to protect against the most recently discovered vulnerabilities.
*It is also important to ensure that all database security controls provided by the database are enabled (most are enabled by default) unless there is a specific reason for any to be disabled.
*This is particularly important for databases connected to a large number of third-party applications that each require their own patches

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Audit and Continuously Monitor Database Activity

A

*This includes monitoring logins (and attempted logins) to the operating system and database and reviewing logs regularly to detect anomalous activity.
*Effective monitoring should allow compromised accounts to be spotted, when a user is carrying out suspicious activities or when a database is under attack.
*Database Activity Monitoring (DAM) software can help with this functionality by providing monitoring that is independent of native database logging and audit functions; it can also help
monitor administrator activity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Test database security

A

*After a database’s security infrastructure has been constructed, it should but put up against a real
attack.
*Hacking or auditing one’s own database will put the penetration (pen) testers in the mindset of an
attacker and help find vulnerabilities that may have been missed.
*To ensure the test is comprehensive enough, there are third-party services and white hat hackers
that specialise in penetration testing that can be hired to do the job.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Encrypt Data and backups

A

*A database should be regularly backed up with any backups encrypted and stored separately from the decryption keys.
*For example, encrypted backups should not be stored alongside description keys in plaintext.
*Regularly backing up systems not only protects against hackers but other failures as well, such as
problems with physical hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Avoid using default network ports

A

*Default ports are often used in brute force attacks due to their common occurrence.
*However, when assigning a new port, it is important to check the Internet Assigned Numbers Authority’s port registry to ensure the new port isn’t used for other services.

17
Q

Reasons for reverse engineering

A

*the source code was lost
*to study how the program performs certain operations
*to improve the performance of a program
*to fix a bug
*to identify malicious content in a program such as a virus
*to adapt a program written for use with one microprocessor for use with another.