Changeset 3491682
- Timestamp:
- 03/26/2026 10:37:14 AM (44 hours ago)
- Location:
- mw-wp-form
- Files:
-
- 12 edited
- 1 copied
-
tags/5.1.1 (copied) (copied from mw-wp-form/trunk)
-
tags/5.1.1/classes/functions.php (modified) (1 diff)
-
tags/5.1.1/classes/models/class.akismet.php (modified) (1 diff)
-
tags/5.1.1/classes/models/class.directory.php (modified) (1 diff)
-
tags/5.1.1/classes/services/class.redirected.php (modified) (1 diff)
-
tags/5.1.1/mw-wp-form.php (modified) (1 diff)
-
tags/5.1.1/readme.txt (modified) (3 diffs)
-
trunk/classes/functions.php (modified) (1 diff)
-
trunk/classes/models/class.akismet.php (modified) (1 diff)
-
trunk/classes/models/class.directory.php (modified) (1 diff)
-
trunk/classes/services/class.redirected.php (modified) (1 diff)
-
trunk/mw-wp-form.php (modified) (1 diff)
-
trunk/readme.txt (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
mw-wp-form/tags/5.1.1/classes/functions.php
r2968966 r3491682 44 44 * Unify line feed code to \n. 45 45 * 46 * @param s ring$string String.46 * @param string|null $string String. 47 47 * @return string 48 48 */ 49 49 public static function convert_eol( $string ) { 50 return preg_replace( "/\r\n|\r|\n/", "\n", $string );50 return is_string( $string ) ? preg_replace( "/\r\n|\r|\n/", "\n", $string ) : ''; 51 51 } 52 52 -
mw-wp-form/tags/5.1.1/classes/models/class.akismet.php
r2968966 r3491682 108 108 } 109 109 110 $query_string = http_build_query( $akismet, null, '&' );110 $query_string = http_build_query( $akismet, '', '&' ); 111 111 if ( is_callable( array( 'Akismet', 'http_post' ) ) ) { 112 112 $response = Akismet::http_post( $query_string, 'comment-check' ); -
mw-wp-form/tags/5.1.1/classes/models/class.directory.php
r2968966 r3491682 146 146 } 147 147 148 $filepath = path_join( $user_file_dir, $filename ); 148 $normalized_filename = wp_normalize_path( $filename ); 149 if ( 150 wp_basename( $normalized_filename ) !== $normalized_filename || 151 strstr( $normalized_filename, "\0" ) 152 ) { 153 throw new \RuntimeException( '[MW WP Form] Invalid file reference requested.' ); 154 } 155 156 $filepath = path_join( $user_file_dir, $filename ); 157 $filepath = wp_normalize_path( $filepath ); 158 $user_file_dir = trailingslashit( wp_normalize_path( $user_file_dir ) ); 159 160 if ( 0 !== strpos( $filepath, $user_file_dir ) ) { 161 throw new \RuntimeException( '[MW WP Form] Invalid file reference requested.' ); 162 } 149 163 150 164 if ( str_contains( $filepath, '../' ) || str_contains( $filepath, '..' . DIRECTORY_SEPARATOR ) ) { -
mw-wp-form/tags/5.1.1/classes/services/class.redirected.php
r2968966 r3491682 172 172 173 173 if ( ! empty( $query_string ) ) { 174 return $url . '?' . http_build_query( $query_string, null, '&', PHP_QUERY_RFC3986 );174 return $url . '?' . http_build_query( $query_string, '', '&', PHP_QUERY_RFC3986 ); 175 175 } 176 176 -
mw-wp-form/tags/5.1.1/mw-wp-form.php
r3050147 r3491682 4 4 * Plugin URI: https://mw-wp-form.web-soudan.co.jp 5 5 * Description: MW WP Form is shortcode base contact form plugin. This plugin have many features. For example you can use many validation rules, inquiry data saving, and chart aggregation using saved inquiry data. 6 * Version: 5.1. 06 * Version: 5.1.1 7 7 * Requires at least: 6.0 8 * Requires PHP: 8.0 8 9 * Author: websoudan 9 10 * Author URI: https://web-soudan.co.jp/ -
mw-wp-form/tags/5.1.1/readme.txt
r3050147 r3491682 4 4 Tags: plugin, form, confirm, preview, shortcode, mail, chart, graph, html, contact form, form creation, form creator, form manager, form builder, custom form 5 5 Requires at least: 6.0 6 Requires PHP: 8.0 6 7 Tested up to: 6.4 7 Stable tag: 5.1. 08 Stable tag: 5.1.1 8 9 License: GPLv2 or later 9 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 81 82 == Changelog == 82 83 84 = 5.1.1 = 85 * Security Fix insufficient file path validation in upload file handling 86 83 87 = 5.1.0 = 84 88 * Security Use wp_kses_post to form content/complete message … … 95 99 96 100 = 5.0.3 = 97 * Remove plugin asset files. 101 * Remove plugin asset files. 98 102 99 103 = 5.0.2 = -
mw-wp-form/trunk/classes/functions.php
r2968966 r3491682 44 44 * Unify line feed code to \n. 45 45 * 46 * @param s ring$string String.46 * @param string|null $string String. 47 47 * @return string 48 48 */ 49 49 public static function convert_eol( $string ) { 50 return preg_replace( "/\r\n|\r|\n/", "\n", $string );50 return is_string( $string ) ? preg_replace( "/\r\n|\r|\n/", "\n", $string ) : ''; 51 51 } 52 52 -
mw-wp-form/trunk/classes/models/class.akismet.php
r2968966 r3491682 108 108 } 109 109 110 $query_string = http_build_query( $akismet, null, '&' );110 $query_string = http_build_query( $akismet, '', '&' ); 111 111 if ( is_callable( array( 'Akismet', 'http_post' ) ) ) { 112 112 $response = Akismet::http_post( $query_string, 'comment-check' ); -
mw-wp-form/trunk/classes/models/class.directory.php
r2968966 r3491682 146 146 } 147 147 148 $filepath = path_join( $user_file_dir, $filename ); 148 $normalized_filename = wp_normalize_path( $filename ); 149 if ( 150 wp_basename( $normalized_filename ) !== $normalized_filename || 151 strstr( $normalized_filename, "\0" ) 152 ) { 153 throw new \RuntimeException( '[MW WP Form] Invalid file reference requested.' ); 154 } 155 156 $filepath = path_join( $user_file_dir, $filename ); 157 $filepath = wp_normalize_path( $filepath ); 158 $user_file_dir = trailingslashit( wp_normalize_path( $user_file_dir ) ); 159 160 if ( 0 !== strpos( $filepath, $user_file_dir ) ) { 161 throw new \RuntimeException( '[MW WP Form] Invalid file reference requested.' ); 162 } 149 163 150 164 if ( str_contains( $filepath, '../' ) || str_contains( $filepath, '..' . DIRECTORY_SEPARATOR ) ) { -
mw-wp-form/trunk/classes/services/class.redirected.php
r2968966 r3491682 172 172 173 173 if ( ! empty( $query_string ) ) { 174 return $url . '?' . http_build_query( $query_string, null, '&', PHP_QUERY_RFC3986 );174 return $url . '?' . http_build_query( $query_string, '', '&', PHP_QUERY_RFC3986 ); 175 175 } 176 176 -
mw-wp-form/trunk/mw-wp-form.php
r3050147 r3491682 4 4 * Plugin URI: https://mw-wp-form.web-soudan.co.jp 5 5 * Description: MW WP Form is shortcode base contact form plugin. This plugin have many features. For example you can use many validation rules, inquiry data saving, and chart aggregation using saved inquiry data. 6 * Version: 5.1. 06 * Version: 5.1.1 7 7 * Requires at least: 6.0 8 * Requires PHP: 8.0 8 9 * Author: websoudan 9 10 * Author URI: https://web-soudan.co.jp/ -
mw-wp-form/trunk/readme.txt
r3050147 r3491682 4 4 Tags: plugin, form, confirm, preview, shortcode, mail, chart, graph, html, contact form, form creation, form creator, form manager, form builder, custom form 5 5 Requires at least: 6.0 6 Requires PHP: 8.0 6 7 Tested up to: 6.4 7 Stable tag: 5.1. 08 Stable tag: 5.1.1 8 9 License: GPLv2 or later 9 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 81 82 == Changelog == 82 83 84 = 5.1.1 = 85 * Security Fix insufficient file path validation in upload file handling 86 83 87 = 5.1.0 = 84 88 * Security Use wp_kses_post to form content/complete message … … 95 99 96 100 = 5.0.3 = 97 * Remove plugin asset files. 101 * Remove plugin asset files. 98 102 99 103 = 5.0.2 =
Note: See TracChangeset
for help on using the changeset viewer.