[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$feIP--Y8UlZZR1ISQs9ryo_X0-wsrgLMj4UhpEUc1yTU":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":23,"download_link":24,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":38,"analysis":39,"fingerprints":142},"look-inside-pdf","Look Inside PDF","1.0.0","Kapil Paul","https:\u002F\u002Fprofiles.wordpress.org\u002Fkapilpaul\u002F","\u003Cp>Look Inside a pdf book to read or book sample to read\u003C\u002Fp>\n\u003Ch4>Demo Video\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F21nCuHrCiQk?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>Privacy Policy\u003C\u002Fh4>\n\u003Cp>Look Inside PDF uses \u003Ca href=\"https:\u002F\u002Fappsero.com\" rel=\"nofollow ugc\">Appsero\u003C\u002Fa> SDK to collect some telemetry data upon user’s confirmation. This helps us to troubleshoot problems faster & make product improvements.\u003C\u002Fp>\n\u003Cp>Appsero SDK \u003Cstrong>does not gather any data by default.\u003C\u002Fstrong> The SDK only starts gathering basic telemetry data \u003Cstrong>when a user allows it via the admin notice\u003C\u002Fstrong>. We collect the data to ensure a great user experience for all our users.\u003C\u002Fp>\n\u003Cp>Integrating Appsero SDK \u003Cstrong>DOES NOT IMMEDIATELY\u003C\u002Fstrong> start gathering data, \u003Cstrong>without confirmation from users in any case.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Learn more about how \u003Ca href=\"https:\u002F\u002Fappsero.com\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Appsero collects and uses this data\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Contributing and Reporting Bugs\u003C\u002Fh4>\n\u003Cp>Look Inside PDF is being developed on GitHub. If you’re interested in contributing to the plugin, please look at \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkapilpaul\u002Flook_inside_pdf\" rel=\"nofollow ugc\">Github page\u003C\u002Fa>.\u003C\u002Fp>\n","Look Inside a pdf book to read or book sample to read",10,1153,70,2,"2020-11-18T14:50:00.000Z","5.5.18","5.0","",[20,21,22],"book-sample","read-some","rokomari","https:\u002F\u002Fkapilpaul.me\u002Fprojects\u002Flook-inside-pdf","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flook-inside-pdf.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"kapilpaul",4,1040,83,30,82,"2026-04-05T09:44:49.323Z",[],{"attackSurface":40,"codeSignals":91,"taintFlows":131,"riskAssessment":132,"analyzedAt":141},{"hooks":41,"ajaxHandlers":87,"restRoutes":88,"shortcodes":89,"cronEvents":90,"entryPointCount":26,"unprotectedCount":26},[42,48,52,55,59,64,67,71,75,80,84],{"type":43,"name":44,"callback":45,"file":46,"line":47},"action","woocommerce_product_options_general_product_data","render_look_inside_pdf_gallery_product_option","includes\\Admin\\Product.php",22,{"type":43,"name":49,"callback":50,"file":46,"line":51},"woocommerce_process_product_meta","store_look_inside_pdf_product_option",23,{"type":43,"name":53,"callback":53,"file":54,"line":51},"admin_menu","includes\\Admin.php",{"type":43,"name":56,"callback":57,"file":54,"line":58},"admin_init","register_settings",24,{"type":43,"name":60,"callback":61,"file":62,"line":63},"admin_enqueue_scripts","enqueue_admin_scripts","includes\\Assets.php",20,{"type":43,"name":65,"callback":66,"file":62,"line":47},"wp_enqueue_scripts","enqueue_front_scripts",{"type":43,"name":68,"callback":69,"file":70,"line":47},"woocommerce_product_thumbnails","render_view_pdf_button","includes\\Frontend\\Product.php",{"type":43,"name":72,"callback":73,"file":70,"line":74},"woocommerce_after_add_to_cart_button","render_view_pdf_button_after_add_to_cart",25,{"type":43,"name":76,"callback":77,"file":78,"line":79},"woocommerce_loaded","init_plugin","look-inside-pdf.php",84,{"type":43,"name":81,"callback":82,"file":78,"line":83},"init","init_classes",219,{"type":43,"name":81,"callback":85,"file":78,"line":86},"localization_setup",222,[],[],[],[],{"dangerousFunctions":92,"sqlUsage":93,"outputEscaping":95,"fileOperations":26,"externalRequests":26,"nonceChecks":129,"capabilityChecks":26,"bundledLibraries":130},[],{"prepared":26,"raw":26,"locations":94},[],{"escaped":96,"rawEcho":97,"locations":98},7,19,[99,103,105,106,107,108,109,110,111,112,114,116,117,118,120,122,124,126,127],{"file":100,"line":101,"context":102},"templates\\admin\\product\\options.php",28,"raw output",{"file":104,"line":97,"context":102},"templates\\admin\\settings.php",{"file":104,"line":63,"context":102},{"file":104,"line":47,"context":102},{"file":104,"line":47,"context":102},{"file":104,"line":47,"context":102},{"file":104,"line":47,"context":102},{"file":104,"line":47,"context":102},{"file":104,"line":35,"context":102},{"file":104,"line":113,"context":102},31,{"file":104,"line":115,"context":102},33,{"file":104,"line":115,"context":102},{"file":104,"line":115,"context":102},{"file":104,"line":119,"context":102},37,{"file":121,"line":14,"context":102},"templates\\product\\after-add-to-cart.php",{"file":123,"line":96,"context":102},"templates\\product\\single.php",{"file":123,"line":125,"context":102},18,{"file":123,"line":35,"context":102},{"file":123,"line":128,"context":102},53,1,[],[],{"summary":133,"deductions":134},"The \"look-inside-pdf\" v1.0.0 plugin exhibits a generally good security posture based on the provided static analysis.  The absence of known CVEs and the lack of identified critical or high-severity taint flows are positive indicators.  Furthermore, the plugin demonstrates good practices by utilizing prepared statements for all SQL queries and incorporating at least one nonce check, which helps prevent certain types of cross-site request forgery attacks.\n\nHowever, there are areas for improvement. The most significant concern is the low percentage (27%) of properly escaped outputs. This indicates a potential risk of cross-site scripting (XSS) vulnerabilities, where malicious scripts could be injected into the website through user-controlled input that is not adequately sanitized before being displayed. The lack of capability checks on any entry points is also a weakness, as it means that potentially sensitive actions might be accessible to users without the necessary permissions.\n\nOverall, while the plugin has a clean vulnerability history and avoids common pitfalls like raw SQL queries or extensive attack surfaces without authentication, the unescaped output is a notable security flaw that requires attention. Addressing this would significantly enhance the plugin's security.",[135,138],{"reason":136,"points":137},"Low percentage of properly escaped output",15,{"reason":139,"points":140},"No capability checks on entry points",8,"2026-03-17T00:01:53.529Z",{"wat":143,"direct":152},{"assetPaths":144,"generatorPatterns":147,"scriptPaths":148,"versionParams":149},[145,146],"\u002Fwp-content\u002Fplugins\u002Flook-inside-pdf\u002Fassets\u002Fcss\u002Fmain.css","\u002Fwp-content\u002Fplugins\u002Flook-inside-pdf\u002Fassets\u002Fjs\u002Fmain.js",[],[146],[150,151],"look-inside-pdf\u002Fassets\u002Fcss\u002Fmain.css?ver=","look-inside-pdf\u002Fassets\u002Fjs\u002Fmain.js?ver=",{"cssClasses":153,"htmlComments":155,"htmlAttributes":156,"restEndpoints":161,"jsGlobals":162,"shortcodeOutput":164},[154],"lipdf-preview",[],[157,158,159,160],"data-lipdf-id","data-lipdf-width","data-lipdf-height","data-lipdf-url",[],[163],"LookInsidePDF",[165],"[look_inside_pdf]"]