Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i think i messed up my repo? #1

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Binary file added .DS_Store
Binary file not shown.
15 changes: 15 additions & 0 deletions hw3_writeup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Part 1
Since some of these questions can be grouped together based on topic. Mother’s maiden name, city of birth, first pet all pertain to personal information about his mother, while browser and PIN number are more technical questions. With these groupings, I will try and impersonate three different fake employees. The first employee I will impersonate is a government consensus employee, calling about data that they lost regarding Eric’s mother. I will start the social engineering by saying his mother was not picking up my calls and I figured her son might be the next best bet. I will initiate this call from a business park building, probably in the lobby. Hopefully the background noise will make it seem like I am actually in a government office building or something like that. I won't dive into the information right away, but start by being very cordial, asking him about his day what he does for a living etc. to ease him into the conversation and make my voice somewhat familiar to him. I would disclose some information about myself, maybe even give accurate information about my city of residence and my personal relationships. Then I would start asking him to assist me fill in the blanks on this fake form:

“My records show we’re missing information about your father’s middle name and... your mother’s maiden name. Could you provide me with both of those?”, I will ask about his father to try and split his attention so he is not sure who the target information is about.
“Thank you for your response! Now were your parents born in the same town? It says here that they were but I am not sure I can trust much of this information considering how much of it we’re missing [forced laugh]” HOPEFULLY Eric’s parents were born in different towns and he will respond with “no”. From there I would ask him to provide both of his parents' hometowns.

