Verify that the reported host runs a legitimate application on the port.

For example, port 8080tcp is the default alternative port for HTTP. It is used by many legitimate applications.

Look up what the destination host is supposed to be running in your configuration management database (you do have a CMDB, do you?). When it is supposed to run, for example, an Apache Tomcat application server (which uses port 8080), this is intended behavior and harmless. Verify that the Tomcat server is actually working. When it does, it means that the port is in use and can not be used by any malware without having to kill the Tomcat process, and that would cause whoever needs it to complain. Add a filter rule to your reporting system to prevent further reports about that server and port 8080 to show up. Such filter rules are important because any false-positives which show up in your reports just distract from any actual positives. You might also want to add a rule to your reporting system which generates an alert when that ip:port combination does not show up anymore. It would either mean that the server is down or that it was repurposed to no longer run that application and you need to update your filter rules and your CMDB.

However, When you find that port open on a host which isn't supposed to run anything which might use 8080, that's worth investigating. Log into the server, run netstat and check what application opened that port. Then use your own judgment to decide if it is legitimate or not.


How is Skype showing ads from my Google search history?

This is because Skype displays Google Ads. So Skype isn't getting information from Google about you. They are displaying Google hosted ads which are based on your Google search history.

The search based ads shown are not based off your overall history but recent history by design as it is likely you are currently exploring the market for the product. Where previous searches might no longer be relevant for sales purposes.

Yes It is legal. When you use Google you agree to their terms of services.

  Our automated systems analyze your content (including emails) to provide you personally relevant product features, such as customized search results, tailored advertising, and spam and malware detection. This analysis occurs as the content is sent, received, and when it is stored.

As far as how they make this association the ads are hosted by Google so they have all the data they collected from you when you were using their search engine. They could've detected you are who you are via cookies or "a similar technology". They list that they collect data via that and use it exactly for this purpose under the "Cookies and similar technologies" section in their privacy policy

  We and our partners use various technologies to collect and store information when you visit a Google service, and this may include using cookies or similar technologies to identify your browser or device. We also use these technologies to collect and store information when you interact with services we offer to our partners, such as advertising services or Google features that may appear on other sites. Our Google Analytics product helps businesses and site owners analyze the traffic to their websites and apps. When used in conjunction with our advertising services, such as those using the DoubleClick cookie, Google Analytics information is linked, by the Google Analytics customer or by Google, using Google technology, with information about visits to multiple sites.

Disclaimer: At the time of this answer's post the question hinted more towards how are ads showing what I looked up and less of what is technically happening. The original asker has since updated their question. I am not saying cookies are the exact thing they use. "Cookies or a similar technology" is Google's words not mine. This also means the tracking expands beyond cookies. So just because X can't use cookies because of Y reason doesn't mean Google is strictly using cookies. As mentioned in the comments possible vectors relating the data is because they use the host machines browser for HTTP capabilities, use IPs, use some form of machine/browser finger printing, or it is a trade secret not made public. I have not updated my answer because of the lack of evidence one of these is correct.


Require Same Session ID Through All Password Reset Process Steps

EDIT - Two answers below.

Original Answer

You could embed another ID in the link which tracks back to the original Session ID.

Is the requirement that the email link, when clicked launches in the same browser or can it be on a different browser? What if it's on a different machine? For example, what if I reset the password from my phone, then move over to my computer or tablet, click on the link in the email and set up a new password? I might do this if I want to use the password store on my computer even though I started on my phone. From an ease of use perspective, it seems that the password link in the email and not the session ID from the original browser is important.

Furthermore, if the "Forgot Password" link was clicked by an attacker trying to gain entry and you force the Session ID to be the same, then the real user who receives the reset password link might experience a DOS depending upon how your system works. Certainly, the legitimate user can't reset her own password with the link provided because the Session ID originating the "Forgot Password" request resides in the attackers browser.

As application developer, you should be able to do one of the following:

Recognize a second session started from the password reset link as legitimate and let it go through.
Process the reset link and set it back to the first session ID.

However, I really think #2 is ill-advised given that an attacker might be clicking on the Forgot Password Link. I think your best bet is to use the second session.

Incidentally, the most paranoid systems I've seen force a re-login once the password has been reset. That is, you click "Forgot Password", get the email, click on the link, reset the password, then you're presented with a fresh login page which requires you to enter your username and new password (instead of quietly being logged in as a consequence of the password reset).

Second Answer - clarification in Question Comments

It looks like you're concerned with the OWASP article referenced. In this case, the article recommends doing one continuous session for a password reset and use an Alternate or Out Of Band (OOB) Channel to increase the likelihood you're speaking with the legitimate user. In this case, the user initiates the password reset process, answers security questions correctly, is locked out of the account, an OOB PIN code is sent via SMS or email (note, not a reset link), user enters correct PIN code, then new password may be entered.

This wasn't what the original question contained. In this case, a password reset link is not to be sent and only a PIN code to be viewed with an email reader and entered in the same password reset session flow. Jumping to a new Session ID (even if possible) ought to be seen as an attack or system bug and rejected.


Does Real-time typing view in chats invades privacy? Are there any detection and prevention methods?

Is this a privacy invasion?

I don't think that this is about privacy. You are voluntarily enter content into a message box provided by the other party.

  How a customer can detect this real-time typing view exist in a chat window on a browser?

Look at the traffic within the browsers developer console. If it sends data with every keystroke you do it likely transmits all the keys (but could do something else too, so this is not 100%). But that you don't see anything like this does not mean that the edit history is not collected. It could just collect it locally in the browser and then send it within a single request if you submit the message. To be really sure you probably need to have a closer look at the content of all requests exchanged and also at any Websockets communication. In other words: it is likely easy to find out if they do it for sure but harder to make sure that they definitely don't do it.

  Are there any tools to prevent this?

It is unlikely that one can simply prevent it at the clients end since the system is designed and controlled by the other party. If you fear that they might read what you type and delete simply don't type and delete but use an external editor to write and edit first and then cut+paste the final result.


Find out if someone copied a file from my external hard disk

If you loan out your disk to someone else and they attach the drive to their computer, the drive itself has no way of telling whether the file is viewed in an application, or copied.  From the HD perspective both are read operations and are exactly the same thing.

If the files remained on your computer and were copied to an external media, there's various ways to turn on auditing on your computer to trace when a file is copied.  But this relies on the files staying on your computer.


Looking for information about CVE-2006-6876 vulnerability

The vulnerability is actually unproven, (No POC) and it's been six (6) years since it has been listed to the CVE database. I bet it has been fixed since then up to the recent version of OpenSER. The overview description will get you going:

  "Buffer overflow in the fetchsms function in the SMS handling module
  (libsms_getsms.c) in OpenSER 1.2.0 and earlier allows remote attackers
  to cause a denial of service (crash) via a crafted SMS message,
  triggering memory corruption when the "beginning" buffer is copied to
  the third (pdu) argument."

Since there is no proof of concept or even a sample snippet of an actual exploit code, I can't assume the validity of this claim.

http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2006-6876

http://xforce.iss.net/xforce/xfdb/31137

http://www.securityfocus.com/bid/21800/exploit

For a POC, you might want to check exploit-db for that.

There are many types of buffer overflow, it can be heap-based or stack-based etc. The very concept of an overflow is that the attacker may send more data in a buffer (the temporary storage in memory) than it can hold. This is usually the account of programming error and not setting bound checking which can lead to the running application to crash.


How does choosing where a password is stored affect non-repudiation? (or private key storage)

This is an compendium of authentication methods.  I hope someone completes this map, and scopes it appropriately for nonrepudiation.

Most of my security knowledge is based in iOS, but input on other platforms is welcome.

Local only authentication

The key difference is that remote attacks (SSH/RDP/HTTP 401 Unauthorized) aren't possible even if the remote user has all the correct information.  The benefit here is that if the person is in physical control of the device, then the device itself acts as "something they have", and less stringent security rules may apply.

In addition, sometimes this authentication credential isn't directly convertible into an authorization token.

Depending on if the private key material is hardware secured (next section) it may escalate privileges by accessing a secure storage on the device.  Not sure if this distinction is worth noting since I haven't observed network authentication that leverages this security feature.

Windows

Windows Hello as face recognition
Windows Hello as pin entry
Windows Hello as picture unlock
Windows Hello as Thumbprint

Android

Pattern unlock
Pin unlock
Thumbprint

iOS

Thumbprint
Pin code

Apple Watch

Pin Code
Wrist detection

Hardware Secured

This is where private keys are non-transferrable, and/or the validating algorithm is secured by hardware.  Private key extraction may provide physical indications of trespass, and may risk rendering the authentication device itself inoperable.

None of these modes are usable across the network.

These authentication modes build on the previous local authentication methods.

Apple iOS Secure Element (SecKeyGeneratePair only)
Apple Watch Secure Element (SecKeyGeneratePair only)
TPM-based devices?
YubiKey (NFC/USB)

Hardware Secured Part 2

I'm not sure how to classify smartcards, since in RDP it's possible to authenticate to a remote machine through another machine.  I need to do more analysis of how a Smartcard private "proxy" works in contrast to other "proxy" solutions that could theoretically be used in the previous section

Smartcards

Software Secured via the OS

This is where the OS provides a measure of security.  Jailbroken or rooted devices may compromise security guarantees otherwise available.

These may be conditionally transferrable outside of the trusted ecosystem (some more easily than others).

iOS

Private storage per application
Application Groups
iCloud synchronization of private storage
SMS messages (iMessage has no 3rd party hooks; Android does)
Browser based Same Origin policy (Bearer tokens, remember me cookies, SOP, HTML Local Storage)
Safari app-to-website synced password via iCloud

