Skip to content

Commit b1abc36

Browse files
authored
Merge pull request #71 from medoror-mo/MichaelEdoror/typos
Typo fixes
2 parents 91c5b94 + 086be93 commit b1abc36

File tree

7 files changed

+11
-11
lines changed

7 files changed

+11
-11
lines changed

modules/1-introduction.livemd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ This Training material is also ideally used in an educational environment for or
1818

1919
If you've never used an Elixir [Livebook](https://livebook.dev/) before, you're in for a treat! They are a very exciting new tool that is actively under development - very similar in application to [Jupyter Notebooks](https://jupyter.org/), but for the Elixir ecosystem!
2020

21-
It would not do the Livebook any justice to try and summize here how to fully take advantage of all its capabilities, for a better introduction there is a great tutorial offered in local installations of Livebook.
21+
It would not do the Livebook any justice to try and summarize here how to fully take advantage of all its capabilities, for a better introduction there is a great tutorial offered in local installations of Livebook.
2222

2323
**For the purposes of this Training material, just know that you need to run the "Setup" step for the "Notebook dependencies and setup" section at the very top of EVERY module before running any code samples found within the module you're working on.**
2424

modules/2-owasp.livemd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,7 @@ IO.puts(vulnerable_dependency)
265265

266266
### Description
267267

268-
Unlike [Broken Access Control](#broken-access-control), this category covers the other half of the "Auth" picture - Authentication; or in otherwords, the validation of "Who" is performing an action within a Data System.
268+
Unlike [Broken Access Control](#broken-access-control), this category covers the other half of the "Auth" picture - Authentication; or in other words, the validation of "Who" is performing an action within a Data System.
269269

270270
Confirmation of the user's identity, authentication, and session management is critical to protect against authentication-related attacks. There may be authentication weaknesses if the application:
271271

@@ -335,7 +335,7 @@ Notable CWES include CWE-778 Insufficient Logging to include CWE-117 Improper Ou
335335
* Ensure log data is encoded correctly to prevent injections or attacks on the logging or monitoring systems.
336336
* Ensure high-value transactions have an audit trail with integrity controls to prevent tampering or deletion, such as append-only database tables or similar.
337337
* Establish or adopt an incident response and recovery plan.
338-
* Do not expose error logs in response to client when not necessary.
338+
* Do not expose error logs in response to the client when not necessary.
339339

340340
<!-- livebook:{"branch_parent_index":3} -->
341341

modules/3-ssdlc.livemd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ An example of developing a web application using defense in depth could be:
142142
* The codebase is checked automatically for vulnerabilities using Semgrep
143143
* The codebase is also checked for outdated dependencies using Dependabot
144144
* The application is regularly tested by the internal security team
145-
* Multiple development environments are used such as Develpoment, Staging, and Production
145+
* Multiple development environments are used such as Development, Staging, and Production
146146

147147
<br />
148148

modules/4-graphql.livemd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,13 +152,13 @@ IO.puts(answer)
152152

153153
### Description
154154

155-
When building an application, it is necessary to manage the access and use of all relevant internal and external resources involved in the context of the application. This will help ensure the continued availablilty of the application and its functionality for all legitimate users and entities.
155+
When building an application, it is necessary to manage the access and use of all relevant internal and external resources involved in the context of the application. This will help ensure the continued availability of the application and its functionality for all legitimate users and entities.
156156

157157
Resource exhaustion occurs when memory, processes handling application requests, network traffic transmissions, server capacity, storage, and other host operating system or device limitations are exceeded while an application is running. When resource allocation is not well managed, applications become vulnerable to negative impacts in performance, unintentional service failures, and denial of service attacks, in which a malicious actor takes advantage of resource limitations to intentionally overwhelm and crash a system.
158158

159159
Resource exhaustion can occur inadvertently through legitimate use or could be triggered intentionally in a DoS attack by a malicious actor who sends a large number or resource intensive requests to overload the application.
160160

161-
The structure of GraphQL queries make it particularly succeptible to this type of attack as they can be crafted to perform long running and extensive operations, depending on the data being queried.
161+
The structure of GraphQL queries make it particularly susceptible to this type of attack as they can be crafted to perform long running and extensive operations, depending on the data being queried.
162162

163163
In addition to strategies like rate limiting to protect APIs in general, another approach to protecting GraphQL from resource exhaustion involves anticipating the cost of a query and allocating resources based on known available capacity. The next section introduces this approach.
164164

modules/5-elixir.livemd

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,9 @@ A timing attack is a side-channel attack in which the attacker attempts to compr
124124

125125
Plainly speaking, response time it takes to compute a given function measured at the pico-second level is analyzed for microscopic variations.
126126

127-
This technique is primarily used to analyze string comparisons of secret values to brute-force the identify of the secret.
127+
This technique is primarily used to analyze string comparisons of secret values to brute-force the identity of the secret.
128128

129-
e.g. When comparing two strings, the function exits when variation is detected. Take a secret value `MY_SECRET` and a user input `MY_PASSWORD`, the string compariosn (`MY_PASSWORD == MY_SECRET`) would go character by character until there's a complete match or a discrepancy. So if the new input was `MY_SAUCE`, that new string would take marginally longer to compare against the secret than `MY_PASSWORD` because of one more similar character as `MY_SECRET`.
129+
e.g. When comparing two strings, the function exits when variation is detected. Take a secret value `MY_SECRET` and a user input `MY_PASSWORD`, the string comparison (`MY_PASSWORD == MY_SECRET`) would go character by character until there's a complete match or a discrepancy. So if the new input was `MY_SAUCE`, that new string would take marginally longer to compare against the secret than `MY_PASSWORD` because of one more similar character as `MY_SECRET`.
130130

131131
### Prevention
132132

@@ -192,7 +192,7 @@ By using expressions that do not use boolean coercion, the incorrect assumption
192192
* Prefer `or` over `||`
193193
* Prefer `not` over `!`
194194

195-
The latter will raise a "BadBooleanError" when the function returns :ok or {:error, \_}. In the interest of clarity if may even be better to use a case construct, matching explicitly on true and false.
195+
The latter will raise a "BadBooleanError" when the function returns :ok or {:error, \_}. In the interest of clarity it may even be better to use a case construct, matching explicitly on true and false.
196196

197197
### Resources
198198

modules/7-anti-patterns.livemd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ Pretty secure criteria! You type `this_is_MY_super_secure_password` and hit ente
105105

106106
You decide to proxy the request and see that the password is never actually being sent to the server when you press enter - the validation check MUST be happening exclusively client-side.
107107

108-
You appease the JavaScript by adding a 1 to the end then proxy the request in transit, seeing that your input (`this_is_MY_super_secure_password1`) is about to be sent as the one of the payload data objects to the server. Before it leaves your browser though, you change the payload back to your original password that didn't met the criteria and let the request go through.
108+
You appease the JavaScript by adding a 1 to the end then proxy the request in transit, seeing that your input (`this_is_MY_super_secure_password1`) is about to be sent as the one of the payload data objects to the server. Before it leaves your browser though, you change the payload back to your original password that didn't meet the criteria and let the request go through.
109109

110110
To your surprise; the server didn't balk at you! You go to log in to the site with your desired password and it worked!
111111

modules/8-cicd.livemd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Refer to Sobelow's [README](https://github.com/nccgroup/sobelow#installation) fo
4141

4242
### Description
4343

44-
[Salus](https://github.com/coinbase/salus) is a Static Application Security Testing (SAST) orchestration tool - developed by the Security team over at Coinbase. Under the hood it is a Ruby program that determines the language of what codebase it is attempting to run on and with selectively run other open source SAST tools for that language.
44+
[Salus](https://github.com/coinbase/salus) is a Static Application Security Testing (SAST) orchestration tool - developed by the Security team over at Coinbase. Under the hood it is a Ruby program that determines the language of what codebase it is attempting to run on and will selectively run other open source SAST tools for that language.
4545

4646
There is currently an [PR in progress](https://github.com/coinbase/salus/pull/651) for integrating Sobelow into Salus.
4747

0 commit comments

Comments
 (0)