The pet question is honestly very tricky. My gut reaction is to actually call his mother. Doing this would require me to obtain his mother’s personal phone number from him: “Thank you for your time Eric, I really appreciate it. I am going to try to call [Insert mother’s name here] again and verify this information with her... maybe I have the wrong number to reach her at. [Read off a fake number with the same area code that his mother is from] is this correct?” At this point I would assume he would correct me with the actual number. “Oh wow ok, way off. I’ll run this all by her right now, thanks again!” then end the call. I would take on another identity as an overly amiable petsmart employee and call his mother. “Good morning/evening Mrs Norman, this is Josiah from petsmart calling about a new initiative that petsmart is taking on! We are working with [local pound name] to sponsor and name some of their new furry friends! Now you do not have to pay money if you don't want to but we would like your suggestions for naming! I usually ask for about 3 names and I have a prompt here so it’s not too hard for you to come up with names on the spot! Your favorite flavor of ice cream, your very first pet's name, and your favorite fruit!” This prompt should distract her enough not to question the legitimacy of the entire situation and also give me the answer I am looking for.
My next and final identity I would take on is a GeekSquad employee who has been fake commissioned by Eric Norman to help improve his mother’s internet speed. (warning: this assumes his mother is technologically inept, please don't test run this prompt with a tech savvy mother). Using the phone number I received earlier from Eric, I would call his mother a few days, or even a week or two, later from a spoofed number:
“Your son had me call about your internet speeds, he told me that on his last visit (banking on Eric being a good son who visits his mother) he thought the wifi was quite slow. I won't take too much of your time, I would just like to test a few things over the phone” Ask her the typical questions, “is your router on?” “are you using a wireless connection or wired?” and the big one “what browser are you using?”
From there I would use a fake site that I developed, which looks like a GeekSquad official frontend connected to a backend that’s stood up on one of my numerous hacker VM’s i have set up in my house. What this website will do is take 3 inputs from the user and generate a randomly shuffled string with all 3 of the inputs and display it for the user. However, what it also does is store each of these 3 inputs, one of which will be her PIN. “Mrs Norman, for safety’s sake I believe we should probably reset your WiFi password, from what I am seeing it looks like someone might be leeching off your network and slowing it down.” I would then have her go to the website: “I am going to provide you with a website GeekSquad developed themselves which assists in coming up with very intricate and hard to crack passwords. Just fill out the 3 fields shown on the site and it will spit out a password for you”

Part 2
The first vulnerability I noticed was the strength of the user passwords. Websites like perspectiverisk.com, who do vulnerability scans on company and private networks, report that one of their most commonly found vulnerability’s are weak passwords. Perspectiverisk, along with many other security companies, suggest having an improved threshold for weak passwords. Instead of just a capital letter and a number with 8 characters, there should be more intricacies added in order to keep a standard across the board. Experts recommend using a passphrase, like a sentence commonly said around the house, as brute force attempts take exponentially longer time to crack when there are spaces involved.
The second vulnerability I picked up are the potential for SQL injections. Much of the network had no protection against SQL injections; one DROP TABLE could spell disaster for your network. ESecurity Planet and CMSC330 offer a few solutions for this, one of which is black listing or white listing phrases. Instead of permitting a user to enter anything at all, assume that every user can be malicious and take appropriate caution. Prevent certain statements or use input validation (mysql_real_escape_string()) in order to make sure a user cannot go beyond their permissions and see stuff they’re not supposed to.
The final vulnerability, and arguably the most critical, is OS command injection (see shell shock). An attacker is permitted to enter operating system commands, giving them access to the server itself and in turn wreaking havoc. The solution to these exploits is about the same as SQL injections, as they both take place on a server. One can whitelist commands, validate inputs to prevent certain entries from executing. However, portSwigger claims that one should “Never attempting to sanitize input by escaping shell metacharacters. In practice, this is just too error-prone and vulnerable to being bypassed by a skilled attacker.”
15 changes: 15 additions & 0 deletions hw3_writeup.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Part 1
Since some of these questions can be grouped together based on topic. Mother’s maiden name, city of birth, first pet all pertain to personal information about his mother, while browser and PIN number are more technical questions. With these groupings, I will try and impersonate three different fake employees. The first employee I will impersonate is a government consensus employee, calling about data that they lost regarding Eric’s mother. I will start the social engineering by saying his mother was not picking up my calls and I figured her son might be the next best bet. I will initiate this call from a business park building, probably in the lobby. Hopefully the background noise will make it seem like I am actually in a government office building or something like that. I won't dive into the information right away, but start by being very cordial, asking him about his day what he does for a living etc. to ease him into the conversation and make my voice somewhat familiar to him. I would disclose some information about myself, maybe even give accurate information about my city of residence and my personal relationships. Then I would start asking him to assist me fill in the blanks on this fake form:

“My records show we’re missing information about your father’s middle name and... your mother’s maiden name. Could you provide me with both of those?”, I will ask about his father to try and split his attention so he is not sure who the target information is about.
“Thank you for your response! Now were your parents born in the same town? It says here that they were but I am not sure I can trust much of this information considering how much of it we’re missing [forced laugh]” HOPEFULLY Eric’s parents were born in different towns and he will respond with “no”. From there I would ask him to provide both of his parents' hometowns.

The pet question is honestly very tricky. My gut reaction is to actually call his mother. Doing this would require me to obtain his mother’s personal phone number from him: “Thank you for your time Eric, I really appreciate it. I am going to try to call [Insert mother’s name here] again and verify this information with her... maybe I have the wrong number to reach her at. [Read off a fake number with the same area code that his mother is from] is this correct?” At this point I would assume he would correct me with the actual number. “Oh wow ok, way off. I’ll run this all by her right now, thanks again!” then end the call. I would take on another identity as an overly amiable petsmart employee and call his mother. “Good morning/evening Mrs Norman, this is Josiah from petsmart calling about a new initiative that petsmart is taking on! We are working with [local pound name] to sponsor and name some of their new furry friends! Now you do not have to pay money if you don't want to but we would like your suggestions for naming! I usually ask for about 3 names and I have a prompt here so it’s not too hard for you to come up with names on the spot! Your favorite flavor of ice cream, your very first pet's name, and your favorite fruit!” This prompt should distract her enough not to question the legitimacy of the entire situation and also give me the answer I am looking for.
My next and final identity I would take on is a GeekSquad employee who has been fake commissioned by Eric Norman to help improve his mother’s internet speed. (warning: this assumes his mother is technologically inept, please don't test run this prompt with a tech savvy mother). Using the phone number I received earlier from Eric, I would call his mother a few days, or even a week or two, later from a spoofed number:
“Your son had me call about your internet speeds, he told me that on his last visit (banking on Eric being a good son who visits his mother) he thought the wifi was quite slow. I won't take too much of your time, I would just like to test a few things over the phone” Ask her the typical questions, “is your router on?” “are you using a wireless connection or wired?” and the big one “what browser are you using?”
From there I would use a fake site that I developed, which looks like a GeekSquad official frontend connected to a backend that’s stood up on one of my numerous hacker VM’s i have set up in my house. What this website will do is take 3 inputs from the user and generate a randomly shuffled string with all 3 of the inputs and display it for the user. However, what it also does is store each of these 3 inputs, one of which will be her PIN. “Mrs Norman, for safety’s sake I believe we should probably reset your WiFi password, from what I am seeing it looks like someone might be leeching off your network and slowing it down.” I would then have her go to the website: “I am going to provide you with a website GeekSquad developed themselves which assists in coming up with very intricate and hard to crack passwords. Just fill out the 3 fields shown on the site and it will spit out a password for you”

Part 2
The first vulnerability I noticed was the strength of the user passwords. Websites like perspectiverisk.com, who do vulnerability scans on company and private networks, report that one of their most commonly found vulnerability’s are weak passwords. Perspectiverisk, along with many other security companies, suggest having an improved threshold for weak passwords. Instead of just a capital letter and a number with 8 characters, there should be more intricacies added in order to keep a standard across the board. Experts recommend using a passphrase, like a sentence commonly said around the house, as brute force attempts take exponentially longer time to crack when there are spaces involved.
The second vulnerability I picked up are the potential for SQL injections. Much of the network had no protection against SQL injections; one DROP TABLE could spell disaster for your network. ESecurity Planet and CMSC330 offer a few solutions for this, one of which is black listing or white listing phrases. Instead of permitting a user to enter anything at all, assume that every user can be malicious and take appropriate caution. Prevent certain statements or use input validation (mysql_real_escape_string()) in order to make sure a user cannot go beyond their permissions and see stuff they’re not supposed to.
The final vulnerability, and arguably the most critical, is OS command injection (see shell shock). An attacker is permitted to enter operating system commands, giving them access to the server itself and in turn wreaking havoc. The solution to these exploits is about the same as SQL injections, as they both take place on a server. One can whitelist commands, validate inputs to prevent certain entries from executing. However, portSwigger claims that one should “Never attempting to sanitize input by escaping shell metacharacters. In practice, this is just too error-prone and vulnerable to being bypassed by a skilled attacker.”
Binary file added week/.DS_Store
Binary file not shown.
17 changes: 12 additions & 5 deletions week/1/writeup/README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,25 @@
# Writeup 1 - Ethics

Name: *PUT YOUR NAME HERE*
Section: *PUT YOUR SECTION NUMBER HERE*
Name: Josiah Rapp
Section: 0201

I pledge on my honor that I have not given or received any unauthorized assistance on this assignment or examniation.

Digital acknowledgement: *PUT YOUR NAME HERE*
Digital acknowledgement: Josiah Rapp

## Assignment Writeup

### Part 1 (25 pts)

This was done via the ELMS assignment.
This was done via the [ELMS assignment](). (we'll post an announcement when this is ready!)

### Part 2 (75 pts)

*Replace this text with your repsonse to our prompt and your ethical argument!*
My first course of action would be to inform my supervisor or boss, whoever the head of the department is. It is crucial that we keep this information internal while we discuss solutions and attempt to
address the problem. Hopefully the company I am working for cares about its' consumers, however if they do not, I would attempt to patch the exploits myself. I would only notify the public of the
security issues if my company does not delay the release or postpone it all together. I am assuming that this would get me fired from my position as ECU auditor as exposing internal information is quite
the no-no, i might even face legal consequences for doing this. Ethically speaking, I believe my employers would be more guilty than I in this situation. If they choose to ignore my warnings they are
potentially risking the lives of all their customers. The ECU is an extremely important part of the car; comparable to the 'brain' of the vehicle.

If I were to do nothing, I would surely be held responsible for any damage, injury, or death caused by these vulnerable ECU's. My job is to audit, and if I do not do my job properly then I deserve to be
held accountable. This is quite the tragic situation, I am sure there have been many internal whistleblowers who have lost their jobs or faced legal prosecution for something like this.
Binary file added week/11/.DS_Store
Binary file not shown.
Loading