Windows

TPM-based devices?
LiveID / Passport authentication
Browser based Same Origin policy
Browser-based local password caching (Chrome, IE, FireFox)

Chrome

Chrome password synchronization to passwords.google.com'

Android

SMS passwords/one time codes could be intercepted by 3rd party applications

Software Secured/Password managers

In many cases a password manager either provides "an additional place to look" for these transferrable/bearer tokens, and doesn't provide the same level of integrity that the hardware secured secrets provide, and doesn't have OS level guarantees.

HOTP/TOTP in software, such as Google Authenticator (it keeps the key somewhere), and Facebook authorization codes (depending on where the app stores the key, and if the device is Jailbroken/rooted)
Lastpass, Avast, 1Password can store the password database in DropBox, which makes it pretty easy for a 3rd party dropbox application to gain access to the file, and brute force the credentials. (OAuth tokens by 3rd party clients often request full access, not scoped)

Backups

The backups can be weakly encrypted on a compromised computer, or other device which can then be used to take all bearer tokens, or non-"local only"


Should you encrypt plaintext secrets that will only ever live on your own computer?

That depends, as always, on your threat model.

A malicious application running as your unprivileged user will be able to read your stored AWS credentials and either use them directly or ship them off to a remote server. If you're not particularly concerned with that (eg you carefully vet all the software you run), then feel free to ignore that.


Any known risks with Elastic File System?

It depends on the configuration of your network and servers.

If your main server doesn't have a route to the internet then you may be providing a bastion that can launch an attack from the micro to the main server. If the main server does have a public IP that doesn't apply.

I would put the two servers on different subnets, or perhaps even in separate VPCs. That would prevent the micro server attacking the main server - if you can't access, you can't attack. You'd want to make sure users who can log into the micro server don't have accounts on the main server - that means using different certificates.

I'd avoid giving the main server a public IP. Put it behind an Elastic Load Balancer (ELB), which as well as balancing load provides protection against many threats, including layer 4 and layer 7 attacks - including DDOS. You can use the AWS WAF for additional protection. ELB includes AWS Shield.

Assuming your micro server can't access your main server, the question comes down to whether EFS provides another means to attack the main server. EFS is just a hosted NFS share where you're billed for usage.

I personally don't see any way EFS could be used to attack the main server. That's not to say there isn't a way, just that I can't see one.


Is there a file system that doesn't support encryption?

No, that's impossible, unless you change the definition of a file.

A file is arbitrary data. Arbitrary data can be encrypted data.

Even if we only allow structured data, structured data can - if we assume no space constraints - be abused to store all arbitrary data* (citation needed). Which brings us to the starting point.

You can have partial success, if we introduce restrictions. An example would be if you don't want files to be encrypted after writing them, you can use a write once (or even write only) system. Or if you want to fight ransomware attacks, you could have a filesystem that preserves original copies of modified files for a certain amount of time.

*For example a restrictive text format that only allows the words "Fizz" and "Buzz" can represent all binary data by replacing 0 with "Fizz" and 1 with "Buzz".


What can a hacker do to my home router if I have the admin page enabled externally?

A lot of things, actually, depending on your router model. He could:

Dump all your traffic and read the unencrypted sessions...
...and try to attack the encrypted ones with tools such as sslstrip
Perform Man in the Middle attacks to modify the pages you are viewing, possibly to add browser exploits
Use the router as a relay to attack the rest of your home network
Worst case scenario, he may also be able to flash your router's firmware

So basically, don't have an internet facing router administration page.


What type of information should be shown to an end user for a logon session summary?

If the link is not secure, nothing at all should be shown.

The rest of the post assumes a secure link.  The following is relevant:

if other concurrent logins exist, or failed login attempts, very important, show as much details as possible so that the person can identify himself;
last monetary on-line transaction;
last monetary off-line transaction;
details of current login and timeout;
fraud numbers and links;
verification that the site is authentic or a method to confirm.

Basic information about security related matters in a link.

I think PayPal is a good start.


What is the risk of having an old, Internet capable phone not used for Interned compromised? (not smartphone)

Well, first of all you are behind a NAT of a cell phone operator equipment. Secondly, your IP changes frequently - reconnecting to different cell towers will do that (there are many factors to that). Thirdly - there are have to be either zero-day vulnerability or some services running on your phone accepting external requests to be vulnerable.

Phones are way more susceptible to 0 day vulnerabilities and MiTM attacks by impersonating wifi APs and Cell Towers (they are available for purchase and can fit in a rucksack) rather than directly from cell network.

Most of this attacks are being done by injecting javascripts through the browser when you are being served by malicious actors (wifi\cell tower impersonation). So disabling that will solve most vulnerability issues.


How is a DNS wildcard a security issue for GitHub Pages?

*.example.com. IN CNAME hello.example.com.

A CNAME is resolved in the client to finally get the IP address. This means Github is not aware that you have a CNAME for *.example.com and that whatever.example.com resolves to hello.example.com using this CNAME. All it knows is that somebody wants to access whatever.example.com since this is the name used to access a github.io IP address.
If your <user>.github.io is only mapped to the name hello.example.com then somebody else could create a different <user2>.github.io page and map it to another-hello.example.com. Both domains resolve in the same target IP address (due to the CNAME) but one will show the contents of <user>.github.io while the other will show the contents of <user2>.github.io.
Note that this only relevant if you map all subdomains to github.io using a wildcard - as it seemed to be from your original question. After the edit of the question it came clear that there is only a single name mapped to <user>.github.io and that the wildcard is used for domains which don't map to Github. This is fine and this is also not was Github warned against when reading the warning in the context it was originally published.


How does the Random Hardware Access function work on a smartphone?

This feature randomly changes the MAC address reported by the phone. Nothing else. The MAC address is available to the Wi-Fi network but also, potentially, to software running on the device. E.g. a browser.

MAC addresses are actually in two parts. The first part tells you what manufacturer the device (strictly speaking the manufacturer of the network component of the device) is from. The second part is unique to each network device.

So any unfriendly network can track "you" in the form of the hardware address of your device. As this normally doesn't change, there is a potential for interconnected networks to track your device anywhere. Unscrupulous operators including advertising networks can grab the MAC address into a super-cookie too allowing even wider tracking of where you have been and what you have done.

By randomising the MAC address, all of this is at least made a lot harder if not impossible.


Speed of key generation - Is old hardware safer?

