Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Why am I not surprised...

Why am I not surprised...

Scheduled Pinned Locked Moved The Lounge
asp-netarchitecture
23 Posts 10 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • realJSOPR realJSOP

    ...that MVC does not provide default out-of-the-box support for encrypted requests. It should not only be implemented, it should be turned on by default. SMFH...

    ".45 ACP - because shooting twice is just silly" - JSOP, 2010
    -----
    You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
    -----
    When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

    N Offline
    N Offline
    Nish Nishant
    wrote on last edited by
    #5

    Hey John, Just use RequireHttps.

    Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

    E realJSOPR 2 Replies Last reply
    0
    • raddevusR raddevus

      But, HTTPS, right? I mean, there's a lot to just including encrypted data. Both ends have to know how (algorithm used) they are encrypted and all that. So, I'm thinking if you just apply HTTPS then you solve this at the layer above MVC (communication layer) and you let that layer handle it all. Otherwise there'd be all the protocol setup stuff that you'd have to do yourself instead of just letting the browser and server do it automatically like you get with HTTPS. Just thinking out loud. Maybe you are encountering something different?

      realJSOPR Offline
      realJSOPR Offline
      realJSOP
      wrote on last edited by
      #6

      First, https has been proven to be almost as insecure as plain text. Second, using https does not encrypt query strings.

      ".45 ACP - because shooting twice is just silly" - JSOP, 2010
      -----
      You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
      -----
      When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

      raddevusR 1 Reply Last reply
      0
      • J Jeremy Falcon

        You know what I enjoy about your posts John... I know every time I read one it's filled with positivity and joy and always brightens my day. It's nice to know you never complain and that you're doing your part to help spread the cheer. Thank you for your service. ;P

        Jeremy Falcon

        realJSOPR Offline
        realJSOPR Offline
        realJSOP
        wrote on last edited by
        #7

        I spread cheer about Qlikview on a regular basis.

        ".45 ACP - because shooting twice is just silly" - JSOP, 2010
        -----
        You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
        -----
        When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

        D M 2 Replies Last reply
        0
        • realJSOPR realJSOP

          First, https has been proven to be almost as insecure as plain text. Second, using https does not encrypt query strings.

          ".45 ACP - because shooting twice is just silly" - JSOP, 2010
          -----
          You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
          -----
          When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

          raddevusR Offline
          raddevusR Offline
          raddevus
          wrote on last edited by
          #8

          John Simmons / outlaw programmer wrote:

          First, https has been proven to be almost as insecure as plain text.

          Did I say https wrong? Should I have said TLS? or whatever the current standard is? So I guess you don't buy anything online, right? :laugh: Also, I believe querystrings are encrypted via HTTPS. If you set up HTTPS properly, everything between browser and server are encrypted: Here's just one of many answers you get when you google that: ssl - Is an HTTPS query string secure? - Stack Overflow[^] Here's a quote from the top answer that is returned:

          google knows quote:

          remember, SSL/TLS operates at the Transport Layer, so all the crypto goo happens under the application-layer HTTP stuff. The entire transmission, including the query string, the whole URL, and even the type of request (GET, POST, etc.) is encrypted when using HTTPS

          Richard DeemingR P realJSOPR 3 Replies Last reply
          0
          • raddevusR raddevus

            John Simmons / outlaw programmer wrote:

            First, https has been proven to be almost as insecure as plain text.

            Did I say https wrong? Should I have said TLS? or whatever the current standard is? So I guess you don't buy anything online, right? :laugh: Also, I believe querystrings are encrypted via HTTPS. If you set up HTTPS properly, everything between browser and server are encrypted: Here's just one of many answers you get when you google that: ssl - Is an HTTPS query string secure? - Stack Overflow[^] Here's a quote from the top answer that is returned:

            google knows quote:

            remember, SSL/TLS operates at the Transport Layer, so all the crypto goo happens under the application-layer HTTP stuff. The entire transmission, including the query string, the whole URL, and even the type of request (GET, POST, etc.) is encrypted when using HTTPS

            Richard DeemingR Offline
            Richard DeemingR Offline
            Richard Deeming
            wrote on last edited by
            #9

            raddevus wrote:

            everything between browser and server are encrypted

            Apart from the domain name, which needs to be sent unencrypted for SNI: Server Name Indication - Wikipedia[^]


            "These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer

            "These people looked deep within my soul and assigned me a number based on the order in which I joined" - Homer

            raddevusR 1 Reply Last reply
            0
            • Richard DeemingR Richard Deeming

              raddevus wrote:

              everything between browser and server are encrypted

              Apart from the domain name, which needs to be sent unencrypted for SNI: Server Name Indication - Wikipedia[^]


              "These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer

              raddevusR Offline
              raddevusR Offline
              raddevus
              wrote on last edited by
              #10

              Richard Deeming wrote:

              Apart from the domain name, which needs to be sent unencrypted for SNI

              Ah, good additional information. So an attacker could at least know which domain you are going against. Interesting. But of course the rest of the info specific URL, querystrings, etc are safe. Thanks for the addt'l info. :thumbsup:

              1 Reply Last reply
              0
              • raddevusR raddevus

                John Simmons / outlaw programmer wrote:

                First, https has been proven to be almost as insecure as plain text.

                Did I say https wrong? Should I have said TLS? or whatever the current standard is? So I guess you don't buy anything online, right? :laugh: Also, I believe querystrings are encrypted via HTTPS. If you set up HTTPS properly, everything between browser and server are encrypted: Here's just one of many answers you get when you google that: ssl - Is an HTTPS query string secure? - Stack Overflow[^] Here's a quote from the top answer that is returned:

                google knows quote:

                remember, SSL/TLS operates at the Transport Layer, so all the crypto goo happens under the application-layer HTTP stuff. The entire transmission, including the query string, the whole URL, and even the type of request (GET, POST, etc.) is encrypted when using HTTPS

                P Offline
                P Offline
                Pualee
                wrote on last edited by
                #11

                raddevus wrote:

                Also, I believe querystrings are encrypted via HTTPS.

                link URLs are stored in web server logs - typically the whole URL of each request is stored in a server log. This means that any sensitive data in the URL (e.g. a password) is being saved in clear text on the server

                raddevusR 1 Reply Last reply
                0
                • raddevusR raddevus

                  John Simmons / outlaw programmer wrote:

                  First, https has been proven to be almost as insecure as plain text.

                  Did I say https wrong? Should I have said TLS? or whatever the current standard is? So I guess you don't buy anything online, right? :laugh: Also, I believe querystrings are encrypted via HTTPS. If you set up HTTPS properly, everything between browser and server are encrypted: Here's just one of many answers you get when you google that: ssl - Is an HTTPS query string secure? - Stack Overflow[^] Here's a quote from the top answer that is returned:

                  google knows quote:

                  remember, SSL/TLS operates at the Transport Layer, so all the crypto goo happens under the application-layer HTTP stuff. The entire transmission, including the query string, the whole URL, and even the type of request (GET, POST, etc.) is encrypted when using HTTPS

                  realJSOPR Offline
                  realJSOPR Offline
                  realJSOP
                  wrote on last edited by
                  #12

                  This query string isn't encrypted: https://www.codeproject.com/script/Forums/Edit.aspx?fid=1159&select=5451820&floc=/Lounge.aspx&action=r

                  ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                  -----
                  You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                  -----
                  When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                  raddevusR 1 Reply Last reply
                  0
                  • P Pualee

                    raddevus wrote:

                    Also, I believe querystrings are encrypted via HTTPS.

                    link URLs are stored in web server logs - typically the whole URL of each request is stored in a server log. This means that any sensitive data in the URL (e.g. a password) is being saved in clear text on the server

                    raddevusR Offline
                    raddevusR Offline
                    raddevus
                    wrote on last edited by
                    #13

                    That's not relevant though. Of course the server can see the decrypted data. Otherwise it couldn't use the data. The point is whether someone along the route of the Internet would be able to read the data. If the server saves the data somewhere after the fact in cleartext has nothing to do with HTTPS. That could be true for __any__ encryption scheme. EDIT Although it is a good point about the IIS logs having querystring values decrypted -- and that is a bit nuts but there may be a setting to handle that on IIS. Ah, just found it. You just turn it off for specific fields (URI Query (cs-uri-query)) then the password via querystring woldn't be logged at all? A gotcha to know though: Select W3C Fields to Log (IIS 7)[^]

                    P 1 Reply Last reply
                    0
                    • realJSOPR realJSOP

                      This query string isn't encrypted: https://www.codeproject.com/script/Forums/Edit.aspx?fid=1159&select=5451820&floc=/Lounge.aspx&action=r

                      ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                      -----
                      You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                      -----
                      When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                      raddevusR Offline
                      raddevusR Offline
                      raddevus
                      wrote on last edited by
                      #14

                      If you like, Pualee are talking about encryption on the server side, then you are correct, data is not encrypted by some magical means once it gets to the server. Any scheme you would use will require you to encrypt the data in some way for storage once the data gets to your server. HTTPS is for secure communication over HTTP. Maybe you're looking for an auto-encrypted data stream to storage device? That's a totally different animal, right? EDIT Also, if you're saying because you can see the CP querystrings that proves that HTTPS doesn't encrypt querystrings...well that is because they expose querystrings here to create trackback links. If they didn't expose those then you'd never be able to sniff them out of the HTTP stream, because they are encrypted before they are sent to the server and only the server can decrypt them. That's the point of encryption for communication.

                      realJSOPR 1 Reply Last reply
                      0
                      • realJSOPR realJSOP

                        I spread cheer about Qlikview on a regular basis.

                        ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                        -----
                        You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                        -----
                        When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                        D Offline
                        D Offline
                        dandy72
                        wrote on last edited by
                        #15

                        You're absolutely right, every time I read one of your posts about Qlikview I'm downright giddy with excitement because I've never had to use it (and hopefully never will).

                        1 Reply Last reply
                        0
                        • raddevusR raddevus

                          That's not relevant though. Of course the server can see the decrypted data. Otherwise it couldn't use the data. The point is whether someone along the route of the Internet would be able to read the data. If the server saves the data somewhere after the fact in cleartext has nothing to do with HTTPS. That could be true for __any__ encryption scheme. EDIT Although it is a good point about the IIS logs having querystring values decrypted -- and that is a bit nuts but there may be a setting to handle that on IIS. Ah, just found it. You just turn it off for specific fields (URI Query (cs-uri-query)) then the password via querystring woldn't be logged at all? A gotcha to know though: Select W3C Fields to Log (IIS 7)[^]

                          P Offline
                          P Offline
                          Pualee
                          wrote on last edited by
                          #16

                          Hidden fields within the form data are the way we go here. They are encrypted with the form, but not logged. You should never be able to reproduce a users password (thus the 1 way comparisons in the DB). If it was safe to have plain text passwords anywhere, there would be no need for this.

                          raddevusR 1 Reply Last reply
                          0
                          • P Pualee

                            Hidden fields within the form data are the way we go here. They are encrypted with the form, but not logged. You should never be able to reproduce a users password (thus the 1 way comparisons in the DB). If it was safe to have plain text passwords anywhere, there would be no need for this.

                            raddevusR Offline
                            raddevusR Offline
                            raddevus
                            wrote on last edited by
                            #17

                            Agree! Great, interesting discussion. :thumbsup:

                            1 Reply Last reply
                            0
                            • realJSOPR realJSOP

                              I spread cheer about Qlikview on a regular basis.

                              ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                              -----
                              You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                              -----
                              When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                              M Offline
                              M Offline
                              Mycroft Holmes
                              wrote on last edited by
                              #18

                              Yup the local plant life appreciates the shit you heap on Qlikview!

                              Never underestimate the power of human stupidity RAH

                              1 Reply Last reply
                              0
                              • N Nish Nishant

                                Hey John, Just use RequireHttps.

                                Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

                                E Offline
                                E Offline
                                Eytukan
                                wrote on last edited by
                                #19

                                :cool:

                                Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy Falcon.

                                1 Reply Last reply
                                0
                                • raddevusR raddevus

                                  If you like, Pualee are talking about encryption on the server side, then you are correct, data is not encrypted by some magical means once it gets to the server. Any scheme you would use will require you to encrypt the data in some way for storage once the data gets to your server. HTTPS is for secure communication over HTTP. Maybe you're looking for an auto-encrypted data stream to storage device? That's a totally different animal, right? EDIT Also, if you're saying because you can see the CP querystrings that proves that HTTPS doesn't encrypt querystrings...well that is because they expose querystrings here to create trackback links. If they didn't expose those then you'd never be able to sniff them out of the HTTP stream, because they are encrypted before they are sent to the server and only the server can decrypt them. That's the point of encryption for communication.

                                  realJSOPR Offline
                                  realJSOPR Offline
                                  realJSOP
                                  wrote on last edited by
                                  #20

                                  No, I simply don't want people to be able to see the query string in the URL as anything more than a block of encrypted gibberish.

                                  ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                                  -----
                                  You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                                  -----
                                  When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                                  raddevusR 1 Reply Last reply
                                  0
                                  • N Nish Nishant

                                    Hey John, Just use RequireHttps.

                                    Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

                                    realJSOPR Offline
                                    realJSOPR Offline
                                    realJSOP
                                    wrote on last edited by
                                    #21

                                    THAT'S.NOT.WHAT.I'M.TALKING.ABOUT.

                                    ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                                    -----
                                    You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                                    -----
                                    When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                                    1 Reply Last reply
                                    0
                                    • realJSOPR realJSOP

                                      No, I simply don't want people to be able to see the query string in the URL as anything more than a block of encrypted gibberish.

                                      ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                                      -----
                                      You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                                      -----
                                      When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                                      raddevusR Offline
                                      raddevusR Offline
                                      raddevus
                                      wrote on last edited by
                                      #22

                                      Ah I get what you are saying. The QueryString itself should be encrypted in some way so you can pass it along, users could see it and have no idea what the values are. That's interesting.

                                      N 1 Reply Last reply
                                      0
                                      • raddevusR raddevus

                                        Ah I get what you are saying. The QueryString itself should be encrypted in some way so you can pass it along, users could see it and have no idea what the values are. That's interesting.

                                        N Offline
                                        N Offline
                                        Nish Nishant
                                        wrote on last edited by
                                        #23

                                        He could just use Post instead of Get, or use something like Angular so the user won't see the QS.

                                        Nish Nishant Consultant Software Architect Ganymede Software Solutions LLC www.ganymedesoftwaresolutions.com

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Categories
                                        • Recent
                                        • Tags
                                        • Popular
                                        • World
                                        • Users
                                        • Groups