From 0a4b5361720caf2d3141bef82e1df0befdccaeea Mon Sep 17 00:00:00 2001 From: AlexanderDCrane <40072887+AlexanderDCrane@users.noreply.github.com> Date: Sat, 9 Jun 2018 13:36:35 -0600 Subject: [PATCH] Escape user data on xml_cdr_archive.php (#3114) --- app/xml_cdr/xml_cdr_archive.php | 130 ++++++++++++++++---------------- 1 file changed, 65 insertions(+), 65 deletions(-) diff --git a/app/xml_cdr/xml_cdr_archive.php b/app/xml_cdr/xml_cdr_archive.php index e6f849b17b..a6cb737fe1 100644 --- a/app/xml_cdr/xml_cdr_archive.php +++ b/app/xml_cdr/xml_cdr_archive.php @@ -17,7 +17,7 @@ The Initial Developer of the Original Code is Mark J Crane - Portions created by the Initial Developer are Copyright (C) 2008-2017 + Portions created by the Initial Developer are Copyright (C) 2008-2018 the Initial Developer. All Rights Reserved. Contributor(s): @@ -83,47 +83,47 @@ echo "".$text['title-archive']."


\n"; echo "\n"; echo "
\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; + echo " \n"; if (is_array($_SESSION['cdr']['field'])) { foreach ($_SESSION['cdr']['field'] as $field) { $array = explode(",", $field); $field_name = $array[count($array) - 1]; if (isset($_REQUEST[$field_name])) { - echo " \n"; + echo " \n"; } } } if (isset($order_by)) { - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; } if (permission_exists('xml_cdr_all') && $_REQUEST['show'] == 'all') { echo " \n"; @@ -230,7 +230,7 @@ echo " ".$text['label-source']."\n"; echo " \n"; echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo " \n"; @@ -238,7 +238,7 @@ echo " ".$text['label-destination']."\n"; echo " \n"; echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo "\n"; @@ -252,8 +252,8 @@ echo " ".$text['label-start_range']."\n"; echo " \n"; echo " \n"; - echo " \n"; - echo " \n"; + echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo " \n"; @@ -261,7 +261,7 @@ echo " ".$text['label-cid-name']."\n"; echo " \n"; echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; echo "\n"; @@ -316,7 +316,7 @@ foreach ($cdr_status_options as $cdr_status) { $selected = ($hangup_cause == $cdr_status) ? "selected='selected'" : null; $cdr_status_label = ucwords(strtolower(str_replace("_", " ", $cdr_status))); - echo " \n"; + echo " \n"; } echo " \n"; echo " \n"; @@ -328,7 +328,7 @@ echo " ".$text['label-caller_destination']."\n"; echo " \n"; echo " \n"; - echo " \n"; + echo " \n"; echo " \n"; echo " \n"; } @@ -484,11 +484,11 @@ //recording playback if (permission_exists('recording_play') && $record_path != '') { - echo "\n"; + echo "\n"; } // if ($row['raw_data_exists'] && permission_exists('xml_cdr_details')) { - // $tr_link = "href='xml_cdr_details.php?uuid=".$row['uuid'].(($_REQUEST['show']) ? "&show=all" : null)."'"; + // $tr_link = "href='xml_cdr_details.php?uuid=".escape($row['uuid']).(($_REQUEST['show']) ? "&show=all" : null)."'"; // } // else { // $tr_link = null; @@ -496,8 +496,8 @@ // echo "\n"; /* if (permission_exists('xml_cdr_delete')) { echo " "; - echo " "; - echo " "; + echo " "; + echo " "; echo " "; $xml_ids[] = 'checkbox_'.$row['uuid']; } @@ -521,7 +521,7 @@ $image_name .= '_b'; } $image_name .= ".png"; - echo "\n"; + echo "\n"; } } else { echo " "; } @@ -536,36 +536,36 @@ echo " ".$row['caller_id_name']." \n"; //source echo " "; - echo " \n"; + echo " \n"; if (is_numeric($row['caller_id_number'])) { - echo " ".format_phone($row['caller_id_number']).' '; + echo " ".format_phone(escape($row['caller_id_number'])).' '; } else { - echo " ".$row['caller_id_number'].' '; + echo " ".escape($row['caller_id_number']).' '; } echo " "; echo " \n"; //caller destination if (permission_exists('caller_destination')) { echo " "; - echo " \n"; + echo " \n"; if (is_numeric($row['caller_destination'])) { - echo " ".format_phone($row['caller_destination']).' '; + echo " ".format_phone(escape($row['caller_destination'])).' '; } else { - echo " ".$row['caller_destination'].' '; + echo " ".escape($row['caller_destination']).' '; } echo " "; echo " \n"; } //destination echo " "; - echo " \n"; + echo " \n"; if (is_numeric($row['destination_number'])) { - echo format_phone($row['destination_number'])."\n"; + echo format_phone(escape($row['destination_number']))."\n"; } else { - echo " ".$row['destination_number']."\n"; + echo " ".escape($row['destination_number'])."\n"; } echo " \n"; echo " \n"; @@ -574,14 +574,14 @@ if ($record_path != '' && file_exists($record_path.'/'.$record_name)) { echo " "; if (permission_exists('recording_play')) { - echo ""; - echo "".$v_link_label_play.""; + echo ""; + echo "".$v_link_label_play.""; } else { echo "don't have recording_play permission "; } if (permission_exists('recording_download')) { - echo "".$v_link_label_download.""; + echo "".$v_link_label_download.""; } echo " \n"; } @@ -595,12 +595,12 @@ $array = explode(",", $field); $field_name = $array[count($array) - 1]; if ($field_name != "destination_number") { - echo " ".$row[$field_name] ."\n"; + echo " ".escape($row[$field_name])."\n"; } } } //start - echo " ".$tmp_start_epoch."\n"; + echo " ".escape($tmp_start_epoch)."\n"; //tta (time to answer) echo " ".(($row['tta'] > 0) ? $row['tta']."s" : " ")."\n"; //duration @@ -663,12 +663,12 @@ else { $price = 0; } - echo " ".number_format($price,6)." $billing_currency\n"; + echo " ".number_format($price,6)." escape($billing_currency)\n"; unset ($sell_price, $price); } //pdd (post dial delay) if (permission_exists("xml_cdr_pdd")) { - echo " ".number_format($row['pdd_ms']/1000,2)."s\n"; + echo " ".number_format(escape($row['pdd_ms'])/1000,2)."s\n"; } //mos (mean opinion score) if (permission_exists("xml_cdr_mos")) { @@ -676,14 +676,14 @@ $title = " title='".$text['label-mos_score-'.round($row['rtp_audio_in_mos'])]."'"; $value = $row['rtp_audio_in_mos']; } - echo " $value\n"; + echo " ".escape($value)."\n"; } //hangup cause/call result if (permission_exists('hangup_cause')) { - echo " ".$hangup_cause."\n"; + echo " ".escape($hangup_cause)."\n"; } else { - echo " ".ucwords($call_result)."\n"; + echo " ".ucwords(escape($call_result))."\n"; } //control icons if (permission_exists('xml_cdr_details')) { @@ -692,7 +692,7 @@ echo " $v_link_label_view"; //CJB } // if (permission_exists('xml_cdr_delete')) { -// echo "".$v_link_label_delete.""; +// echo "".$v_link_label_delete.""; // } echo " \n"; }