(results)
| 487 | } |
| 488 | |
| 489 | function display_algorithm_certs(results) { |
| 490 | if (results.length === 0) { |
| 491 | document.getElementById("scan_algorithm_certs").innerHTML = '<b>N/A</b><br/>'; |
| 492 | return; |
| 493 | } |
| 494 | var displayHTML = create_new_table(); |
| 495 | displayHTML += create_table_head(["Host", "Common Names", "Algorithm", "Expires", "Fingerprint"]); |
| 496 | displayHTML += create_table_body(); |
| 497 | |
| 498 | for (var i = 0; i < results.length; i++) { |
| 499 | displayHTML += create_table_row(); |
| 500 | let cns; |
| 501 | let dns; |
| 502 | if (certSource === "censys") { |
| 503 | displayHTML += create_table_entry(create_anchor("/ip?search=" + results[i]['ip'], results[i]['ip'])); |
| 504 | cns = results[i]['p443']['https']['tls']['certificate']['parsed']['subject']['common_name']; |
| 505 | dns = results[i]['p443']['https']['tls']['certificate']['parsed']['extensions']['subject_alt_name']['dns_names']; |
| 506 | } else { |
| 507 | if (results[i]['ip'] === "<nil>") { |
| 508 | displayHTML += create_table_entry(create_anchor("/domain?search=" + results[i]['domain'], results[i]['domain'])); |
| 509 | } else { |
| 510 | displayHTML += create_table_entry(create_anchor("/ip?search=" + results[i]['ip'], results[i]['ip'])); |
| 511 | } |
| 512 | let tls_log = get_tls_log(results, i); |
| 513 | try { |
| 514 | cns = tls_log['server_certificates']['certificate']['parsed']['subject']['common_name']; |
| 515 | } catch (error) { |
| 516 | console.debug(error); |
| 517 | cns = []; |
| 518 | } |
| 519 | try { |
| 520 | dns = tls_log['server_certificates']['certificate']['parsed']['extensions']['subject_alt_name']['dns_names']; |
| 521 | } catch (error) { |
| 522 | console.debug(error); |
| 523 | dns = []; |
| 524 | } |
| 525 | } |
| 526 | |
| 527 | displayHTML += '<td class="td-word-wrap">'; |
| 528 | let j; |
| 529 | |
| 530 | if (cns === undefined) { cns = []; } |
| 531 | if (dns === undefined) { dns = []; } |
| 532 | |
| 533 | for (j = 0; j < cns.length; j++) { |
| 534 | displayHTML += cns[j] + ", "; |
| 535 | } |
| 536 | for (j = 0; j < dns.length; j++) { |
| 537 | displayHTML += dns[j] + ", "; |
| 538 | } |
| 539 | |
| 540 | displayHTML += '</td>'; |
| 541 | |
| 542 | if (certSource === "censys") { |
| 543 | displayHTML += create_table_entry(results[i]['p443']['https']['tls']['certificate']['parsed']['signature']['signature_algorithm']['name']); |
| 544 | displayHTML += create_table_entry(results[i]['p443']['https']['tls']['certificate']['parsed']['validity']['end']); |
| 545 | displayHTML += create_table_entry(create_anchor("/reports/display_cert?type=censys_sha1&sha1=" + results[i]['p443']['https']['tls']['certificate']['parsed']['fingerprint_sha1'], results[i]['p443']['https']['tls']['certificate']['parsed']['fingerprint_sha1'], "_blank")); |
| 546 | } else { |
nothing calls this directly
no test coverage detected