rapid7/metasploit-framework

View on GitHub

Showing 7,361 of 22,177 total issues

Method parse_system_info has 75 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  def parse_system_info(body)
    vprint_status("Getting useful information from systemInfo")
    infos = {
      "os.name"            => nil,
      "os.version"         => nil,
Severity: Major
Found in modules/auxiliary/scanner/http/jenkins_enum.rb - About 3 hrs to fix

    Method run_host has 75 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

      def run_host(ip)
        trav = datastore['FILE']
    
        if(trav == '' or datastore['FINGERPINT'])
        # the user did not specify what they wanted, fingerprint, go after password.properties
    Severity: Major
    Found in modules/auxiliary/scanner/http/coldfusion_locale_traversal.rb - About 3 hrs to fix

      Method login has 75 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

        def login(user, pass)
          res = send_request_cgi(
            {
              'uri' => '/cgi-bin/luci',
              'method' => 'POST',
      Severity: Major
      Found in modules/exploits/unix/http/epmp1000_get_chart_cmd_shell.rb - About 3 hrs to fix

        Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

          def initialize(info = {})
            super(update_info(info,
              'Name'           => 'Exim4 string_format Function Heap Buffer Overflow',
              'Description'    => %q{
                  This module exploits a heap buffer overflow within versions of Exim prior to
        Severity: Major
        Found in modules/exploits/unix/smtp/exim4_string_format.rb - About 3 hrs to fix

          Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            def initialize(info = {})
              super(
                update_info(
                  info,
                  'Name' => 'ConnectWise ScreenConnect Unauthenticated Remote Code Execution',

            Method exploit has 75 lines of code (exceeds 25 allowed). Consider refactoring.
            Open

              def exploit
                jsp_name = datastore['JSP'] || rand_text_alpha(8+rand(8))
                app_base = datastore['APPBASE'] || rand_text_alpha(8+rand(8))
            
                p = payload
            Severity: Major
            Found in modules/exploits/multi/http/jboss_bshdeployer.rb - About 3 hrs to fix

              Method exploit has 75 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

                def exploit
                  v = moodle_version
                  return CheckCode::Detected('Unable to determine moodle version') if v.nil?
              
                  version = Rex::Version.new(v)

                Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                  def initialize(info = {})
                    super(
                      update_info(
                        info,
                        'Name' => 'vBulletin 5.x /ajax/render/widget_tabbedcontainer_tab_panel PHP remote code execution.',
                Severity: Major
                Found in modules/exploits/multi/http/vbulletin_widget_template_rce.rb - About 3 hrs to fix

                  Method on_request_uri has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                    def on_request_uri(cli, request)
                  
                      headers = {}
                      html_hdr = %Q^
                        <html>
                  Severity: Major
                  Found in modules/exploits/multi/browser/opera_historysearch.rb - About 3 hrs to fix

                    Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                    Open

                      def initialize(info={})
                        super(update_info(info,
                          'Name'                => 'Adobe Flash Player Drawing Fill Shader Memory Corruption',
                          'Description'         => %q{
                            This module exploits a memory corruption happening when applying a Shader as a drawing fill
                    Severity: Major
                    Found in modules/exploits/multi/browser/adobe_flash_shader_drawing_fill.rb - About 3 hrs to fix

                      Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                      Open

                        def initialize(info = {})
                          super(
                            update_info(
                              info,
                              'Name' => 'CVE-2020-1170 Cloud Filter Arbitrary File Creation EOP',
                      Severity: Major
                      Found in modules/exploits/windows/local/cve_2020_17136.rb - About 3 hrs to fix

                        Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                          def initialize(info = {})
                            super(update_info(info,
                              'Name'           => 'MS10-090 Microsoft Internet Explorer CSS SetUserClip Memory Corruption',
                              'Description'    => %q{
                                  This module exploits a memory corruption vulnerability within Microsoft's
                        Severity: Major
                        Found in modules/exploits/windows/browser/ms10_090_ie_css_clip.rb - About 3 hrs to fix

                          Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                            def initialize(info = {})
                              super(
                                update_info(
                                  info,
                                  'Name' => 'Cisco RV Series Authentication Bypass and Command Injection',
                          Severity: Major
                          Found in modules/exploits/linux/http/cisco_rv340_lan.rb - About 3 hrs to fix

                            Method initialize has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                            Open

                              def initialize(info = {})
                                super(
                                  update_info(
                                    info,
                                    'Name' => 'TOTOLINK Wireless Routers unauthenticated remote command execution vulnerability.',
                            Severity: Major
                            Found in modules/exploits/linux/http/totolink_unauth_rce_cve_2023_30013.rb - About 3 hrs to fix

                              Method vuln_version? has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                              Open

                                def vuln_version?
                                  @glinet = { 'model' => nil, 'firmware' => nil, 'arch' => nil }
                                  # check first with version 4.x api call
                                  post_data = {
                                    jsonrpc: '2.0',
                              Severity: Major
                              Found in modules/exploits/linux/http/glinet_unauth_rce_cve_2023_50445.rb - About 3 hrs to fix

                                Method cmd_mic_start has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                  def cmd_mic_start(*args)
                                    get_data = lambda do |channel, file|
                                      data = channel.read(65536)
                                      if data
                                        ::File.open(file, 'a') do |f|
                                Severity: Major
                                Found in lib/rex/post/meterpreter/ui/console/command_dispatcher/stdapi/mic.rb - About 3 hrs to fix

                                  Method download has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                    def Dir.download(dst, src, opts = {}, force = true, glob = nil, &stat)
                                      src.force_encoding('UTF-8')
                                      dst.force_encoding('UTF-8')
                                      tries_cnt = 0
                                  
                                  
                                  Severity: Major
                                  Found in lib/rex/post/meterpreter/extensions/stdapi/fs/dir.rb - About 3 hrs to fix

                                    Method do_login has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                                    Open

                                      def do_login(user, pass)
                                        print_status("#{rhost}:#{rport} - Attempting to login...")
                                    
                                        res = send_request_cgi(
                                          {
                                    Severity: Major
                                    Found in lib/msf/core/auxiliary/cnpilot.rb - About 3 hrs to fix

                                      Method modify_ticket has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                                      Open

                                                def modify_ticket(ticket, enc_kdc_response, new_user, new_user_rid, domain, extra_sids, ticket_decryption_key, ticket_encryption_type, ticket_encryption_key, copy_entire_pac)
                                                  ticket_enc_part = ticket.enc_part
                                                  decrypted_ticket_part = ticket_enc_part.decrypt_asn1(ticket_decryption_key, Rex::Proto::Kerberos::Crypto::KeyUsage::KDC_REP_TICKET)
                                                  decoded_ticket_part = Rex::Proto::Kerberos::Model::TicketEncPart.decode(decrypted_ticket_part)
                                                  auth_data_val = decoded_ticket_part.authorization_data.elements.select { |element| element[:type] == Rex::Proto::Kerberos::Model::AuthorizationDataType::AD_IF_RELEVANT}
                                      Severity: Major
                                      Found in lib/msf/core/exploit/remote/kerberos/ticket.rb - About 3 hrs to fix

                                        Method asm_reverse_tcp has 75 lines of code (exceeds 25 allowed). Consider refactoring.
                                        Open

                                          def asm_reverse_tcp(opts={})
                                        
                                            retry_count  = [opts[:retry_count].to_i, 1].max
                                            encoded_port = [opts[:port].to_i,2].pack("vn").unpack("N").first
                                            encoded_host = Rex::Socket.addr_aton(opts[:host]||"127.127.127.127").unpack("V").first
                                        Severity: Major
                                        Found in lib/msf/core/payload/windows/x64/reverse_tcp_x64.rb - About 3 hrs to fix
                                          Severity
                                          Category
                                          Status
                                          Source
                                          Language