New laptop, new software. For proper randomness, enough entropy must be gathered from hardware events, but nothing forces this gathering not to begin before the launch of the key generation process. In modern operating systems, the OS kernel is the piece of software which gathers hardware-related data, and it centralizes this process. Once sufficiently much entropy has been gathered (roughly speaking, at least 128 bits), it suffices to extend it with cryptographically secure PRNG, and you will get randomness by the megabyte (at least, pseudorandomness computationally indistinguishable from true randomness, and that's good enough for cryptography).

In Linux terms, this is the difference between /dev/random and /dev/urandom. Possibly, the OS and GnuPG version you have on your new laptop do the sensible thing and use /dev/urandom, while the previous version indulged in some weird but widespread randomness fetish and irrationally insisted on "true randomness" for some notion of "true".

Be assured that if your laptop hardware and software had been tampered with, you would not notice it with something as crude as faster key generation. Competent spies know better.


Prevent external script from loading using Burp

You need to add a "match and replace" rule. Under Proxy > Options > Match and Replace, click the Add button, and fill in the necessary fields so that if the request body contains that URL, Burp will remove it from the request.

You could also remove all JavaScript resources by ticking the Remove all JavaScript field under Response Modification.


Can my company access my computer via the VPN?

I won't answer the legal question as it varies from location to location, but I will say that many companies in the US and EU are moving to a bring your own device (BYOD) model, where employees supply their own equipment. They wouldn't be doing that if it wasn't legal. Employees using their own equipment to access company resources is nothing new.

The answers to your other questions are partially determined by the VPN software. If the software is standard, off the shelf vendor software like Checkpoint Securemote or Cisco's VPN client then the software itself is pretty safe, they are well written, tested for vulnerabilities, and they don't have functionality in them that spy on your computer.

The final consideration depends on how safe your computer is. A VPN is two-way, so if you can connect to company systems they can in turn connect to yours. If your computer is well locked down, using NIST standards for example, and your OS and applications are up to date with a good AV product installed then you should be pretty safe. If you are sharing drives without requiring strong credentials, have poor passwords, or guest accounts for example it would be easy for people to access data on your computer if you employer's VPN device rules allow it.


Incident Response - Which logs are of most interest following a social engineered remote desktop attack

There are simply too many ways to move files into a windows system without leaving much trace.

If you OS is recent, you have powershell installed which cah run HTTP(S) downloads easily and without creating any log, for instance. Or, as you noted, FTP.

A simple way for the scammer to upload and execute some code easily would be to use the clipboard: start a command line and simply paste the script in it. It'll only take a couple of lines to download and execute a program from a web site and the windows prompt does not keep a log of commands it runs.

In your case, I would chose one of the two following options:

You assume that the attacker didn't try to hide his tracks and was just after some easy money (low hanging fruit) and that they didn't actually look any deeper. This is a risky proposition but you might consider it appropriate if no important information was on the system.
You assume the attacker had the tools and skill to perform an in-depth penetration of the system (which is surprisingly easy and quick given today's tools) and must therefore consider any and all information on this machine comprised: any passwords saved or typed, all information contained in document stored or accessible, all account used (including things like cloud storage accounts, etc) and all private key stored locally and not protected by a strong password. Remember that the attacker could also have jumped to other systems accessible from this machine.

I don't think that anything in between these two extremes makes much sense. Which one you chose, however is entirely up to you. In any case, you should perform a full restore of the system (from metal, not from the OS) and reset all local passwords.


How do applications such as password managers check leaked credentials and how can I get more results?

Different password managers will do it differently. LastPass does not disclose how their exposure emails are generated, although there was speculation by users that they combed through the leaked dump known as "Collection 1" and just notified everyone who had an account on any of the domains listed.

Firefox has incorporated HIBP in their browser. 1Password is also using that service.

HIBP has become the primary method to check for these things.

The core idea is to get one's hands on breach databases and password dumps and do the correlation. You could comb through hacker sites, Pastebin (or equivalent), news reports, etc. And once you do that, it will already be in HIBP. I am unaware of any other service that does this for you or is as trusted as HIBP.

Having a secret, proprietary service for this makes no sense. The more that people submit breaches and databases to a central service means that more people can be notified. HIBP has become that public service.

I know this sounds like an ad for HIBP, but I have no affiliation with the service. I am truly unaware of any other more reliable or complete way to do what they do.

Google announced a Password Checkup Tool in 2019 that looks like a beta tool for now. As of this writing, they keep a static list of breaches that they check. They do not disclose how it works (likely because they are not finished and they were racing Firefox to include it in a browser). It is supposed to be baked into Chrome, but it's experiencing bugs. It's experimental at the moment (chrome://flags/#password-leak-detection). Time will tell if they, too, end up using HIBP.


Certs stop hackers from pretending to be a server. What stops them from pretending to be you?

The data you send back is not encrypted with your private key. You randomly generate a session key (used for symmetric encryption), which you send to the server, encrypted with the server's public key.


Internet courtship: Why would a hacker buy me poker chips?

I interpret your question as:

  What's the motivation for someone to use an alien Facebook account to play poker and stock it with chips?

It's not that strange if you think about it this way:

As poker is a game where knowledge about the dealt cards gives you a significant edge in the game, you'd like to use sock puppets at a table to know more about the card distribution.

Thus, using sock puppets that are valid, active - real - Facebook accounts are the only way to gather more information without being spotted easily by heuristics.

Düsseldorf is where one of the big data centers in Germany is located, so there is a good chance that session was held by a bot on a server, not a real person.

Using two or three such bots on a table that are connected gives them a significant statistical edge to beat the other - real - players.

This (collusion) is probably illegal in most poker games and thus real accounts are used to make detection hard. Also, that's probably not the attacker's real name, their mail address and/or PayPal account.

It is probably the account of another victim of identity theft.

In the light of the other answer, I assume that Facebook handles the legal things when you marked the activities as fraudulent.

Update for modified question:

As there seems to be no real money gains involved in this poker game instance, there is another valid reason to use your mom's account:

Because it offers anonymity. If the stolen PayPal account owner tracks the usage down, it'll be your mom as a suspect, not the actual hacker.

Using real, alien Facebook accounts offers another layer of protection with respect to law enforcement.

There still remains the question of how the account was taken over. There are questions here that might answer that.

If your mom does do password reuse, you might educate her about the implications and urge her to change all passwords and use different, strong ones for all accounts.

This would be a good time to introduce her to the famous xkcd about diceware and/or a password manager, as David suggested in the comments.

Also, as S.L. Barth suggests in the comments, using two-factor authentication wherever possible is a good call in any case.


Nmap doesn't scan the whole range of IPs

When scanning a large range of IP addresses, NMAP will divide it into groups and scan each group and provide feedback after each one. This way the user can monitor it as it progresses:

Reference: NMAP https://nmap.org/book/man-performance.html


What should I do, if my information has been compromised in the Apollo breach?

Apollo is not a service you would have directly interacted with.  They sift through public information on the internet (twitter, company websites, linked in, etc.) to collect contact information, such as names and emails.  They essentially gathered massive amounts of data which businesses would then pay them for in order to find sales leads.

You don't have any passwords that need to be changed, because no passwords were exposed.  The only real danger is that all this public information is gathered together in a single place, which makes it easier for scammers (phone or phishing) to fool you into falling for their scams.

Just stay skeptical of offers that are too good to be true.  Be wary of anyone who is trying to scare you into making a quick decision.  I'm not saying be paranoid, but be aware.


Do I have to do any setup if I want to run a VPN with the Tor browser bundle?

TL;DR: No extra setup required.

Concept:

Try to understand what Tor does. Tor builds a Proxy Chain for you to access the Internet. Your single request is routed through several different Tor nodes (known as relays) before reaching the host. The host only sees the IP address of the last node in your Proxy chain as the requesting IP address and returns the response to that IP. Diagrammatically, it would look something like this:

Your Machine ====> Tor Node 1 ==> 2 ==> 3 ==> 4 ==> 5 ==> Internet

Now what would happen if you also connect your machine to a VPN?

A VPN is like a tunnel which makes your OS believe that it is part of a private network, but the actual VPN server hosting this network may be a few hops away from your network. So effectively, when you connect to a VPN, all your traffic flows in the following manner:

Your Machine ====> N/W Hop 1 ==> 2 ==> 3 ==> 4 ==> 5 ==> VPN Server ==> Internet

Only the IP address of the VPN server is exposed to the Internet. Your VPN network adapter however remains oblivious to this route all it sees is:

Your Machine ====> VPN Server ==> Internet

When you merge run both VPN & Tor browser, the network path will look like this:

Your Machine ====> VPN Server ==> Tor Node 1 ==> 2 ==> 3 ==> 4 ==> 5 ==> Internet


Will editing a Word file from a mounted Truecrypt volume leave any trace behind on the host computer?

As you can see here the proper answer is "sometimes" but given you count on your document being private you shouldn't assume the behavior of Word is safe.

If you really want to protect your encrypted documents you must use the full disk encryption because there are too many case where your OS/apps will cache data on disk (swap, temp files, filename in the registry as recent documents, hibernation...).


I found this javascript on a webpage, is it a browser based cryptominer?

A few lines stick out, and somewhere down below there is this line:

var cryptonight = new CryptonightWASMWrapper

This seems to be a browserbased cryptominer called CryptoNight. It can use "your" browser to generate coins for the site's owner.

A few sites have been toying with this idea (and was tested on for instance The Pirate Bay) as opposed to the "normal" way of generating income via advertisement.

If you do not like your CPU being used:

you could try to block all javascript
or use an extension like NoCoin.

How does NoCoin work?

  The extension is simply blocking a list of blacklisted domains in blacklist.txt.


If a host is infected is the sandbox environment infected?

It sounds like you are looking for concrete answers, but there are none.

If the host is infected, then it is possible that any program running on the host is also affected. But, just like any malware, it would have to be programmed to do that. Not all do.

Will antivirus allow for a safe environment anywhere? No, an antivirus provides a layer of protection, so you cannot assume that you are safe just because antivirus is running.

Can malware affect sandboxes? Yes. Is it common? No.

Can antivirus protect the sandbox? Maybe, it depends on a lot of factors.


Weird condition in blind SQL injection point, substr() is valid for exactly two chars

It seems like there's something strange going on in the way you are iterating through the comparisons.

The thing that makes me raise my eyebrows when I look at this is that you are comparing hex values 1 byte at a time. This is technically okay but it will be harder to reconstruct the table names afterward.

So, breaking it down:

You know you have a target table name of 'radius'
The ASCII hex value of that string that is generated by hex() is "726164697573"

Comparing the strings should be done like this:

r  a  d  i  u  s
72 61 64 69 75 73

You want to be comparing those hex values 2 bytes at a time:

valid_user_name' and (
    SELECT substr(hex(schema_name), 7, 2)
    FROM information_schema.schemata
    WHERE schema_name not in ('performance_schema','mysql','information_schema')
    ORDER BY schema_name limit 0, 1) = '69' #

My guess is that there is an error in your iteration code that is either related to the 1-byte comparison, some kind of off-by-one error, or a combination of both.


Pentest scenario where ping multiple Hosts is useful?

Pinging during pentesting is only helpful for a quick determination of what is immediately reachable. Nothing more, and nothing less. It should not be used for complete discovery of what is, or isn't on a network since some hosts (even on an internal scan (ping sweep)) may not return an ICMP response. During pentesting, I rely on networking knowledge, e.g. ARP, network ranges, moreso than ping.


How does the key-system work?

Well it depends there are many implementations. One of them was discussed in stackoverflow:

Assuming you don't want to do a special build for each user, then:

Generate yourself a secret key for the product
Take the user's name
Concatentate the users name and the secret key and hash with (for example) SHA1
Unpack the SHA1 hash as an alphanumeric string. This is the individual user's "Product Key"
Within the program, do the same hash, and compare with the product key. If equal, OK.

Note: every key scheme can be cracked. That's why a lot of tools use online validation.

Where does it usually look to find this "encrypted file"?

There usually is no encrypted file when using the previous method. There might be other methods to generate keys with another algorithm, but they never store all keys in the program.

What do the companies do to encrypt that file?

Well if you are referring to storing the key the user typed in your system, then sometimes it's saved plaintext in a config file. Sometimes they use symetric (like AES) encryption with a hardcoded key to encrypt this file.

What method is the keygen using to create the key?

Because there are people that can figure out the scheme the program uses and just implement it in their own keygen.

What measures can companies take to prevent the use of keygens in pirated software?

Online activation, but the harder you make it for the customer to use the software the less likely you they will buy it. In the end there isn't a single piece of software that is piracy-proof. If there was, companies like Adobe and Microsoft would be hiring you instantly.


I sneakily edit a sneaky MITM attacker into your image:

The problem with this protocol is that Bob does not authenticate with Alice. That means a man-in-the-middle attacker who can manipulate the data-flow between Alice and Bob can intercept the initial connection attempt from Alice and respond with their own certificate.

Alice will then communicate securely with Eavesdropper, thinking she communicates with Bob.

Eavesdropper can then simultaneously build a secure connection with Bob while claiming to be Alice.

Now both Alice and Bob believe they are communicating with each other, while they are actually communicating with Eavesdropper. That means Eavesdropper can look at all their communication in cleartext and even manipulate it.

Solution

Either Alice needs to authenticate to Bob or Bob needs to authenticate to Alice. But how can they do that before a secure connection is established? Either by exchanging their certificates beforehand or by having their certificates signed by a trustworthy 3rd party (a certificate authority).


Is hardware wallet such as Ledger safe from being hacked by its manufacturer?

If you want to assume the worst, remember the adage that if an attacker owns has physical access to your hardware then they can pwn your hardware.

The vendor effectively had access to your hardware so theoretically could have backdoor code into it.

However... What is the likelihood that they have access and would use it? It would ruin their reputation and future business if they did this. They might do that - similar things have happened in the past, but we cannot predict whether or not that company would act like that.


Is a Whirlpool hash with random salt secure enough?

Whirlpool itself is a cryptographically-secure hash function like SHA-512 and has no known weaknesses that would be relevant to hashing secrets. However, using it directly for password hashing is a bad idea because it is fast, allowing an attacker to guess many passwords per second. This is not unique to the Whirlpool hash. A memory-hard KDF like Argon2 should be used, or at least a slow KDF like PBKDF2.

See How to securely hash passwords? for information on why this is important.


Are managed programming languages immune to arbitrary code execution exploits?

Assuming the implementation of those languages is flawless, then sure.  However, that's almost never the case.  For example, arbitrary code execution exploits have been found for JavaScript engines.
Furthermore, even with a perfectly "safe" language you can still be exploited.  A common source of arbitrary code execution is from deserializing unsanitized user input.


Is there a best practice for storing passwords in a two way encryption?

Some third party systems offer a session management explicitly for this purpose.

For example, Google may require two-factor authentication if users set that up, and for apps (such as yours?) which do not support TFA, they either have app-specific passwords, or some sort of permanent session.

There may be more than one type, for example Stack Exchange sign in has SE requesting a small amount of data from Google, but they could get a lot more if the user allowed it. On the other hand there may be other APIs or long-term session possibilities that just require the user to re-enter their password when something concerning happens. (which is rare)

Each third party service (Google, Facebook, etc.) will have their own differing options here.

If you still determine that permanently storing a password is necessary, then yes, two-way encryption is the way to go.

AES-128 (or higher) is the recommended symmetric encryption algorithm to use. As long as the key is generated using a Cryptographically Secure (Pseudo-)Random Number Generator then it will not be practical for the attacker to brute force. So, the attacker will look for a way to steal the key instead.

Assuming your data is in an SQL server, simply storing the key outside of the database will at least give you coverage against SQLi attacks. Do not hard code the key in your application source code, but rather, place the key in a separate file, so that source code may be copied out to a test environment if necessary, and a separate (non-secret) key can be used for such environments.

However, this only protects you against SQLi and source code leakage. Other types of intrusion could allow the attacker to read files throughout the server.

Make sure your application (and the authentication system it relies upon) runs in its own user account on the OS and filesystem. The key file should not be readable by other users (you without sudo) or applications (e.g. sendmail) on the system this way. (i.e. set the keyfile permissions to 600 or 400 for UNIX-like systems)

Overall you should secure your application, and any services in this environment against all manner of attacks. This is the first line of defense. Any other suggestions here are safeguards to help reduce the impact of a successful hack.

It's always possible there will be a mistake, and an intrusion would reach the sensitive user account. (the one that accesses the key file)

It may be possible to segregate user accounts within your one application, but this gets complicated.

The final safeguard is to use the end-user's password and session to derive the decryption key. This I think is the most secure solution after you've covered the above points, but is complex to implement and is not compatible with an autonomous password reset feature.


Can I get malware from a .rar file without opening it in Android?

Unless there's a vulnerability in File Explorer's archive manager, it's harmless. Even if a malware compromises File Explorer, it cannot break out of app-sandbox without another vulnerability. Simply uninstalling the app removes the malware.
To compromise system, an embedded malware needs chain of critical vulnerabilities and even then there's no assurity that the exploit will run because SELinux blocks process execution that violates SELinux policy. You can verify that your system hasn't been tampered with by simply rebooting your device. Tampered image bricks the device on boot because of Android Verified Boot.


Do USB flash drives delete a sector before writing to it?

All NAND flash needs to erase the block before writing it. But concerning security, you have to understand that you never know which block is written.
SSD and also USB flash drives have internal controllers and remap the actual flash cells. Each flash cell only has a limited amount of writes before it fails. With the typical use of a USB flash drive or ssd (you have some static files and then you have a part of the drive where you constantly write/delete/change the content) specific parts of the flash would fail very soon, destroying your drive.

Because of this, wear levelling is used.

This means if you write to sector X on the drive, the controller might write this to the flash cell 1234. You then want to delete the data there and write random bits to sector X. But the controller decides, that flash cell 1234 is more used than average and decides to write the data to flash cell 543 instead.

The original data is still in flash cell 1234! You can't read it using the controller, because it is marked as empty. But if someone disassembles your USB flash drive and reads the content of the flash cells, the data will be there.

Because there are more flash cells than the advertised storage to allow for some to fail, there is no simple way to prevent this. Even if you fill your whole flash drive with random data, there are still flash cells not written to. The way new SSD disks prevent data leakage is that they have a hardware encryption always enabled. Every bit written is encrypted with a key stored in the controller. If you send a "secure erase" command to the ssd, it simply deletes the key for the encryption and all the data turns into garbage.

So never store any secret data unencrypted on flash memory!


SQL injection with an auto-incrementing parameter

You can use the --eval parameter of SQLMap, in theory:

-data='{"id": 1}' --eval "f = open('cnt.txt','r+'); id = int(f.readline()); f.seek(0,0); f.write(str(id+1)); f.close()"

See http://aetherlab.net/2014/07/advanced-sqlmap-features-eval/ for the full details - basically, SQLMap can modify JSON data, and run Python code. The Python code reads a file called cnt.txt (which you have to create manually), then uses the value in it to replace the ID variable, before incrementing the ID variable stored back in the file.


Break into WPA2-Enterprise RADIUS wifi network by stealing credentials

It is possible, and you cannot prevent it.

Most devices will allow administrators to backup or extract certificates, including the private key. Your perception of security is not in line with the actual, real world practice.

Someone (or some group) must authorize the devices. Typically, the technical authorization mechanism is handled as a completely separate process from the management review and approval. These processes are usually performed by two entirely different sets of people. The key element here is trust.

So how do you have any security at all?

Your only choice is to trust your administrators. In the interest of robust security, however, you always verify when you are forced to trust.

How do you verify? You can review logs from your 802.1X or RADIUS network devices for problems. Does the "same" device have an active connection in multiple places at the same time? Does the "same" device show up with many different MAC addresses when it only has one NIC?

If you have an asset tracker or a vulnerability scanner, you may detect rogue devices this way as well.

The bottom line: You should perform regular monitoring and enforcement of the security policy, or eventually things will go as badly as you fear.

What about things you can't trust?

Some devices are inherently untrustworthy. E.g., your admins might not have complete control over a personal smartphone connected to the network. In that case, it is best to put those devices on a restricted VLAN.

You should always setup monitoring, detection, and barriers between the important things and the untrustable things on your network. If you ever find that it is impossible to do so, then your organization has a serious risk that must be escalated to management for resolution.


Can a 32-bit hash be made into a 64-bit hash by calling it twice with different seed?

In terms of managing the collision probability

h64 = hash32(str) + hash32(str ^ hash32(str));

where + denotes concatenation and ^ denotes bitwise XOR would not be bad, since if hash32 is a good hash, its input and output should behave as if they are statistically independent.

There is no implication that the hash is strong for information security purposes, with this bitsize it is extremely weak.


I work on an open source project. Is there a "standard" to reporting security vulnerabilities that we can use?

Primarily, three philosophies are followed in the industry regarding security vulnerabilities:

Full Disclosure
No disclosure
Responsible Disclosure

In full disclosure the security researcher who discover vulnerabilities openly announce the details of the vulnerability and in most cases a PoC of the exploit is also provided with the disclosure information. This idea was prevalent in the 90s when security researchers used to announce security vulnerabilities on almost daily basis in Windows, Linux, and other software on websites such as Full Disclosure and Bugtraq mailing list.

The second philosophy is that of no disclosure. For example, in case of patch Tuesday Microsoft releases a lot of fixes for the vulnerabilities you don't know anything about other than a short description. This philosophy is usually followed by private security researchers working in collaboration with the software vendor. It is also followed by the internal security/QA team of the vendor.

The third and most widespread philosophy followed nowadays is the responsible disclosure policy. Here, the security researcher who discover the vulnerability give sufficient time (one month is the bare minimum in most cases) to fix the vulnerability. After that time the security researcher disclose the vulnerability and exploitation details to the public even if the vendor don't patch the security hole. This is called responsible disclosure since the vendor has enough time to provide a patch of the vulnerability and don't expose critical machines to be exploited freely.

You can follow the third option since it is the one followed by most of the security researchers nowadays and provide protection to both the vendor of the software as well as the security researcher and user of the software in ensuring that the vendor will provide a patch for the vulnerability because of the pressure of the impending date of full disclosure.


Is it secure to connect to a remote Windows Server using Remote Desktop only?

If you are using SSL, see this technote for details.

In particular, it is important to set up your security layers

  The three available security layers are:

  SSL (TLS 1.0) SSL (TLS 1.0)

  will be used for server authentication and for encrypting all data
  transferred between the server and the client.

  Negotiate

  The most
  secure layer that is supported by the client will be used. If
  supported, SSL (TLS 1.0) will be used. If the client does not support
  SSL (TLS 1.0), the RDP Security Layer will be used. This is the
  default setting.

  RDP Security Layer

  Communication between the server
  and the client will use native RDP encryption. If you select RDP
  Security Layer, you cannot use Network Level Authentication.

And the Encryption Level:

  Low

  Data sent from the client to the server is encrypted using 56-bit
  encryption. Data sent from the server to the client is not encrypted.

  Client Compatible Encrypts client/server communication at the maximum
  key strength supported by the client. Use this level when the terminal
  server is running in an environment containing mixed or legacy
  clients. This is the default encryption level.

  High Encrypts
  client/server communication using 128-bit encryption. Use this level
  when the clients accessing the terminal server also support 128-bit
  encryption. When encryption is set at this level, clients that do not
  support this level of encryption will not be able to connect.

  FIPS
  *Compliant* All client/server communication is encrypted and decrypted
  with the Federal Information Processing Standards (FIPS) encryption
  algorithms. FIPS 140-1 (1994) and its successor, FIPS 140-2 (2001),
  describe U.S. government requirements for encryption.


Can I use HashiCorp Vault to restrict access to credentials based on CIDR ranges?

It turns out that, as of 0.6.4 of the open source version of HashiCorp Vault, I can restrict access to AppRoles based on CIDR ranges, although I couldn't do this with the other authentication methods, as it happened.

Later versions of HashiCorp Vault have added the CIDR range binding capability to more and more authentication methods.
HashiCorp added the ability to not only bind Vault Auth methods to CIDR ranges, but also allows binding any Vault Tokens produced to configurable CIDR ranges.

When the feature was enabled:

https://github.com/hashicorp/vault/blob/master/CHANGELOG.md#0103-june-20th-2018

Where the magic happens:

https://github.com/hashicorp/vault/blob/a54603039d5c38fcc2c9468f3beb29e1c1c2aca0/helper/cidrutil/cidr.go

What is a CIDR?

  CIDR (Classless Inter-Domain Routing, sometimes called supernetting) is a way to allow more flexible allocation of Internet Protocol (IP) addresses than was possible with the original system of IP address classes.
  A CIDR network address looks like this under IPv4: 192.30.250.00/18
  Because it's just a bitwise way to specify IP address ranges, 192.30.250.00/18  would correspond to the IP address range of 192.30.192.0 to 192.30.255.255.

Links about CIDRs

https://www.ipaddressguide.com/cidr
https://searchnetworking.techtarget.com/definition/CIDR


If I accept a certificate in order to use my company’s Wi-Fi, am I vulnerable to MITM attacks?

In this case, no, your device will not be subject to MITM of https traffic.

It is possible for employers to deploy a root certificate to machines in order to install a MITM proxy.  (BlueCoat is a company that offers such a device commercially.)  However, that requires a "trusted root" certificate to be installed in the client computers.

In your case, the certificate pictured in your screen shot says it will be used for "server authentication."  This is not a trusted root certificate, and cannot be used to verify other certificates.  This means a MITM proxy won't be able to use it to give you a substitute signed certificate.

Of course, your unencrypted traffic is still subject to inspection.


What causes the "This site may be hacked" or "This site ahead contains malware" messages?

I was about to answer this question, as I was doing a bit of research I stumbled upon this excellent answer from Quora by Steve Gill, Co-Founder and ex-Chief Scientist of a Premier Cyber Intelligence Organization. Then realised this answers it better than I could.

  I have worked with Google privately on some of their technology and
  was one of the few people they called for help when they themselves
  were hacked by China who stole their source code.

  Google China hackers stole source code - researcher

  Google have quite a few tools in their arsenal, and more have likely
  been added since.

  To name a few:

  They acquired and now fully host Virustotal, one of the biggest AV    engine aggregators in the world that can simultaneously scan files
  with 40–50 antivirus engines looking for signs of malware.
  They have a network of independent proxies that will load a webpage    and run it inside of a custom sandbox. Any unexpected system level
  modifications detected inside that sandbox help automatically report
  unwanted malicious behavior.
  They perform malware detection on the sites they crawl natively and    run them through simple algorithmic checks looking for well known
  malicious third party scripts and embedded code.
  They partner with third party data providers that feed them potential    malicious seed data.

  It is Google’s job to present data that is of highest quality for the
  browsing and searching experience. Helping prevent attacks against its
  users is keenly part of that tenant.

  Quite a few tools also help the web administrator deal with such
  problems proactively such as reporting on malicious content by AS (BGP
  Autonomous System Level Reporting), or directly to the administrator
  through tools such as the Webmaster Tools.


Found a post on SuperUser showing how to do this with iptables: https://superuser.com/questions/923512/how-can-i-block-all-outbound-connections

In addition, Digital Ocean offers cloud firewalls:  https://www.digitalocean.com/docs/networking/firewalls/

It ended up being very easy to configure a firewall as shown above.

(I promise I'm not a Digital Ocean representative in disguise.)


Clarification about IV in PBKDF2 to generate encryption key

The salt is here to prevent cost sharing by attackers. If two passwords are hashed with the same salt, then an attacker could hash a potential password using that salt value, and compare the output with the hashed versions of the two passwords; in other words, the attacker can attack the two hashed passwords for the cost of attacking one. This scales up: if there are 1000 hashed passwords, all with the same salt, then the attacker gets 999 of them "for free".

This kind of cost sharing can take several forms, one of them being precomputed tables (and one specific kind of table is called "rainbow table"). In all generality, cost sharing is an instance of parallelism (with the appropriate space-time warp).

You should strive to reuse salt values as rarely as possible; if possible, never. In your case, you would store the salt along with the encrypted file; and each file would have its own salt value (even if two files use the same password, each should have its own salt).

If each file has its own salt value, then you could do any of the following for the IV:

Select a random IV and add it to the file header (along with the salt).
Use PBKDF2 to generate the key and the IV in one go (e.g. ask for 256 bits of output, 128 for the key and 128 for the IV).
Use a fixed IV.

The second and third option are safe only if you are really generating a new salt for each file, in a big enough space that collisions don't occur in practice. Otherwise, you may end up with IV reuse, which is a sin. Specifically, what is Really BadTM is using twice the same IV with the same key. If each file has its own key (because the key comes from processing the password with the salt and each file has its own salt) then a fixed IV is fine.

Anyway, if you need encryption then chances are that you need checked integrity as well, which calls for a MAC. Assembling encryption and a MAC properly is tricky. The proper way is to use an encryption mode that already does the job in a way that makes cryptographers happy. In practice, use 'aes-192-gcm', not 'aes-192-cbc' (or 'aes-128-gcm': 128 bits are already good enough, and it will be slightly faster).

Note that the actual IV length for GCM is 12 bytes.


How can wrong time synchronization be exploited?

If your time is wrong, this can lead to a system no longer being accessible. So the "otherwise working correctly" is limited. Many security protocols (ok, TLS not so much, except for CRLs) rely on time being synchronized more or less. For example: most Windows 10 systems fail when they are more than 5 minutes off (best practice Kerberos value).
Forensics is also a lot harder; you need to keep your time differences at hand when you are correlating logs. Also, when it comes to a court case, your explanations become hard to follow for non-technical people (f.e. judges) if the times don't match.
The same problem, for example, with a contract with a file date years back. To find the latest document: sort by date. Too bad that the contract with all the amendments you made has an earlier date than the original contract.
And your incremental backup may go wrong too.
So all sort of things go unpredictably wrong, sometimes in a way that will be detected much later. The influence will probably be more on the integrity and availability than on the confidentiality.


Most probably your IP address was being used by someone, who was already under attack (like using financial or banking transactions), thats why you are target of such attacks. but dont worry, as CSF is blocking IPs, you are safe. most of these port scans are automatic bots, they are not targetted attacks to gain access to your server. try to keep yourself updated with latest patches , open least ports, (if you have web application, then use WAF). you should be good to go then


There are a number of CVEs against SMBv1 including:

Arbitrary Code Execution CVE-2017-0148
Denial of Service CVE-2017-0280

So it comes down to what is an acceptable risk for you, and do you try to compensate for it by putting other controls in place like using an AV, a firewall, automatic patching, OpenDNS, etc.

Is it worth it to enable it for now and then look for a replacement for your NAS in the meantime? Only you can answer.

Me, I'd leave it on using all of the above extra security measures and look on Amazon to replace the NAS in the near term.


Bluetooth 2.1 and forward require encryption on all connections other than service discovery.  A key is exchanged during pairing and used for all future service delivery.  If your hardware is using a standard prior to 2.1, then it is possible it could use an unencrypted connection, but otherwise it is guaranteed to use encryption.

In fact, the NSA has even has a post that says they have found it secure enough for unclassified government use, so they don't see any critical flaws in the encryption.  So as long as you use encrypted connections, you should be secure.  The chances of a sufficiently advanced attacker to be able to hook in to it are pretty much non-existent if used and paired properly.


Is HTTPS meaningful for Jenkins Docker container behind Nginx?

In practice I haven't seen that often.  As long as

the traffic is secure without encryption between the reverse proxy (nginx) and the application (e.g. on the same hardware or safe network); and
it is OK for you that the nginx instance handles all your network certificates

nginx would handle HTTPS and proxy_pass the rest upwards.  This has advantages of speed as well as simplicity in the apps.


Why is my web site being scanned for license.txt, and should I be worried?

That's just some normal Internet background noise from automated scans, and as they result in  404 Not Found, you shouldn't be worried. The license.txt, readme.html etc. are scanned because they may contain version information, which may lead to finding some unpatched vulnerabilities.

That's not the only place such information could leak from: <meta name="generator" might contain version information, WordPress adds ?ver=X.Y.Z parameters to linked CSS and JS files etc. You could remove such hints, but the best solution would be updating the core, all plugins and all themes regularly, and possibly automate the updates. (Not that you'd even have WordPress installed, but the same applies to any CMS & webapp.)


A central tenet of OWASP - Insufficient transport layer security is that the session ID is never leaked over HTTP.  Although mixed content sites are a bad idea from a security perspective,  one way that it can be done is using the Secure Cookie Flag which will tell the browser not to include the session ID in non-HTTPS requests.

If you host any HTTP page,  then an attacker could introduce JavaScript in a MITM to compromise an authenticated session.  HTTPOnly cookies would prevent the malicious JavaScript payload from reading the cookie value,  however the payload could still read authenticated pages using an XmlHttpRequest, obtain CSRF synchronization tokens, and perform unauthorized actions.  The solution is to use HTTP-Strict Transport Scrutiny,  which also solves the problem of SSLStrip.

HTTPS is extremely light weight and you will see about 1%-2% increased CPU usage when using HTTPS over HTTP.   Not using HTTPS because of some illusions of efficiency is a mistake.  HTTP/2.0 may be HTTPS Only.


Help identifying contents of strange email

Looks like weakly encrypted username - password pairs, with passwords containing 5 to 20 characters.
Ain't nobody got time to decrypt this.

Why not asking Tienne what's up?
If you don't get a response, block him/her and move on.


Why are passwords not locally hashed aditionally?

Hashing the passwords on the client would at best do nothing, and at worst make users doubt your applications security.  As far as the server is concerned, the client hashed passwords are effectively the cleartext passwords.  See my answers to your individual questions.

No, it does not.  It just shows that it has been hashed in the browser.  To the user, it does not mean that the password are hashed yet again on the server.  If I saw this, I would assume that the hashing is being done only in the browser, and would assume the application is not secure.
I assume you mean private key to the SSL certificate.  If this has been stolen, there are much larger issues at stake.  With the certificate information leaked, someone can successfully impersonate your web server, which means that none of the downloaded content can be trusted.  The client-side scripts can simply snatch the passwords before they are encrypted.
No, they would only need to crack the hashes obtained from the server.  Again, as far as the server is concerned, the client-hashed password is the cleartext.


Is it safe to write the salt AND/OR the IV at the beggining of an encrypted file?

Salts and IV are not the same thing; salts are for password hashing, IV are for starting up some encryption modes. Neither is meant to be secret, though; otherwise we would call them "keys". It is safe to put the IV and/or salt in file headers.

Your adding of "a few random data (256 bits, just to muddy the waters)" is the computer equivalent of sacrificing a chicken to propitiate the gods. If it takes such rituals to make you feel good, then why not; but believing that it changes anything to your actual security would be somewhat naive.

CBC mode requires a random, unpredictable IV; it is a hard requirement. Using an UUID is dangerous in several ways:

Only the "v4" UUID uses a PRNG.
Nobody guarantees that the PRNG used for UUID v4 is cryptographically strong.
Even if it is strong, there still are six fixed bits in the UUID (the ones which say "this is a v4 UUID"); only 122 bits are random.

CBC is not the best mode in class anymore; we found better. In particular:

CBC has strict requirements on IV generation (Chosen-Plaintext Attacks have been shown to be specially effective against poor IV generation).
CBC needs padding, and padding handling has been shown to be delicate (decryption can turn into a "padding oracle" if done improperly).
CBC does not ensure integrity. Usually, when you need to encrypt (for confidentiality), you also need to reliably detect hostile alterations. For that, you need a MAC. Assembling a MAC and encryption is tricky.

Newer modes solve these issues, by tolerating a simple IV (a non-repeating counter is enough), by not needing padding, and by having an integrated MAC where the integration has been done adequately. See in particular GCM and EAX.


How does anti-phishing software work to identify phishing sites?

Often times phish detection on email and web sites is detected via keywords.  It's looking for text that is attempting to convince a user to input credentials, submit personal information, or even uploading documents.  The anti-phish technology can also detect strong persistent language and use of hyperboles that is consistent with pressuring a user into submitting the requested information.

  Examples: "enter your account information now", "your account has been
  disabled", "you have reached your email quota", "reply to my email
  immediately", etc.

Also, some very sophisticated anti-phish software can detect common typosquatter domains.

  Examples of typosquatter domains could be: wellfargo[dot]com or
  gooogle[dot]com


Conflicting requirements in FIPS 140-2 regarding manual key entry

No the manual entry referred here is done by an external device (i.e. a pinpad) which is connected to the cryptographic module.When you enter the key you give an input to the cryptographic module so the output data path can be disconnected.  Moreover the external device can have a display screen where the key holder will see what he types.

The meaning of requirement 2 is that the manual entry of the key on the device display doesn't have to be hidden (in contrast with password hidden with stars when you log in most of the systems). So the key holder entering is key can verify what he enter.


That all depends on the system, the attacker, and the level of preparation they had. If they have unlimited preparation, they could do effectively anything that they could do with an unlimited access window. Even if they do not have in-depth knowledge of the specific system, it would not be difficult to very quickly inject malicious code that allows for subsequent remote access. They could:

Connect a PCMCIA or PCIe card and dump memory or inject code.
Splice a hardware keylogger in between the keyboard's PS/2 or USB cable.
Quickly download and execute malicious code, or modify existing code.
Access sensitive files and save them (e.g. with a camera or USB flash drive).
Physically destroy the computer (e.g. with a hammer or a power surge over USB).
Simply grab the system and pawn it off for a quick buck.

Time for a story. I once had a target who I would be in close proximity to for a brief period. My goal was to gain persistence on their laptop to exfiltrate sensitive documents. I knew I had only a few seconds every time they went out of sight, so I couldn't just grab their laptop and take my time. I obviously also could not steal it. Luckily, I came prepared. I had a programmable USB device that I plugged in. As soon as it was plugged in, it simulated keyboard input to open PowerShell and execute a few commands to download a payload I had set up earlier. The scenario went like this:

I waited until this person had left to get something for me in another room.
I leaned over on the table where the laptop was and surreptitiously plugged in the device.
I waited a few seconds to be safe, unplugged it, and tried to keep a straight face.
After they gave me what I asked for, I thanked them and left.
When I got home, I got on my computer and connected to their machine.

It was not difficult, did not take an extensive period of preparation, and was moderately stealthy. I could have made it even more stealthy if I used something that looked like a cell phone so I could claim I was just charging the device and didn't see any other USB ports around. The moral is that you can do a lot with just a few seconds of access, so you must never underestimate the risk.

So how do you protect against these threats? You need to develop a threat model. Figure out who your adversary is, what assets of yours they are after, and what their resources are. If you don't want your mother to see your porn when you're at her house, you probably don't need to worry about exploits abusing corrupt EDID in a VGA or HDMI cable. If you are holding extremely valuable company secrets in a highly competitive industry (robotics, epoxy, etc) and are going to a high-risk country like France or China, you absolutely need to worry about sophisticated attacks, because industrial espionage (aka the more illicit side of "corporate intelligence") is rampant. Stay with your computer at all times in adversarial situations. Lock it if you are going out of its line of sight, and bring it with you or physically secure it in a safe if you are going to be away for a longer period.


Website Authenticity/Verification without SSL

There's nothing out of the box besides SSL that does this, if you were a web developer you could address it programatically by designing in a verification mechanism that would communicate to specifically designed client software, or maybe a browser plug-in. This seems like quite a bit of work when SSL already does the same thing.


How does allowing breaking grabs with keyboard actions pose a security risk?

From here:

  The bug allows users to work around screen locking (e.g.
  gnome-screensaver) by hitting Control+Alt+keypad multiply or
  Control+Alt+keypad divide. This terminates the input grab the
  screensaver has and thus allows a user to interact with the desktop,
  skipping the password entry.

Therefore enabling this feature will allow the screensaver lock to be bypassed.


It depends on how your network is setup; but usually the IP is not stripped and the packet headers contain the original source and destination.

Generally, a core switch comes after a router, the router is likely on an enterprise network to be doing a lot of NAT translations.  In which case, you may see the NAT IP of a given packet be referenced (e.g instead of some public ip, you see 192.168.x.x).  So it's likely you will see the internal IP as a source of anything outbound, because, that's the only IP the network device knows about -- the external IP is applied by the router doing NAT.

However unless you're doing some strange (e.g. Cisco fix-up) packet-level inspection and changing, the packet headers should remain the same and indicate the source and destination IP of the endpoints -- not of any intermediate network devices that carry the traffic. Those devices only have management IPs -- and don't tend to (although this can happen in sophisticated layer 3 switching setups which are uncommon) alter the packet headers.


Have there been successful class action lawsuits due to infosec breaches?

Yes, and a high profile one was Sony's PSN breach which Sony settled for $15million, one report here.

Though the headline figure does not appear as bad when you realise that it is not an actual pay out, it is mainly free games and memberships for those affected.

From a purely UK specific perspective related to the Data Protection Act (DPA) compensation:

In terms of risk management decisions and the potential legal cost of a breach (and its part in deciding appropriate security measures) there was an interesting decision made in the court of appeal earlier this year in the on-going Hall v Google case...

Court of Appeal judgement

The DPA rules for compensation are such that compensation for distress can only be pursued where actual losses have been incurred i.e. distress in isolation does not entitle compensation. In the Hall v Google case the Court of Appeal decided that this aspect of the DPA was inconsistent with the EU legislation and was therefore not applicable, which could set a precedent depending on how the rest of the case plays out.

In my opinion this is something to keep an eye on because the implications are potentially huge!


The sequence number MAY be used twice.

First there is, indeed, the sequence number, which is the number of records sent since the last handshake. That value is what is used in the "additional data" for AEAD cipher suites (in CBC+HMAC cipher suites, the sequence number is part of the input to the HMAC).

Then there is also the per-record IV, which must have length 12 bytes; in TLS 1.2, these 12 bytes are the concatenation of an implicit 4-byte value (the one computed from the key exchange) and an explicit per-record 8-byte field. The sender is responsible for choosing that 8-byte value, with the caveat that any given value MUST NOT be reused (with the same key). However, GCM is not picky about that IV, as long as the "no reuse" rule is respected. Thus, many implementations find it expedient to use a simple counter, and the consequence is that the counter will be synchronized with the sequence number, since both will be incremented for each outgoing record. This is not a problem.

TLS 1.2 could have been defined to use the sequence number directly for the GCM per-record IV; this would have saved 8 bytes in each record. It would have been fine. The saving is not big, though: you want to save bytes when you send a lot of data, and then you are probably using big records (16384 bytes of plaintext per record), so 8 extra bytes are not comparatively a big deal.

Why TLS 1.2 was defined that way is a bit unclear; one would have to dig through the minutes of committee meetings to see if there was some reason for that. It is a rather safe bet, though, that if there was a "reason", then it probably was a vague semi-dogmatic assertion like "we must include an explicit field because it may help counter a future unknown attack in some as yet unspecified way".


Why is my browsing history visible outside my network?

Google Chrome has a Sync feature that synchronizes browsing history, configurations, bookmarks, etc. between Chrome browsers using the same Google Account. You've very likely used your Google/GMail account when starting Google Chrome the first time on both computers.

You can change the sync settings on your home computer and disable the items you don't want to sync. For example, you can disable syncing the browsing history.


Western Union prompts for bank login information — ridiculously bad practice?

Is there any angle from which this isn't a completely insane scenario?

No this is not an insane scenario.I think it simply boils down to trust factor and since your bank trust this third party you will also have to trust them.If they do some foul play wouldn't it be easier to catch?
Also their FAQ pretty much answers everything.

Your online banking ID and password allows your bank to verify your
identity and connect you to your bank account from the merchant’s site
or app. We do not store or share your online banking login
information.

.

PayWithMyBank leverages your bank’s security infrastructure. In fact,
when you use PayWithMyBank, it’s your bank that verifies your
identity. If you change your password with your bank online, the next
time you use PayWithMyBank you will need to enter your new password.

also

No, PayWithMyBank does not store or share your password. Every time
you use PayWithMyBank, you will be required to enter your online
banking password.

Could they lie to you about this?Sure
But i see no reason they would and at the end of the day you will have to trust your bank to make correct decisions about your security.
Also i might add that teaching people to give away their credentials in such a way might not be a good practice in terms of security.That's all i can think of


Issues with resetting password guess count?

A lot of websites use the reCaptcha when someone is starting to have failed login attempts. The reason this is good is because 1) it's anti-bot because bots have a hard time reading images and 2)It keeps your user on the page without having to leave or cause any extra hassle such as having to log into their email for a new link.

There wouldn't be that much security risk but in the worse case scenario, if an attacker also had access to your email account, he can write a bot to login into your email, get the link, navigate to the link and start trying again and repeat the process. I think the best solution is to implement reCaptcha after a user gets too many incorrect passwords.


Creating a Password Policy for a Bank Corporation, what must one take into consideration?

Let me try to answer this question.

In general, it is the role of the business owners to have up to date inventory of all assets, to decide on critical assets and to prioritize the importance of before any further business impact analysis and action related to security (confidentiality, integrity, accessibility) happens.

One could classify assets and data related to any organization's security as follows:

1) assets the organization owns and has control over:

