⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 248348 in webkit


Ignore:
Timestamp:
Aug 6, 2019, 11:52:28 PM (7 years ago)
Author:
Kocsen Chung
Message:

Cherry-pick r247793. rdar://problem/54017899

Regression(r247400): Unable to log into AIB Mobile Banking App
https://bugs.webkit.org/show_bug.cgi?id=200094
<rdar://problem/52519818>

Reviewed by Brent Fulgham.

In r247400, a change was made to only set the 'app has universal sandbox access' flag
only when issueing the sandbox extension for / actually succeeded (it usually fails
in practice). Previously, AIB Mobile Banking app was relying on this behavior to
trigger a load for file:///login which is outside their container. However, now that
the 'app has universal sandbox access' flag is no longer set, it trips our security
checks and the load gets ignored.

To address the issue, apply only the 'app has universal sandbox access' flag fix with
a linked-on-after check.

  • UIProcess/Cocoa/VersionChecks.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247793 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Location:
branches/safari-608.1-branch/Source
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-608.1-branch/Source/WTF/wtf/spi/darwin/dyldSPI.h

    r246626 r248348  
    5454#endif
    5555
     56#ifndef DYLD_MACOSX_VERSION_10_15
     57#define DYLD_MACOSX_VERSION_10_15 0x000A0F00
     58#endif
     59
    5660#else
    5761
     
    7276#define DYLD_MACOSX_VERSION_10_13 0x000A0D00
    7377#define DYLD_MACOSX_VERSION_10_14 0x000A0E00
     78#define DYLD_MACOSX_VERSION_10_15 0x000A0F00
    7479
    7580#endif
  • branches/safari-608.1-branch/Source/WebKit/ChangeLog

    r248343 r248348  
     12019-08-06  Kocsen Chung  <kocsen_chung@apple.com>
     2
     3        Cherry-pick r247793. rdar://problem/54017899
     4
     5    Regression(r247400): Unable to log into AIB Mobile Banking App
     6    https://bugs.webkit.org/show_bug.cgi?id=200094
     7    <rdar://problem/52519818>
     8   
     9    Reviewed by Brent Fulgham.
     10   
     11    In r247400, a change was made to only set the 'app has universal sandbox access' flag
     12    only when issueing the sandbox extension for / actually succeeded (it usually fails
     13    in practice). Previously, AIB Mobile Banking app was relying on this behavior to
     14    trigger a load for file:///login which is outside their container. However, now that
     15    the 'app has universal sandbox access' flag is no longer set, it trips our security
     16    checks and the load gets ignored.
     17   
     18    To address the issue, apply only the 'app has universal sandbox access' flag fix with
     19    a linked-on-after check.
     20   
     21    * UIProcess/Cocoa/VersionChecks.h:
     22    * UIProcess/WebPageProxy.cpp:
     23    (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
     24   
     25   
     26    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247793 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     27
     28    2019-07-24  Chris Dumez  <cdumez@apple.com>
     29
     30            Regression(r247400): Unable to log into AIB Mobile Banking App
     31            https://bugs.webkit.org/show_bug.cgi?id=200094
     32            <rdar://problem/52519818>
     33
     34            Reviewed by Brent Fulgham.
     35
     36            In r247400, a change was made to only set the 'app has universal sandbox access' flag
     37            only when issueing the sandbox extension for / actually succeeded (it usually fails
     38            in practice). Previously, AIB Mobile Banking app was relying on this behavior to
     39            trigger a load for file:///login which is outside their container. However, now that
     40            the 'app has universal sandbox access' flag is no longer set, it trips our security
     41            checks and the load gets ignored.
     42
     43            To address the issue, apply only the 'app has universal sandbox access' flag fix with
     44            a linked-on-after check.
     45
     46            * UIProcess/Cocoa/VersionChecks.h:
     47            * UIProcess/WebPageProxy.cpp:
     48            (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
     49
    1502019-08-06  Kocsen Chung  <kocsen_chung@apple.com>
    251
  • branches/safari-608.1-branch/Source/WebKit/UIProcess/Cocoa/VersionChecks.h

    r246664 r248348  
    4141#endif
    4242
     43#if PLATFORM(IOS_FAMILY)
    4344#ifndef DYLD_IOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
    4445#define DYLD_IOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
    45 #endif
    46 #ifndef DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
    47 #define DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
    4846#endif
    4947
     
    5149#define DYLD_IOS_VERSION_FIRST_WITH_DEVICE_ORIENTATION_AND_MOTION_PERMISSION_API 0
    5250#endif
     51#endif // PLATFORM(IOS_FAMILY)
     52
     53#if PLATFORM(MAC)
     54#ifndef DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES
     55#define DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES 0
     56#endif
     57#endif
     58
     59
    5360
    5461namespace WebKit {
     
    6673    FirstWhereUIScrollViewDoesNotApplyKeyboardInsetsUnconditionally = DYLD_IOS_VERSION_12_0,
    6774    FirstWithMainThreadReleaseAssertionInWebPageProxy = DYLD_IOS_VERSION_12_0,
     75    FirstWithoutUnconditionalUniversalSandboxExtension = DYLD_IOS_VERSION_13_0,
    6876    FirstWithLazyGestureRecognizerInstallation = DYLD_IOS_VERSION_FIRST_WITH_LAZY_GESTURE_RECOGNIZER_INSTALLATION,
    6977    FirstWithProcessSwapOnCrossSiteNavigation = DYLD_IOS_VERSION_FIRST_WITH_PROCESS_SWAP_ON_CROSS_SITE_NAVIGATION,
     
    8189    FirstWithExpiredOnlyReloadBehavior = DYLD_MACOSX_VERSION_10_13,
    8290    FirstWithMainThreadReleaseAssertionInWebPageProxy = DYLD_MACOSX_VERSION_10_14,
     91    FirstWithoutUnconditionalUniversalSandboxExtension = DYLD_MACOSX_VERSION_10_15,
    8392    FirstWithSnapshotAfterScreenUpdates = DYLD_MACOS_VERSION_FIRST_WITH_SNAPSHOT_AFTER_SCREEN_UPDATES,
    8493    FirstWithExceptionsForRelatedWebViewsUsingDifferentDataStores = DYLD_MACOS_VERSION_FIRST_WITH_EXCEPTIONS_FOR_RELATED_WEBVIEWS_USING_DIFFERENT_DATA_STORES,
  • branches/safari-608.1-branch/Source/WebKit/UIProcess/WebPageProxy.cpp

    r247859 r248348  
    196196#include "TouchBarMenuData.h"
    197197#include "TouchBarMenuItemData.h"
     198#include "VersionChecks.h"
    198199#include "VideoFullscreenManagerProxy.h"
    199200#include "VideoFullscreenManagerProxyMessages.h"
     
    10631064        return;
    10641065    }
     1066
     1067#if PLATFORM(COCOA)
     1068    if (!linkedOnOrAfter(SDKVersion::FirstWithoutUnconditionalUniversalSandboxExtension))
     1069        willAcquireUniversalFileReadSandboxExtension(process);
     1070#endif
    10651071
    10661072    // We failed to issue an universal file read access sandbox, fall back to issuing one for the base URL instead.
Note: See TracChangeset for help on using the changeset viewer.