physical security, physical access control systems, access to media including electricity, water, gas, fiber, any cabling, building structure
on-premise infrastructure including on-premise IT systems, applications, and networks
IoT devices (ATMs, routers, switches, printers, displays, PoS kiosks, smart TV displays, UPS)
corporate laptops, tablets, smartphones
WiFi and LAN networks,
VPN access,
virtualization (VMs, virtual firewalls, containers)
Mobile banking applications (including access to source code, access to platforms and shops)
firewalls
backup and archiving solutions
public and intranet websites
content management systems
document management systems
any process automation solutions
business intelligence, business warehouse solutions
operational data databases
legacy systems, obsolete systems
data on external media (USB sticks, memory cards, external drives, CD/DVD storage)
confidential printouts, including mail
smart cards, hardware security tokens
biometric data repository
Software Development Lifecycle-related (CI/CD applications, source code versioning repositories, development access keys)
testing environments
experimental/sandbox systems
Data Leakage Prevention systems
logging and auditing systems
Identity and Access Management systems
Governance, Risk and Control systems
Fraud Management systems
call-center systems
CRM systems
PII data: employee data, customer data, vendor data (master data, voice/audio recording)
IP: intellectual property, strategic analysis, contracts, and procurement
software licensing,
software patching,
Password Management software

2) items the organization interacts with but has limited control over:

employees, externals and on-site contractors,
cloud systems (IaaS, PaaS, SaaS, FaaS),
third party systems and their maintenance and security roadmaps,
third party software and their maintenance and security roadmaps,
BIOS
OS source code
interface/middleware/API access for customers, vendors, and government,
Bring-Your-Own-Device (smartphones, tablets, laptops)
vendors and their IT systems
third party load balancers, cache
third party OATH, identification and authentication providers

3) items the organization has no control over:

customers and their IT systems, government (regulatory, compliance, legal, law enforcement) systems, that require and collect data via connectors/APIs/periodic data transfers,
automated internet crawlers, data collectors and bots
random visitors
hardware-level security ( CPU, memory, trusted platform module, data ports)


How do you adjust offest and kernel stack size from an exploit?

CRED_OFFSET needs to be adjusted, so it's offset of cred member of struct task_struct. This can differ across kernel versions and compilation options that influence presence and size of other task_struct members.
Not sure what the quickest way to check this is. I'd get target kernel vmlinux and use gdb to get the offset.
Stack refers to get_sp, where it calculates stack pointer. This can again be different (I think on newer kernels stack can be independent of task_struct, so you can't just calculate it), but if kernel version is approximately the same, you'll probably get away leaving it as is.


Better than brute-force way to find the "lowest" sha1 hash?

If there is a method faster than brute force, it represents a weakness in the hash function.  Essentially what you're looking for is a modified preimage attack, just for a group of hash values rather than a single value.


A 'Reflection-based DoS Attack' in the traditional sense means that a number of computers spoof their source IP address to the same address (10.1.1.99) who is supposed to be the intended victim, and then the computers connect to a 'reflector' (10.1.1.88). The reflector attempts to respond to all those connection attempts by connecting to the spoofed address, but ends up flooding the victim with unsolicited traffic.

With IPv6, the addressing scheme is designed to prevent spoofing because a portion of the address is supplied by the network(s) the machine is a part of, so these types of attacks could not be launched.


How can crackers reconstruct 200k salted password hashes so fast?

None of the existing answers cover the critical part of this question to my satisfaction: what about the salts?

If just the password hash values were posted, other crackers can't possibly know:

The actual per-password (supposedly random, per the source) salt value.
How the salt is mixed with the password in the code.

All they have is the final, resulting hash!

There are lots of ways the password and salt can be combined to form the hash:

sha256(pass + salt)
sha256(salt + pass)
sha256(sha256(pass) + sha256(salt))
sha256(pass + sha256(salt))
sha256(sha256(...(salt + pass + salt)...))

But if the salt is the recommended 8 characters of pure randomness …

sha256("monkey1" + "w&yu2P2@")
sha256("w&yu2P2@" + "monkey1")

… this means a "typical" 7 or 8 character password becomes extremely difficult to brute force, because it is effectively 15 or more characters! Furthermore, to crack password hashes that you know are salted, unless you also have the salt, you have no other choice except brute force!

Based on research I did using GPU cracking, I achieved 8213.6 M c/s using two high end ATI cards brute force cracking MD5 password hashes. In my benchmarking this meant I could try:

all 6 character password MD5s   47 seconds
all 7 character password MD5s   1 hour, 14 minutes
all 8 character password MD5s   ~465 days
all 9 character password MD5s   fuggedaboudit

Note that SHA-256 is 13% of the speed of MD5 on GPUs using Hashcat. So multiply these numbers by about 8 to see how much longer that would take.

If the salts were not known, that means you're essentially brute forcing the equivalent of 12+ character passwords. That is far beyond the realm of any known computational power.

Now if you want to argue that …

The original crackers also obtained the salts, but chose not to post them.
The original crackers also have the source code (or it's open source) so they know how the passwords are salted, but chose not to post that information.
Formspring is lying and their passwords were not salted or salted improperly such that the salts had no effect.

… then yes, cracking 200k of 400k password hashes in a few days is easily possible.


I highly doubt that these CSP reports where generated with client-side malware.  I suspect this the behavior of a load-balancer that is leading to positives.   Malware authors prefer hosting their applications using infrastructure with less oversight, where as Akamai and Cloudflare provide security services and have their own highly skilled security teams.

Without actually seeing these logs,  no one can help you.  The first thing I would do is download the JavaScript in the CSP report and perform an malware analysis on it.


Two passwords provide better security than two-factor authentication?

Ah marketing. (And they even trademarked the stupid thing)

The problem here lies in the fact that they really aren't comparing things correctly. They're mixing up authentication of the caller and protection of your secret data, jumbling them all together and then comparing that jumble with something tangentially related to just the first part, and then making a big bold claim that might be correct if you twist logic just a little too much. It's kind of like mixing ice cream and nuts and calling it healthier than vegetables because nuts make ice cream healthy-er (if the only takeaway you got from that is good analogies are hard...).

But really, no this is not better than 2FA because it doesn't actually introduce a separate factor, just another instance of an existing factor (something you know). It is marginally better than a single password, but if I can steal your password I can probably steal your other password with just a little bit more effort.

It might make the protection of your passwords a bit better if the decryption of the passwords occurs on the browser using the key from localStorage (it might do this, as they mention WebCrypto standards, and it doesn't seem to support IE).

With that being said the emergency kit is very much intended to not be secure, but to be available to you in an emergency. This is for break-glass scenarios where you absolutely need access. If you get this then its game over no matter what.

On the other hand, as it stands real 2FA might not solve all your attacks either. If you can still MITM the browser and server then you can get both the user password and account password and even the 2FA code (fail the request for the user, use the passwords and 2FA code and then pilfer the secrets).


You MUST run your own servers, and then try to attack them, then secure them from that attack, then attack again.

You should use VMs.

One source of working VMs for a wide range of applications is Turnkeylinux; another is Bitnamithey should not have deliberate security flaws, but if you install an ISO created a few months ago, and don't let it patch itself, you can check for the most recent flaws in various software.


What is the purpose of the Volume Master Key in BitLocker?

I was wondering about the same thing myself, did some googling around, until found the answer here:
BitLocker : Update Volume Master Key and meaning of "keyed" vs "re-keyed"
Microsoft's docs

Basically, use of intermediate key (VMK between FVEK and KPs) is to allow the change of keys if KPs are compromised without the need of re-encrypting the (encrypted) data itself.
KPs compromised -> create new (KPs and) VMK -> encrypt old FVEK with new VMK

Then, attacker with old KPs will get to the old VMK and trying to decrypt the encrypted FVEK won't work (because it was re-encrypted with new VMK). Of course, depends how quick the attacker is and other circumstances.


Is a Lucene search index effectively a backdoor for field-level encryption?

According to an article from 2013, the answer to this question appears to be, "Yes, unless you don't mind your search index being basically useless.":

Terms are stored in our classic inverted list, for each term there is a list of documents and, optionally, the position within that document. It's quite possible, though tedious, to reconstruct a document from the list of terms in the index. They may not be easily readable by a human because the terms have been through the entire analysis chain; think of stemming, synonym substitution, any of the transformations, and more, listed here. While these can be hard to glance at and read, the document so reconstructed should be considered complete; sensitive information is available.
[...]
Naturally ... the question arises "can't we encrypt [the index files]"? Sure, we can. It's just that doing so leads to some surprising results, often making the resulting index next to useless. Here's why.
A decent encrypting algorithm will not produce, say, the same first portion for two tokens that start with the same letters. So wildcard searches won't work. Consider "runs", "running", "runner". A search on "run*" would be expected to match all three, but wouldn't unless the encryption were so trivial as to be useless. Similar issues arise with sorting. "More Like This" would be unreliable. There are many other features of a robust search engine that would be impacted, and an index with encrypted terms would be useful for only exact matches, which usually results in a poor search experience.


Interception of competing businesses phone calls

I'm very sure that's not (just) an app.

There are two practical ways to intercept calls:

Malware
Rogue celltower (IMSI catcher)

Both are highly illegal. The first one requires targeting those people's phones with viruses, the second one's very expensive and only local.

You hint he's able to select multiple business numbers.
Now it's unlikely he's placed boxes at each of these locations, and a little more likely he's paid some hackers a bitcoin to target the businesses.

You remember any office documents in your mail asking you to enable macros?


Is it possible to perform MITM on HTTP POST?

HTTP is not encrypted, so if you "get in the middle" you can read the communication and modify it. You can get in the middle by e.g. hacking a router or cutting a cable. Your ISP is already in the middle and can read your HTTP communication.

This is true for all HTTP methods - POST, GET, etc.

Is it possible to brute-force HTTP POST?

Since HTTP is not encrypted there is nothing to brute force.

How do you protect your site?

Use HTTPS (that is, HTTP with TLS). If you do it right, a MITM can not read or modify the traffic, and the cryptography can not be brute forced.


Different Nmap results on MacOS and Ubuntu 16.04

The reason of this problem is the NAT network. Analysing the network with Wireshark, I saw that the TTL number was 128. This is because in the NAT network recive the packets and recreate them. This cause problems on Nmap analysis. So, the solution is use a Bridge connection on vmWare or use Nmap on native OS.


Well you made a very common mistake. Once a system is compromised you should reinstall the system and restore from backups. You can't trust it anymore. You also  change every single password.

If they are skilled enough to change your MD5sum binary, they will probably be skilled enough to install a rootkit or similar.

Was anything vulnerable, possibly vulnerable (something on the internet you wrote yourself, etc)?
Did you reuse any passwords?
Are there any services running?
Does anyone else have physical access
Do you go to dodgy sites and download cracked/special/homebrew software?


How secure is wifi traffic from shared users?

It is not secure at all.

Anything you transmit that is not encrypted can potentially be read in this scenario. Read up on the recent Firesheep snafu for an example of how this particular issue has been exploited recently.

The details of what can easily be accessed in your scenario will depend a bit of the make, model and setup of your networking equipment. How easy it is to trick such hardware into using a broadcast mode when sending out packets or setting up an eavesdrop on somebody else's channels varies widely, but as a rule of thumb it is usually possible to compromise any network you have physical access too.

Basically if you are an the same physical network and layer you should assume that you traffic can be observed by others on the same network and layer. This is part of the reason Windows prompts you when you connect to a new WiFi access point for whether the network is a shared public one or a private home or business network. In the later cases it can be assumed that the other machines that can see the traffic are friendlies and the guard will be lowed a little bit for things like file sharing and other networked services.

If you are on a shared network or connecting through any networks not in your direct and exclusive control, anything you do that you don't want in the open needs to be secured before it leaves your machine.


The VPN operator can track and record what websites you visit while you're using the VPN if they want to, and you'd have to check their policies to see what they actually do. If everything is set up properly, your wifi provider can only see that you're sending encrypted data to and from the VPN, but can't see what pages you're visiting. If you're connected to the wifi and not using the VPN, the wifi provider can then see what pages you're visiting, and for pages not served using https they can even see the full content of all of your communication with those pages.


Ideas on how I can fragment captured network traffic?

My suggestion is to go with the Scapy option. It is less painful in the long run and gives very very granular control over packets. If you want to test fragmentation for the purpose of bypassing IDS, you are going to need a LOT of trial and error, changing many and multiple fields (checksums, header length, packet length) and at least for scalability, you will not want to fragment existing pcap files one by one. You mentioned that you are stuck with Scapy, but why exactly?

In any case, wireedit at https://wireedit.com is one of the best tools to manage and edit pcap files.


How to diagnose and handle unexplained open network connections?

Looking at the packet capture you've got there, it looks like your computer is rejecting the connection attempts (the port unreachable messages), so it's not necessarily that there's something running on your system causing the traffic, more that other computer are trying to reach you.

What's apparent though is that there's no firewall restricting access between you and those hosts.  Now you've got a RFC 1918 address (192.168.25.204) so usually traffic shouldn't be able to route to you directly.

Do you have port forwarding or address forwarding setup on your firewall?  If so I'd recommend restricting it when you don't need it.

Apart from that have you run bit-torrent on they machine in the past?  If so it could just be other systems in one of the torrents you were part of trying to connect to you based on old information...


Why Wordpress doesn't filter post_title?

Some general information:
While it might initially look like a bug this is not considered one.

There are certain roles in a WordPress site (like admins and editors) that have the ability to post unfiltered html to the website. This includes the post title which is the one you used here. This is not considered a bug since one can assume that the person that has admin privileges for the specific site can add or remove any content he wants anyway.
See this link for further official information:
http://codex.wordpress.org/FAQ_Security#Why_are_some_users_allowed_to_post_unfiltered_HTML.3F

You can think of it in a way that putting your above mentioned script block on your personal website would not be considered a bug either.

To answer your questions:
Wordpress will put the unfiltered html in the spot where the page title would be included. This will be a link if you chose your second input, a JavaScript script block (that will then be executed by your browser) if you chose the third one or basically any input you give it.

WordPress will however not interpret php code if it is posted there. It will only include the input as a string and modify the tags to resemble html comments.

However if all of this seems strange to you and you don't want administrators and editors to be able to post unfiltered html to your site you might want to add:

  define( 'DISALLOW_UNFILTERED_HTML', true );

to your wp-config.php file (as described in the above mentioned link).